OSDN Git Service

PR tree-optimization/24262
authorspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 13 Oct 2005 11:52:57 +0000 (11:52 +0000)
committerspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 13 Oct 2005 11:52:57 +0000 (11:52 +0000)
* tree-data-ref.c (analyze_offset_expr): Check that init is invariant
in loop all the time.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@105368 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/tree-data-ref.c

index 308be61..4e3d0f2 100644 (file)
@@ -1,3 +1,9 @@
+2005-10-12  Sebastian Pop  <pop@cri.ensmp.fr>
+
+       PR tree-optimization/24262
+       * tree-data-ref.c (analyze_offset_expr): Check that init is invariant
+       in loop all the time.
+
 2005-10-12  Richard Henderson  <rth@redhat.com>
 
        PR c/24255
index cb3a0ea..cf62403 100644 (file)
@@ -1124,7 +1124,7 @@ analyze_offset_expr (tree expr,
        return false;
 
       init = initial_condition_in_loop_num (access_fn, loop->num);
-      if (init == expr && !expr_invariant_in_loop_p (loop, init))
+      if (!expr_invariant_in_loop_p (loop, init))
        /* Not enough information: may be not loop invariant.  
           E.g., for a[b[i]], we get a[D], where D=b[i]. EXPR is D, its 
           initial_condition is D, but it depends on i - loop's induction