When compiling the aermod.f90 from the Polyhedron 2005 benchmarks with gfortran using either... gfortran -ffast-math -floop-block -O2 -fgraphite aermod.f90 or gfortran -ffast-math -O2 -floop-strip-mine -fgraphite aermod.f90 results in the compiler error... aermod.f90: In function ‘vrtcbl’: aermod.f90:14521: internal compiler error: in instantiate_scev_1, at tree-scalar-evolution.c:2220 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. This error doesn't occur when the -ffast-math flag is not used.
gfortran -funsafe-loop-optimizations -floop-block -O2 -fgraphite aermod.f90 ...ICEs with... aermod.f90: In function ‘ocalc’: aermod.f90:8312: internal compiler error: in expand_scalar_variables_expr, at graphite.c:3168 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.
gfortran -fno-trapping-math -floop-block -O2 -fgraphite aermod.f90 ...ICEs with... aermod.f90: In function ‘ocalc’: aermod.f90:8312: internal compiler error: in expand_scalar_variables_expr, at graphite.c:3168 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.
gfortran -fno-signed-zeros -floop-block -O2 -fgraphite aermod.f90 ...ICEs with... aermod.f90: In function ‘ocalc’: aermod.f90:8312: internal compiler error: in expand_scalar_variables_expr, at graphite.c:3168 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.
gfortran -fassociative-math -floop-block -O2 -fgraphite aermod.f90 ...ICEs with... aermod.f90: In function ‘ocalc’: aermod.f90:8312: internal compiler error: in expand_scalar_variables_expr, at graphite.c:3168 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.
gfortran -freciprocal-math -floop-block -O2 -fgraphite aermod.f90 ...ICEs with... aermod.f90: In function ‘ocalc’: aermod.f90:8312: internal compiler error: in expand_scalar_variables_expr, at graphite.c:3168 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.
Subject: Re: [graphite] ICE compiling aermod.f90 with -ffast-math -floop-block -O2 -fgraphite Hi, For the first part of the bug: > aermod.f90:14521: internal compiler error: in instantiate_scev_1, at > tree-scalar-evolution.c:2220 the bug was introduced by an automatic rewrite arount TREE_CODE_LENGTH http://gcc.gnu.org/viewcvs?view=rev&revision=122018 The fix avoids the gcc_assert by returning "unknown scalar evolution". The second part of the bug was already fixed: > aermod.f90:8312: internal compiler error: in expand_scalar_variables_expr, at > graphite.c:3168 I will apply the patch below once it finishes regstrap. Sebastian Index: tree-scalar-evolution.c =================================================================== --- tree-scalar-evolution.c (revision 141661) +++ tree-scalar-evolution.c (working copy) @@ -2213,7 +2213,9 @@ instantiate_scev_1 (basic_block instanti break; } - gcc_assert (!VL_EXP_CLASS_P (chrec)); + if (VL_EXP_CLASS_P (chrec)) + return chrec_dont_know; + switch (TREE_CODE_LENGTH (TREE_CODE (chrec))) { case 3:
Fixed.
Subject: Bug 37379 Author: spop Date: Fri Nov 7 18:03:04 2008 New Revision: 141682 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=141682 Log: 2008-11-07 Sebastian Pop <sebastian.pop@amd.com> PR middle-end/37379 * tree-scalar-evolution.c (instantiate_scev_1): Return chrec_dont_know for VL_EXP_CLASS_P. Modified: trunk/gcc/ChangeLog trunk/gcc/tree-scalar-evolution.c