/tmp/gcc41/libexec/gcc/i686-pc-linux-gnu/4.1.0/cc1 -quiet -v test.c -dumpbase test.c -mtune=pentiumpro -auxbase-strip test.o -O -version -fmove-loop-invariants -fgcse -o test.o
GNU C version 4.1.0 20051007 (experimental) (i686-pc-linux-gnu) compiled by GNU C version 4.1.0 20051007 (experimental). GGC heuristics: --param ggc-min-expand=99 --param ggc-min-heapsize=129306 Compiler executable checksum: a278381769db4d67bad1ec630ceb45dd test.c: In function 'foo': test.c:14: error: unrecognizable insn: (insn 21 16 39 0 (set (reg:DF 64) (const_double:DF -858993460 [0xcccccccc] 2.00000000000000011102230246251565404236316680908e-1 [0x0.ccccccccccccdp-2])) -1 (nil) (nil)) test.c:14: internal compiler error: in extract_insn, at recog.c:2084 Configured with: ../gcc/configure --prefix=/tmp/gcc41 --enable-languages=c --disable-nls --enable-checking=assert,rtlflag,misc ======================================================== void dset (double d1, double d2); void foo () { int i; double m, d = 0.2; dset (m,d); for (i=1; i<=3; i++) { dset (m,d); } } ======================================================== d needs to have the same value in both calls to dset for this ICE to occur. -- Summary: ICE: in extract_insn, at recog.c:2084 with -O -fgcse - fmove-loop-invariants -mtune=pentiumpro Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: rtl-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ferdinandw+gcc at gmail dot com GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24265