http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48596

           Summary: [4.7 Regression] [SH] unable to find a register to
                    spill in class 'FPUL_REGS'
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: kkoj...@gcc.gnu.org


Created attachment 23975
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23975
A test case

The attached testcase causes a spill failure with -O1 -m4 -ml:

foo.c: In function 'foo':
foo.c:27:1: error: unable to find a register to spill in class 'FPUL_REGS'
foo.c:27:1: error: this is the insn:
(insn 105 104 106 8 (parallel [
            (set (reg:SI 264)
                (fix:SI (reg:DF 66 fr2 [262])))
            (use (reg/v:PSI 151 ))
        ]) foo.c:22 357 {fix_truncdfsi2_i}
     (expr_list:REG_DEAD (reg:DF 66 fr2 [262])
        (expr_list:REG_DEAD (reg/v:PSI 151 )
            (expr_list:REG_EQUIV (mem:SI (reg/f:SI 78 fr14 [orig:242 D.2027 ]
[242]) [0 MEM[(struct Info *)D.2027_55]+0 S4 A32])
                (nil)))))
foo.c:27:1: internal compiler error: in spill_failure, at reload1.c:2113

for sh-elf target.

Reply via email to