https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65710
Bug ID: 65710
Summary: [5 Regression] Thumb1 ICE caused by no register to
spill
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: terry.guo at arm dot com
Created attachment 35268
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35268&action=edit
test case
Revision 221867 is the fix to PR65647. But it causes another ICE for thumb1
target as below:
$./install/bin/arm-none-eabi-gcc -mthumb -O2 -S regex.i
regex.i: In function ‘byte_re_match_2_internal’:
regex.i:10121:1: error: unable to find a register to spill
}
^
regex.i:10121:1: error: this is the insn:
(insn 12390 15093 12392 2 (set (reg:SI 8731 [8730])
(plus:SI (reg:SI 8731 [8730])
(reg:SI 10838))) regex.i:8483 718 {*thumb1_addsi3}
(expr_list:REG_DEAD (reg:SI 10838)
(nil)))
regex.i:10121:1: internal compiler error: in assign_by_spills, at
lra-assigns.c:1419
0xa36eea _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
../../src/gcc/gcc/rtl-error.c:110
0x9521e7 assign_by_spills
../../src/gcc/gcc/lra-assigns.c:1419
0x952bd3 lra_assign()
../../src/gcc/gcc/lra-assigns.c:1594
0x94e919 lra(_IO_FILE*)
../../src/gcc/gcc/lra.c:2360
0x90cc09 do_reload
../../src/gcc/gcc/ira.c:5418
0x90cc09 execute
../../src/gcc/gcc/ira.c:5589
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
This issue still happens to the latest trunk.