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: unassig...@gcc.gnu.org
        ReportedBy: rmansfi...@qnx.com
              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.

Reply via email to