http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50092
Richard Guenther <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2011-08-16 Known to work| |4.3.6 Target Milestone|--- |4.4.7 Summary|internal compiler error: in |[4.4/4.5/4.6/4.7 |elimination_costs_in_insn, |Regression] internal |at reload1.c:3633 |compiler error: in | |elimination_costs_in_insn, | |at reload1.c:3633 Ever Confirmed|0 |1 Known to fail| |4.4.6, 4.5.3, 4.6.1 --- Comment #1 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-08-16 08:42:04 UTC --- Confirmed. Reduced testcase: int main(int argc, char **argv) { int i; _Complex long double vector[100000000]; for (i=0 ; i<10 ; i++) printf("Valor: %Lf\n", (long double) rand()/ 2147483648.0); printf ("La posicion 5 tiene el valor: %Le\n", (long double) vector[5]); } ICEs in various ways depending on optimization level. With -m32 the array is diagnosed as being too large. At -O1: t.3.i: In function 'main': t.3.i:6:5: warning: incompatible implicit declaration of built-in function 'printf' [enabled by default] t.3.i:8:1: error: unrecognizable insn: (insn 46 15 18 3 (parallel [ (set (reg:XF 71) (float:XF (reg:SI 63 [ D.2730 ]))) (clobber (mem/c:SI (plus:DI (reg/f:DI 20 frame) (const_int -3200000004 [0xffffffff4143dffc])) [0 S4 A32])) ]) t.3.i:6 -1 (nil)) t.3.i:8:1: internal compiler error: in extract_insn, at recog.c:2115 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. 4.3 is happy with the code.