https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99723

            Bug ID: 99723
           Summary: arm: ICE in build_function_type during selftests
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: acoplan at gcc dot gnu.org
  Target Milestone: ---

If I configure a cross arm GCC with:

--enable-languages=c,c++ --disable-bootstrap --target=arm-linux-gnueabihf
--with-arch=armv8-a --with-float=hard

and run `make all-gcc`, the selftests fail with:

$ gcc/xgcc -B gcc -xc /dev/null -S -o /dev/null
-fself-test=/home/alecop01/toolchain/src/gcc/gcc/testsuite/selftests
cc1: error: ‘-mfloat-abi=hard’: selected processor lacks an FPU
cc1: internal compiler error: in build_function_type, at tree.c:8432
0x107af5d build_function_type(tree_node*, tree_node*)
        /home/alecop01/toolchain/src/gcc/gcc/tree.c:8432
0x107b21d build_function_type_list(tree_node*, ...)
        /home/alecop01/toolchain/src/gcc/gcc/tree.c:8511
0x88eed8 test_capture_of_dump_calls
        /home/alecop01/toolchain/src/gcc/gcc/dumpfile.c:2283
0x19526e6 selftest::for_each_line_table_case(void (*)(selftest::line_table_case
const&))
        /home/alecop01/toolchain/src/gcc/gcc/input.c:3573
0x89297d selftest::dumpfile_c_tests()
        /home/alecop01/toolchain/src/gcc/gcc/dumpfile.c:2772
0x1881c92 selftest::run_tests()
        /home/alecop01/toolchain/src/gcc/gcc/selftest-run-tests.c:63
0xd163e2 toplev::run_self_tests()
        /home/alecop01/toolchain/src/gcc/gcc/toplev.c:2265
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

If I add -march=armv8-a+simd to enable floating point, the selftests pass:
$ gcc/xgcc -B gcc -xc /dev/null -S -o /dev/null
-fself-test=/home/alecop01/toolchain/src/gcc/gcc/testsuite/selftests
-march=armv8-a+simd
-fself-test: 57120 pass(es) in 0.270736 seconds

At a minimum we probably shouldn't ICE here.

Reply via email to