From a84a556d9739787b345228babd3e023b245df79d Mon Sep 17 00:00:00 2001 From: Sebastian Pop Date: Wed, 23 Dec 2009 07:51:05 +0000 Subject: [PATCH] re PR middle-end/42180 (compiling induct.f90 with -ffast-math -O2 -fgraphite-identity ICEs gfortran) Fix PR42180. 2009-12-18 Sebastian Pop 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 --- gcc/ChangeLog.graphite | 14 ++++++++++++++ gcc/graphite-sese-to-poly.c | 3 ++- gcc/testsuite/gfortran.dg/graphite/pr42180.f90 | 2 ++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite index ae3369e834f..09af72ba957 100644 --- a/gcc/ChangeLog.graphite +++ b/gcc/ChangeLog.graphite @@ -1,9 +1,23 @@ +2009-12-18 Sebastian Pop + + Revert patch fixing PR middle-end/42221. + +2009-12-18 Sebastian Pop + + 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 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 PR middle-end/42393 diff --git a/gcc/graphite-sese-to-poly.c b/gcc/graphite-sese-to-poly.c index 5999a655aeb..70827a9bab9 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 6c8daeaea60..523c479e215 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