https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103974
Bug ID: 103974 Summary: [12 Regression] ICE in ira_flattening building libstdc++ with r12-6415-g01f3e6a40e72 Product: gcc Version: 12.0 Status: UNCONFIRMED Keywords: build, ice-on-valid-code Severity: normal Priority: P3 Component: bootstrap Assignee: unassigned at gcc dot gnu.org Reporter: hp at gcc dot gnu.org CC: rsandifo at gcc dot gnu.org Target Milestone: --- Host: x86_64-linux Target: cris-elf Commit r12-6415-g01f3e6a40e72, "[PATCH 27/33] ira: Consider modelling caller-save allocations as loop spills" caused build to break for cris-elf, when building the v10 multilib of libstdc++-v3, specifically v10/libstdc++-v3/src/c++17 floating_to_chars.cc, like so: libtool: compile: /tmp/X/gccobj/./gcc/xgcc -shared-libgcc -B/tmp/X/gccobj/./gcc -nostdinc++ -L/tmp/X/gccobj/cris-elf/v10/libstdc++-v3/src -L/tmp/X/gccobj/cris-elf/v10/libstdc++-v3/src/.libs -L/tmp/X/gccobj/cris-elf/v10/libstdc++-v3/libsupc++/.libs -nostdinc -B/tmp/X/gccobj/cris-elf/v10/newlib/ -isystem /tmp/X/gccobj/cris-elf/v10/newlib/targ-include -isystem /tmp/X/gcc/newlib/libc/include -B/tmp/X/gccobj/cris-elf/v10/libgloss/cris -L/tmp/X/gccobj/cris-elf/v10/libgloss/libnosys -L/tmp/X/gcc/libgloss/cris -B/tmp/X/pre/cris-elf/bin/ -B/tmp/X/pre/cris-elf/lib/ -isystem /tmp/X/pre/cris-elf/include -isystem /tmp/X/pre/cris-elf/sys-include -march=v10 -mbest-lib-options -I/tmp/X/gcc/libstdc++-v3/../libgcc -I/tmp/X/gccobj/cris-elf/v10/libstdc++-v3/include/cris-elf -I/tmp/X/gccobj/cris-elf/v10/libstdc++-v3/include -I/tmp/X/gcc/libstdc++-v3/libsupc++ -std=gnu++17 -nostdinc++ -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=floating_to_chars.lo -fimplicit-templates -g -O2 -march=v10 -mbest-lib-options -c /tmp/X/gcc/libstdc++-v3/src/c++17/floating_to_chars.cc -o floating_to_chars.o /tmp/X/gcc/libstdc++-v3/src/c++17/floating_to_chars.cc:561:3: warning: 'std::to_chars_result {anonymous}::to_chars(char*, char*, uint128_t)' defined but not used [-Wunused-function] 561 | to_chars(char* first, char* const last, uint128_t x) | ^~~~~~~~ /tmp/X/gcc/libstdc++-v3/src/c++17/floating_to_chars.cc:554:3: warning: 'int {anonymous}::get_mantissa_length(ryu::generic128::floating_decimal_128)' defined but not used [-Wunused-function] 554 | get_mantissa_length(const ryu::floating_decimal_128 fd) | ^~~~~~~~~~~~~~~~~~~ /tmp/X/gcc/libstdc++-v3/src/c++17/floating_to_chars.cc:127:5: warning: 'int {anonymous}::ryu::to_chars(generic128::floating_decimal_128, char*)' defined but not used [-Wunused-function] 127 | to_chars(const floating_decimal_128 v, char* const result) | ^~~~~~~~ during RTL pass: ira /tmp/X/gcc/libstdc++-v3/src/c++17/floating_to_chars.cc: In function 'std::to_chars_result std::__floating_to_chars_shortest(char*, char*, T, chars_format) [with T = double]': /tmp/X/gcc/libstdc++-v3/src/c++17/floating_to_chars.cc:1106:3: internal compiler error: in ira_flattening, at ira-build.c:3213 1106 | } | ^ 0x708412 ira_flattening(int, int) /tmp/X/gcc/gcc/ira-build.c:3213 0xe7c9b8 ira /tmp/X/gcc/gcc/ira.c:5807 0xe7c9b8 execute /tmp/X/gcc/gcc/ira.c:6075 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. I'll attach a brief gdb inspection session.