From: Richard Biener Date: Thu, 10 Dec 2015 09:00:07 +0000 (+0000) Subject: tree-if-conv.c (if_convertible_loop_p_1): Do not compute dependences. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a839a8f708dcd6087e3cf3cdfbbaf879f549e1ab;p=gcc.git tree-if-conv.c (if_convertible_loop_p_1): Do not compute dependences. 2015-12-10 Richard Biener * tree-if-conv.c (if_convertible_loop_p_1): Do not compute dependences. (if_convertible_loop_p): Adjust. From-SVN: r231492 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bd22e82edd8..856a88f5314 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-12-10 Richard Biener + + * tree-if-conv.c (if_convertible_loop_p_1): Do not compute + dependences. + (if_convertible_loop_p): Adjust. + 2015-12-10 Tom de Vries * tree-ssa-structalias.c (find_func_aliases_for_builtin_call): Remove diff --git a/gcc/tree-if-conv.c b/gcc/tree-if-conv.c index 55b590b253d..63da90a4d3f 100644 --- a/gcc/tree-if-conv.c +++ b/gcc/tree-if-conv.c @@ -1173,18 +1173,13 @@ predicate_bbs (loop_p loop) static bool if_convertible_loop_p_1 (struct loop *loop, - vec *loop_nest, vec *refs, - vec *ddrs, bool *any_mask_load_store) + bool *any_mask_load_store) { - bool res; unsigned int i; basic_block exit_bb = NULL; - /* Don't if-convert the loop when the data dependences cannot be - computed: the loop won't be vectorized in that case. */ - res = compute_data_dependences_for_loop (loop, true, loop_nest, refs, ddrs); - if (!res) + if (find_data_references_in_loop (loop, refs) == chrec_dont_know) return false; calculate_dominance_info (CDI_DOMINATORS); @@ -1301,7 +1296,6 @@ if_convertible_loop_p (struct loop *loop, bool *any_mask_load_store) edge_iterator ei; bool res = false; vec refs; - vec ddrs; /* Handle only innermost loop. */ if (!loop || loop->inner) @@ -1334,10 +1328,7 @@ if_convertible_loop_p (struct loop *loop, bool *any_mask_load_store) return false; refs.create (5); - ddrs.create (25); - auto_vec loop_nest; - res = if_convertible_loop_p_1 (loop, &loop_nest, &refs, &ddrs, - any_mask_load_store); + res = if_convertible_loop_p_1 (loop, &refs, any_mask_load_store); data_reference_p dr; unsigned int i; @@ -1345,7 +1336,6 @@ if_convertible_loop_p (struct loop *loop, bool *any_mask_load_store) free (dr->aux); free_data_refs (refs); - free_dependence_relations (ddrs); delete ref_DR_map; ref_DR_map = NULL;