ICE on AVR target: gcc.c-torture/execute/pr38051.c compilation, -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions
Executing on host: /usr/local/avrdev/gcc/build/gcc/xgcc -B/usr/local/avrdev/gcc/build/gcc/ /usr/local/avrdev/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/pr38051.c -w -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions -DSTACK_SIZE=2048 -DNO_TRAMPOLINES -DSIGNAL_SUPPRESS -mmcu=atmega128 /root/dejagnuboards/exit.c -Wl,-u,vfprintf -lprintf_flt -Wl,-Tbss=0x802000,--defsym=__heap_end=0x80ffff -lm -o /usr/local/avrdev/gcc/build/gcc/testsuite/gcc/pr38051.x5 (timeout = 300) /usr/local/avrdev/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/pr38051.c: In function 'mymemcmp': /usr/local/avrdev/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/pr38051.c:189: error: unable to find a register to spill in class 'POINTER_REGS' /usr/local/avrdev/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/pr38051.c:189: error: this is the insn: (insn 371 370 372 10 /usr/local/avrdev/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/pr38051.c:63 (set (reg/v:SI 397 [ a0 ]) (mem:SI (subreg:HI (reg/v:SI 413 [ srcp1 ]) 0) [2 S4 A8])) 12 {*movsi} (nil)) /usr/local/avrdev/gcc/gcc/gcc/testsuite/gcc.c-torture/execute/pr38051.c:189: internal compiler error: in spill_failure, at reload1.c:2093 Note that test is successful with: PASS: gcc.c-torture/execute/pr38051.c execution, -O3 -fomit-frame-pointer -funroll-loops The only difference is the flag -finline-functions, which seems to trigger the bug. -- Summary: [avr] ICE: gcc.c-torture/execute/pr38051.c compilation, -O3 -fomit-frame-pointer -funroll-all-loops -finline- functions Product: gcc Version: 4.4.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: eric dot weddington at atmel dot com GCC target triplet: avr-*-* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38159