https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113354
--- Comment #1 from YunQiang Su ---
In file included from
../../../../../libstdc++-v3/src/c++17/floating_from_chars.cc:86:
../../../../../libstdc++-v3/src/c++17/fast_float/fast_float.h: In function
‘std::from_chars_result {anonymous}::fast_float::from_chars_advanced(const c
har*, const char*, T&, parse_options) [with T = double]’:
../../../../../libstdc++-v3/src/c++17/fast_float/fast_float.h:3039:1: error:
unable to find a register to spill
3039 | }
| ^
../../../../../libstdc++-v3/src/c++17/fast_float/fast_float.h:3039:1: error:
this is the insn:
(insn 3578 7721 7722 263 (parallel [
(set (reg:SI 3353)
(plus:SI (mult:SI (reg:SI 3185 [orig:2219 _914+4 ] [2219])
(reg:SI 2175 [ _280+4 ]))
(reg:SI 3354)))
(clobber (reg:SI 3186 [3073]))
(clobber (reg:SI 3074))
])
"../../../../../libstdc++-v3/src/c++17/fast_float/fast_float.h":248:26 42
{*mul_acc_si}
(expr_list:REG_UNUSED (reg:SI 3074)
(expr_list:REG_UNUSED (reg:SI 3186 [3073])
(expr_list:REG_DEAD (reg:SI 3354)
(expr_list:REG_DEAD (reg:SI 3185 [orig:2219 _914+4 ] [2219])
(nil))
during RTL pass: reload
../../../../../libstdc++-v3/src/c++17/fast_float/fast_float.h:3039:1: internal
compiler error: in lra_split_hard_reg_for, at lra-assigns.cc:1862
0x7cf140 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
../../gcc/rtl-error.cc:108
0x10184c5
lra_split_hard_reg_for()
../../gcc/lra-assigns.cc:1862
0x1012405
lra(_IO_FILE*, int)
../../gcc/lra.cc:2518
0xfc76df do_reload
../../gcc/ira.cc:5973
0xfc76df execute
../../gcc/ira.cc:6161