The following fixes a stupid bug with -ftree-loop-if-convert-stores.
We were treating all but the same base as candidate to determine
whether a ref was accessed unconditionally ...

Bootstrap & regtest running on x86_64-unknown-linux-gnu.

Richard.

2015-07-09  Richard Biener  <rguent...@suse.de>

        PR tree-optimization/66823
        * tree-if-conv.c (memrefs_read_or_written_unconditionally): Fix
        inverted predicate.

Index: gcc/tree-if-conv.c
===================================================================
--- gcc/tree-if-conv.c  (revision 225610)
+++ gcc/tree-if-conv.c  (working copy)
@@ -642,7 +642,7 @@ memrefs_read_or_written_unconditionally
                    || TREE_CODE (ref_base_b) == REALPART_EXPR)
               ref_base_b = TREE_OPERAND (ref_base_b, 0);
 
-           if (!operand_equal_p (ref_base_a, ref_base_b, 0))
+           if (operand_equal_p (ref_base_a, ref_base_b, 0))
              {
                tree cb = bb_predicate (gimple_bb (DR_STMT (b)));
 

Reply via email to