aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorSebastian Pop <sebastian.pop@amd.com>2009-12-23 07:51:05 +0000
committerSebastian Pop <spop@gcc.gnu.org>2009-12-23 07:51:05 +0000
commita84a556d9739787b345228babd3e023b245df79d (patch)
tree54d9a3a20d7e7fd1d3583d2ac186a3de708ebc41 /gcc
parentb147df0bcf1b4a8c27d1f77d749d3aa154ca922e (diff)
downloadgcc-a84a556d9739787b345228babd3e023b245df79d.zip
gcc-a84a556d9739787b345228babd3e023b245df79d.tar.gz
gcc-a84a556d9739787b345228babd3e023b245df79d.tar.bz2
re PR middle-end/42180 (compiling induct.f90 with -ffast-math -O2 -fgraphite-identity ICEs gfortran)
Fix PR42180. 2009-12-18 Sebastian Pop <sebastian.pop@amd.com> PR middle-end/42180 * graphite-sese-to-poly.c (follow_ssa_with_commutative_ops): Handle GIMPLE_CALL. * testsuite/gfortran.dg/graphite/pr42180.f90: Add compile flags. From-SVN: r155423
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog.graphite14
-rw-r--r--gcc/graphite-sese-to-poly.c3
-rw-r--r--gcc/testsuite/gfortran.dg/graphite/pr42180.f902
3 files changed, 18 insertions, 1 deletions
diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite
index ae3369e..09af72b 100644
--- a/gcc/ChangeLog.graphite
+++ b/gcc/ChangeLog.graphite
@@ -1,9 +1,23 @@
2009-12-18 Sebastian Pop <sebastian.pop@amd.com>
+ Revert patch fixing PR middle-end/42221.
+
+2009-12-18 Sebastian Pop <sebastian.pop@amd.com>
+
+ PR middle-end/42180
+ * graphite-sese-to-poly.c (follow_ssa_with_commutative_ops): Handle
+ GIMPLE_CALL.
+
+ * testsuite/gfortran.dg/graphite/pr42180.f90: Add compile flags.
+
+2009-12-18 Sebastian Pop <sebastian.pop@amd.com>
+
PR middle-end/42180
* graphite-sese-to-poly.c (split_reduction_stmt): Do not split blocks
that contain only one statement.
+ * testsuite/gfortran.dg/graphite/pr42180.f90: New.
+
2009-12-17 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/42393
diff --git a/gcc/graphite-sese-to-poly.c b/gcc/graphite-sese-to-poly.c
index 5999a65..70827a9 100644
--- a/gcc/graphite-sese-to-poly.c
+++ b/gcc/graphite-sese-to-poly.c
@@ -2501,7 +2501,8 @@ follow_ssa_with_commutative_ops (tree arg, tree lhs)
stmt = SSA_NAME_DEF_STMT (arg);
- if (gimple_code (stmt) == GIMPLE_NOP)
+ if (gimple_code (stmt) == GIMPLE_NOP
+ || gimple_code (stmt) == GIMPLE_CALL)
return NULL;
if (gimple_code (stmt) == GIMPLE_PHI)
diff --git a/gcc/testsuite/gfortran.dg/graphite/pr42180.f90 b/gcc/testsuite/gfortran.dg/graphite/pr42180.f90
index 6c8daea..523c479 100644
--- a/gcc/testsuite/gfortran.dg/graphite/pr42180.f90
+++ b/gcc/testsuite/gfortran.dg/graphite/pr42180.f90
@@ -1,3 +1,5 @@
+! { dg-options "-ffast-math -O2 -fgraphite-identity" }
+
module mcc_m
integer, parameter, private :: longreal = selected_real_kind(15,90)
contains