https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77361
--- Comment #1 from Zoltan HERPAI <wigyori at uid0 dot hu> --- (In reply to Zoltan HERPAI from comment #0) > Hi, > > I'm trying to build a cross-compiler for sparc, however libgcc build fails > with the following error: > > ------------- > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0- > minimal/./gcc/xgcc > -B/openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0- > minimal/./gcc/ > -B/openwrt/staging_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/sparc- > openwrt-linux-musl/bin/ > -B/openwrt/staging_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/sparc- > openwrt-linux-musl/lib/ -isystem > /openwrt/staging_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/sparc- > openwrt-linux-musl/include -isystem > /openwrt/staging_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/sparc- > openwrt-linux-musl/sys-include -Os -pipe -mcpu=v8 -fno-caller-saves > -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable > -Wno-error=unused-result -O2 -Os -pipe -mcpu=v8 -fno-caller-saves > -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable > -Wno-error=unused-result -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall > -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes > -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -g > -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -Dinhibit_libc -fPIC > -I. -I. -I../.././gcc > -I/openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/ > libgcc > -I/openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/ > libgcc/. > -I/openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/ > libgcc/../gcc > -I/openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/ > libgcc/../include -DHAVE_CC_TLS -o _fixsfdi.o -MT _fixsfdi.o -MD -MP -MF > _fixsfdi.dep -DL_fixsfdi -c > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/ > libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS > cc1: note: someone does not honour COPTS correctly, passed 2 times > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/ > libgcc/libgcc2.c: In function '__fixsfdi': > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/ > libgcc/libgcc2.c:1502:1: error: unrecognizable insn: > } > ^ > (call_insn/j 34 33 35 7 (parallel [ > (set (reg:DI 24 %i0) > (call (mem:SI (reg/f:SI 123) [0 __fixunssfdi S4 A32]) > (const_int 0 [0]))) > (return) > ]) > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/ > libgcc/libgcc2.c:1501 -1 > (expr_list:REG_CALL_DECL (symbol_ref:SI ("__fixunssfdi") [flags 0x41] > <function_decl 0x2b713d9d2438 __fixunssfdi>) > (nil)) > (expr_list:SF (use (reg:SF 24 %i0)) > (nil))) > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/ > libgcc/libgcc2.c:1502:1: internal compiler error: in extract_insn, at > recog.c:2343 > 0x8999b5 _fatal_insn(char const*, rtx_def const*, char const*, int, char > const*) > > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/gcc/ > rtl-error.c:110 > 0x8999e9 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) > > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/gcc/ > rtl-error.c:118 > 0x86749e extract_insn(rtx_insn*) > > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/gcc/ > recog.c:2343 > 0x6d9126 instantiate_virtual_regs_in_insn > > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/gcc/ > function.c:1646 > 0x6d9126 instantiate_virtual_regs > > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/gcc/ > function.c:1966 > 0x6d9126 execute > > /openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0/gcc/ > function.c:2015 > Please submit a full bug report, > with preprocessed source if appropriate. > Please include the complete backtrace with any bug report. > See <https://dev.openwrt.org/> for instructions. > make[5]: *** [_fixsfdi.o] Error 1 > make[5]: Leaving directory > `/openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/gcc-5.4.0- > minimal/sparc-openwrt-linux-musl/libgcc' > make[4]: *** [all-target-libgcc] Error 2 > ------------- > > GCC is configured with: > > /openwrt/sparc/openwrt/build_dir/toolchain-sparc_sparc_gcc-5.4.0_musl-1.1.14/ > gcc-5.4.0/configure \ > --with-bugurl=https://dev.openwrt.org/ \ > --with-pkgversion="OpenWrt GCC 5.4.0 49903" \ > --prefix=/openwrt/sparc/openwrt/staging_dir/toolchain-sparc_sparc_gcc-5.4. > 0_musl-1.1.14 \ > --build=x86_64-linux-gnu \ > --host=x86_64-linux-gnu--target=sparc-openwrt-linux-musl \ > --with-gnu-ld \ > --enable-target-optspace \ > --disable-libgomp \ > --disable-libmudflap \ > --disable-multilib \ > --disable-nls \ > --without-isl \ > --without-cloog \ > --with-host-libstdcxx=-lstdc++ \ > --with-gmp=/openwrt/sparc/openwrt/staging_dir/host \ > --with-mpfr=/openwrt/sparc/openwrt/staging_dir/host \ > --with-mpc=/openwrt/sparc/openwrt/staging_dir/host \ > --disable-decimal-float \ > --with-diagnostics-color=auto-if-env \ > --disable-libssp \ > --enable-targets=all \ > --with-long-double-128 \ > --enable-__cxa_atexit \ > --with-newlib \ > --without-headers \ > --enable-languages=c \ > --disable-libsanitizer \ > --disable-libssp \ > --disable-shared \ > --disable-threads > > Thanks, > Zoltan H Copy-paste error: < --host=x86_64-linux-gnu--target=sparc-openwrt-linux-musl \ > --host=x86_64-linux-gnu \ > --target=sparc-openwrt-linux-musl \