gcc ICEs compiling nuq (single player part of Quakeforge -- http://www.quakeforge.net) when compiling with all optimization as enabled by default (-O6). ICE goes away when compiled with -O2 or less. Fails under gcc shipped in 7.0 as well as gcc-2.96-63 from rawhide, but works with egcs gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I/usr/include/SDL -D_REENTRANT -I/usr/X11R6/include -O6 -ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations -march=pentiumpro -malign-loops=2 -malign-jumps=2 -malign-functions=2 -c net_main.c -save-temps -v Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs gcc version 2.96 20000731 (Red Hat Linux 7.0) /usr/lib/gcc-lib/i386-redhat-linux/2.96/cpp0 -lang-c -v -I. -I. -I../include -I../include -I/usr/include/SDL -I/usr/X11R6/include -D__GNUC__=2 -D__GNUC_MINOR__=96 -D__GNUC_PATCHLEVEL__=0 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem(posix) -D__OPTIMIZE__ -D__FAST_MATH__ -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -D__pentiumpro -D__pentiumpro__ -D__tune_pentiumpro__ -DHAVE_CONFIG_H -D_REENTRANT net_main.c net_main.i GNU CPP version 2.96 20000731 (Red Hat Linux 7.0) (cpplib) (i386 Linux/ELF) ignoring nonexistent directory "/usr/i386-redhat-linux/include" ignoring duplicate directory "." ignoring duplicate directory "../include" #include "..." search starts here: #include <...> search starts here: . ../include /usr/include/SDL /usr/X11R6/include /usr/local/include /usr/lib/gcc-lib/i386-redhat-linux/2.96/include /usr/include End of search list. /usr/lib/gcc-lib/i386-redhat-linux/2.96/cc1 net_main.i -quiet -dumpbase net_main.c -march=pentiumpro -malign-loops=2 -malign-jumps=2 -malign-functions=2 -O6 -version -ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations -o net_main.s GNU C version 2.96 20000731 (Red Hat Linux 7.0) (i386-redhat-linux) compiled by GNU C version 2.96 20000731 (Red Hat Linux 7.0). net_main.c: In function `NET_SendToAll': net_main.c:780: Internal compiler error in gen_lowpart, at emit-rtl.c:1181 Please submit a full bug report. See <URL:http://bugzilla.redhat.com/bugzilla/> for instructions.
Created attachment 5602 [details] .i file generated from -save-temps on compilation failure
Thanks, will be fixed in gcc-2.96-65 (already fixed in my tree).