https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77361
Bug ID: 77361 Summary: sparc - unrecognizable insn in __fixsfdi Product: gcc Version: 5.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libgcc Assignee: unassigned at gcc dot gnu.org Reporter: wigyori at uid0 dot hu Target Milestone: --- 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