aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorSebastian Pop <sebastian.pop@amd.com>2009-11-25 04:56:21 +0000
committerSebastian Pop <spop@gcc.gnu.org>2009-11-25 04:56:21 +0000
commit7cc4ff8d299a5b9727aa3cdcf98ca2b47ad2e7a1 (patch)
tree37f3b7ab06e3a2dca23c6248d755fb055ca0a556 /gcc
parent60d2a8c3bbc4a7b9f3688929bc518c14ae71db92 (diff)
downloadgcc-7cc4ff8d299a5b9727aa3cdcf98ca2b47ad2e7a1.zip
gcc-7cc4ff8d299a5b9727aa3cdcf98ca2b47ad2e7a1.tar.gz
gcc-7cc4ff8d299a5b9727aa3cdcf98ca2b47ad2e7a1.tar.bz2
graphite-sese-to-poly.c (reduction_phi_p): Call remove_invariant_phi when the loop stride is zero.
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog.graphite7
-rw-r--r--gcc/graphite-sese-to-poly.c6
2 files changed, 12 insertions, 1 deletions
diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite
index 7fe430e..d640505 100644
--- a/gcc/ChangeLog.graphite
+++ b/gcc/ChangeLog.graphite
@@ -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.
diff --git a/gcc/graphite-sese-to-poly.c b/gcc/graphite-sese-to-poly.c
index 75d10c6..1dea7fd 100644
--- a/gcc/graphite-sese-to-poly.c
+++ b/gcc/graphite-sese-to-poly.c
@@ -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;
}