https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63683
Bug ID: 63683 Summary: m32c-rtems ICE unable to find spill register compiling libgcc Product: gcc Version: 4.9.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libgcc Assignee: unassigned at gcc dot gnu.org Reporter: joel at gcc dot gnu.org gcc 4.9 branch in git at 1d2b7cdfcb9376a6ee98964b11cf73fe14154e13 newlib head m32c fails with ICE Configured as follows: ../${GCC}/configure \ --prefix=${PREFIX} \ --bindir=${PREFIX}/bin \ --exec_prefix=${PREFIX} \ --includedir=${PREFIX}/include \ --libdir=${PREFIX}/lib \ --libexecdir=${PREFIX}/libexec \ --mandir=${PREFIX}/share/man \ --infodir=${PREFIX}/share/info \ --datadir=${PREFIX}/share \ --target=${TARGET} \ --disable-sjlj-exceptions \ --disable-libstdcxx-pch \ --with-gnu-as --with-gnu-ld --verbose \ --with-newlib \ --with-system-zlib \ --disable-nls --without-included-gettext \ --disable-win32-registry \ --enable-version-specific-runtime-libs \ --disable-lto \ --enable-newlib-io-c99-formats \ --enable-newlib-iconv \ --enable-newlib-iconv-encodings=big5,cp775,cp850,cp852,cp855,\ cp866,euc_jp,euc_kr,euc_tw,iso_8859_1,iso_8859_10,iso_8859_11,\ iso_8859_13,iso_8859_14,iso_8859_15,iso_8859_2,iso_8859_3,\ iso_8859_4,iso_8859_5,iso_8859_6,iso_8859_7,iso_8859_8,iso_8859_9,\ iso_ir_111,koi8_r,koi8_ru,koi8_u,koi8_uni,ucs_2,ucs_2_internal,\ ucs_2be,ucs_2le,ucs_4,ucs_4_internal,ucs_4be,ucs_4le,us_ascii,\ utf_16,utf_16be,utf_16le,utf_8,win_1250,win_1251,win_1252,\ win_1253,win_1254,win_1255,win_1256,win_1257,win_1258 \ --enable-threads \ --disable-plugin \ --enable-languages="c" /users/joel/test-gcc/b-m32c-rtems4.11-gcc/./gcc/xgcc -B/users/joel/test-gcc/b-m32c-rtems4.11-gcc/./gcc/ -nostdinc -B/users/joel/test-gcc/b-m32c-rtems4.11-gcc/m32c-rtems4.11/newlib/ -isystem /users/joel/test-gcc/b-m32c-rtems4.11-gcc/m32c-rtems4.11/newlib/targ-include -isystem /users/joel/test-gcc/gcc/newlib/libc/include -B/users/joel/test-gcc/install-head/m32c-rtems4.11/bin/ -B/users/joel/test-gcc/install-head/m32c-rtems4.11/lib/ -isystem /users/joel/test-gcc/install-head/m32c-rtems4.11/include -isystem /users/joel/test-gcc/install-head/m32c-rtems4.11/sys-include -g -O2 -mcpu=m32cm -O2 -I../../../../gcc/libgcc/../newlib/libc/sys/rtems/include -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -Dinhibit_libc -I. -I. -I../../.././gcc -I../../../../gcc/libgcc -I../../../../gcc/libgcc/. -I../../../../gcc/libgcc/../gcc -I../../../../gcc/libgcc/../include -DHAVE_CC_TLS -DUSE_EMUTLS -o _ffssi2.o -MT _ffssi2.o -MD -MP -MF _ffssi2.dep -DL_ffssi2 -c ../../../../gcc/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS ../../../../gcc/libgcc/libgcc2.c: In function '__ffssi2': ../../../../gcc/libgcc/libgcc2.c:522:1: error: unable to find a register to spill in class 'A_REGS' } ^ ../../../../gcc/libgcc/libgcc2.c:522:1: error: this is the insn: (insn 62 60 63 10 (set (reg:HI 0 r0 [49]) (zero_extend:HI (mem/u/j:QI (plus:PSI (subreg:PSI (reg:SI 45 [ D.2964 ]) 0) (symbol_ref:PSI ("__clz_tab") [flags 0x40] <var_decl 0x7f5d80ddcc78 __clz_tab>)) [0 __clz_tab S1 A8]))) ../../../../gcc/libgcc/libgcc2.c:520 115 {zero_extendqihi2} (expr_list:REG_DEAD (reg:SI 45 [ D.2964 ]) (nil))) ../../../../gcc/libgcc/libgcc2.c:522: confused by earlier errors, bailing out make[4]: *** [_ffssi2.o] Error 1