This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/31786] error: unable to find a register to spill in class 'BASE_POINTER_REGS'
- From: "ralf dot corsepius at rtems dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 3 May 2007 12:12:02 -0000
- Subject: [Bug target/31786] error: unable to find a register to spill in class 'BASE_POINTER_REGS'
- References: <bug-31786-8160@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #5 from ralf dot corsepius at rtems dot org 2007-05-03 13:12 -------
Subject: RE: error: unable to find a register to spill
in class 'BASE_POINTER_REGS'
On Thu, 2007-05-03 at 06:05 -0600, Eric Weddington wrote:
>
> > ------- Comment #2 from ralf_corsepius at rtems dot org
> > 2007-05-03 10:27 -------
> > I can also reproduce the bug with 4.2.0-20070501.
> >
> > It also is related to optimization levels. Newlib is being
> > compiled with -O2,
> > which triggers this breakdown. Using -O1 or -Os to build
> > init.c lets the
> > breakdown vanish.
> >
> > Eric, due to bugzilla's current brokenness, I am sending you
> > the *.i on PM.
>
> Hi Ralf,
> All public distros use avr-libc instead of newlib to build an AVR toolchain:
> <http://savannah.nongnu.org/projects/avr-libc>
> AFAIK, it is only RTEMS that attempts to use newlib. And because of this the
> only testing that is done is when you do it, so I'm not surprised that
> newlib is broken for the avr.
Though what you say is true, the file avr bombs out on is mere "c", i.e.
a bug in GCC.
Ralf
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31786