public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug other/58545] New: [4.7/4.8 Regression] error: unable to find a register to spill in class 'POINTER_REGS'
@ 2013-09-26 15:48 gjl at gcc dot gnu.org
  2013-09-26 15:49 ` [Bug other/58545] " gjl at gcc dot gnu.org
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: gjl at gcc dot gnu.org @ 2013-09-26 15:48 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 58545
           Summary: [4.7/4.8 Regression] error: unable to find a register
                    to spill in class 'POINTER_REGS'
           Product: gcc
           Version: 4.8.1
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code, ra
          Severity: normal
          Priority: P3
         Component: other
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gjl at gcc dot gnu.org
            Blocks: 56183
            Target: avr

== C source ==

typedef unsigned char uint8_t;
typedef unsigned int uint16_t;

extern uint8_t f1 (const uint8_t*);
extern void f2 (uint8_t*, uint8_t);

void func (uint16_t parameter, uint8_t *addr, uint8_t data)
{
   uint8_t status;

   status = f1 (addr + 8);

   addr++;

   if (*addr == parameter + 8)
      *addr = parameter;

   f2 (addr, data);
   f2 (addr + 8, status + 1);
}

== Command line ==

$ avr-gcc bug.c -S -Os -mmcu=atmega8
bug.c: In function 'func':
bug.c:20:1: error: unable to find a register to spill in class 'POINTER_REGS'
 }
 ^
bug.c:20:1: error: this is the insn:
(insn 37 15 16 2 (set (reg:QI 20 r20)
        (mem/c:QI (plus:HI (reg/f:HI 28 r28)
                (const_int 1 [0x1])) [3 S1 A8])) bug.c:15 70 {movqi_insn}
     (nil))
bug.c:20:1: internal compiler error: in spill_failure, at reload1.c:2123

bug.c:20:1: internal compiler error: Segmentation fault

== configure == 

Configured with: ../../gcc.gnu.org/trunk/configure --target=avr
--prefix=/local/gnu/install/gcc-4.8-mingw32 --host=i386-mingw32
--build=i686-linux-gnu --enable-languages=c,c++ --disable-nls --disable-shared
--with-dwarf2

== Notes ==

The compile passes with -fno-caller-saves


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2015-06-23  8:42 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-26 15:48 [Bug other/58545] New: [4.7/4.8 Regression] error: unable to find a register to spill in class 'POINTER_REGS' gjl at gcc dot gnu.org
2013-09-26 15:49 ` [Bug other/58545] " gjl at gcc dot gnu.org
2013-09-26 15:50 ` gjl at gcc dot gnu.org
2013-09-27  8:10 ` [Bug other/58545] [4.7/4.8/4.9 " rguenth at gcc dot gnu.org
2013-10-03 15:32 ` amylaar at gcc dot gnu.org
2013-10-03 15:39 ` amylaar at gcc dot gnu.org
2013-10-30 23:55 ` amylaar at gcc dot gnu.org
2013-11-05 14:33 ` [Bug rtl-optimization/58545] [4.7/4.8 " rguenth at gcc dot gnu.org
2014-02-17 16:41 ` gjl at gcc dot gnu.org
2014-06-12 13:42 ` rguenth at gcc dot gnu.org
2014-12-10 12:47 ` [Bug rtl-optimization/58545] [4.8 " rguenth at gcc dot gnu.org
2014-12-19 13:24 ` jakub at gcc dot gnu.org
2015-06-23  8:42 ` rguenth at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).