http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49307
Summary: ICE in spill_failure, at reload1.c:2113
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: [email protected]
ReportedBy: [email protected]
Host: x86_64-linux-gnu
Target: sh4-unknown-linux-gnu
Build: x86_64-linux-gnu
$ cat ~/ice.i
static int
func1 (char *a)
{
int b;
while (foo () != 0)
{
bar(&a[b]);
}
}
int
func2 ()
{
char a[8];
func1 (a);
}
$ ./xgcc -v
Using built-in specs.
COLLECT_GCC=./xgcc
Target: sh4-unknown-linux-gnu
Configured with: ../configure --target=sh4-unknown-linux-gnu
--prefix=/home/ryan/x-tools/sh4-unknown-linux-gnuc
--with-local-prefix=/home/ryan/x-tools/sh4-unknown-linux-gnu/sh4-unknown-linux-gnu/sys-root
--disable-multilib
--with-sysroot=/home/ryan/x-tools/sh4-unknown-linux-gnu/sh4-unknown-linux-gnu/sys-root
--with-newlib --enable-threads=no --disable-shared --enable-__cxa_atexit
--disable-nls --enable-symvers=gnu --enable-languages=c
--enable-target-optspace --enable-checking --disable-libmudflap
--disable-libssp
Thread model: single
gcc version 4.7.0 20110607 (experimental) [trunk revision 174734] (GCC)
$ ./xgcc -B. -O1 -fpic -fstack-protector ~/ice.i
/home/ryan/ice.i: In function 'func2':
/home/ryan/ice.i:16:1: error: unable to find a register to spill in class
'R0_REGS'
/home/ryan/ice.i:16:1: error: this is the insn:
(insn 34 55 54 6 (set (reg/f:SI 1 r1 [172])
(mem/u/c:SI (plus:SI (reg/f:SI 1 r1 [173])
(reg:SI 12 r12)) [0 S4 A32])) /home/ryan/ice.i:16 176
{movsi_ie}
(expr_list:REG_DEAD (reg/f:SI 1 r1 [173])
(nil)))
/home/ryan/ice.i:16:1: internal compiler error: in spill_failure, at
reload1.c:2113
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.