http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50754
Bug #: 50754 Summary: [4.7 Regression] ICE in expand_debug_expr, at cfgexpand.c:3341 Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassig...@gcc.gnu.org ReportedBy: joost.vandevond...@pci.uzh.ch somewhere in the last 3 days the following regression appeared in trunk: gfortran -march=core2 -mcx16 -msahf -mno-movbe -mno-aes -mno-pclmul -mno-popcnt -mno-abm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mno-avx -mno-avx2 -mno-sse4.2 -mno-sse4.1 -mno-lzcnt --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=4096 -mtune=core2 -g -O3 -ffast-math -funroll-loops -ftree-vectorize -ffree-form bug.f90 <vec_perm_expr 0x7fcf671e41f8 type <vector_type 0x7fcf67110540 type <real_type 0x7fcf670aef18 real(kind=8) DF size <integer_cst 0x7fcf6709eec0 constant 64> unit size <integer_cst 0x7fcf6709eee0 constant 8> align 64 symtab 0 alias set 2 canonical type 0x7fcf670aef18 precision 64 pointer_to_this <pointer_type 0x7fcf670bc150>> V2DF size <integer_cst 0x7fcf670b1400 constant 128> unit size <integer_cst 0x7fcf670b1420 constant 16> align 128 symtab 0 alias set 2 canonical type 0x7fcf67110540 nunits 2 pointer_to_this <pointer_type 0x7fcf67117c78>> arg 0 <ssa_name 0x7fcf671d8cd0 type <vector_type 0x7fcf67110540> visited var <var_decl 0x7fcf671df1e0 vect_var_.27>def_stmt vect_var_.27_126 = MEM[(real(kind=8)[3] *)&respos + 8B]; version 126> arg 1 <ssa_name 0x7fcf671d8cd0> arg 2 <vector_cst 0x7fcf671cc5a0 type <vector_type 0x7fcf671c1c78 type <integer_type 0x7fcf670ae7e0> unsigned V2DI size <integer_cst 0x7fcf670b1400 128> unit size <integer_cst 0x7fcf670b1420 16> align 128 symtab 0 alias set -1 canonical type 0x7fcf671c1c78 nunits 2> constant elt0: <integer_cst 0x7fcf671c6400 constant 1> elt1: <integer_cst 0x7fcf670b1300 constant 0>> bug.f90:9:0> bug.f90: In function ‘calcbox’: bug.f90:4:0: internal compiler error: in expand_debug_expr, at cfgexpand.c:3341 > cat bug.f90 MODULE gauss_colloc INTEGER, PARAMETER :: dp=8 CONTAINS FUNCTION calcBox() RESULT(res) REAL(dp) :: cci0, cci1, cci2, delta_i, m(0:2,0:2), maxr2, r_0, sqDi REAL(dp), DIMENSION(0:2) :: l, resPos r_0=0.0_dp DO i=0,2 r_0=r_0-0.5*resPos(2-i)*l(i) END DO cci0 = -((-4.0_dp * m(2,2) * r_0 * m(1,1) + & m(2,2) * l(1) ** 2 + l(2) ** 2 * m(1,1) & - 2.0_dp * l(1) * m(1,2) * l(2) + 4.0_dp * r_0 * m(1,2) ** 2) & / (m(2,2) * m(1,1) - m(1,2) ** 2)) / 4.0_dp-maxr2 delta_i=cci1*cci1-4.0_dp*cci2*cci0 IF (delta_i<0.0_dp) THEN imin=fullShift(2)+CEILING((-cci1-sqDi)/(2.0_dp*cci2)) END IF END FUNCTION END MODULE