graphite-sese-to-poly.c (reduction_phi_p): Call remove_invariant_phi when the loop...
authorSebastian Pop <sebastian.pop@amd.com>
Wed, 25 Nov 2009 04:56:21 +0000 (04:56 +0000)
committerSebastian Pop <spop@gcc.gnu.org>
Wed, 25 Nov 2009 04:56:21 +0000 (04:56 +0000)
2009-10-07  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-sese-to-poly.c (reduction_phi_p): Call remove_invariant_phi
when the loop stride is zero.

* gcc.dg/graphite/id-16.c: New.

From-SVN: r154565

gcc/ChangeLog.graphite
gcc/graphite-sese-to-poly.c

index 7fe430e..d640505 100644 (file)
@@ -1,3 +1,10 @@
+2009-10-07  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite-sese-to-poly.c (reduction_phi_p): Call remove_invariant_phi
+       when the loop stride is zero.
+
+       * gcc.dg/graphite/id-16.c: New.
+
 2009-10-06  Sebastian Pop  <sebastian.pop@amd.com>
 
        * graphite-dependences.c (reduction_dr_1): New.
index 75d10c6..1dea7fd 100644 (file)
@@ -193,7 +193,11 @@ reduction_phi_p (sese region, gimple_stmt_iterator *psi)
      reductions.  */
   if (simple_iv (loop, loop, res, &iv, true))
     {
-      gsi_next (psi);
+      if (integer_zerop (iv.step))
+       remove_invariant_phi (region, psi);
+      else
+       gsi_next (psi);
+
       return false;
     }