avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [avr-gcc-list] Re: -O vs. -O2


From: Eric Weddington
Subject: RE: [avr-gcc-list] Re: -O vs. -O2
Date: Thu, 26 Jul 2007 16:10:04 -0600


> -----Original Message-----
> From:
> address@hidden
> [mailto:address@hidden
> org] On Behalf Of Nathan Cooprider
> Sent: Thursday, July 26, 2007 4:03 PM
> To: address@hidden
> Subject: [avr-gcc-list] Re: -O vs. -O2
>
> Nuts. I hope my original posting of this bounces off the
> server and did
> not spam all your boxes. I didn't realize how big the source file was.
>
> If the file was blocked (as I hope it was) then you can find
> a tarred up
> version of it on my web page instead:
>
> http://www.cs.utah.edu/~coop/file.tgz
>
> I apologize again for my stupidity.
>
> Nathan
>
> Nathan Cooprider wrote:
> > Some level of -O2 is breaking my application. I think this
> is a known
> > bug, but I am trying to find which specific option is
> breaking things so
> > I can still optimize as much as possible. I am attaching
> the file I want
> > to compile.
> >
> > avr-gcc -mmcu=atmega128 -O -fdollars-in-identifiers file.c
> >
> > Compiles just fine, but
> >
> > avr-gcc -mmcu=atmega128 -O2 -fdollars-in-identifiers file.c
> >
> > does not. Also
> >
> > avr-gcc -mmcu=atmega128 -O -fdollars-in-identifiers -fthread-jumps
> > -fcrossjumping -foptimize-sibling-calls -fcse-follow-jumps
> > -fcse-skip-blocks -fgcse -fgcse-lm -fexpensive-optimizations
> > -frerun-cse-after-loop -fcaller-saves -fpeephole2 -fschedule-insns
> > -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
> > -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
> > -freorder-functions -falign-functions -falign-jumps -falign-loops
> > -falign-labels file.c
> >
> > compiles fine as well, which is strange because I manually
> add to -O all
> > the options to make it -O2.
> >
> > The error I get (for the -O2 compilation) is:
> >
> > file.c: In function `TrickleTimerImplP$0$adjustTimer':
> > file.c:32409: error: unable to find a register to spill in class
> > `BASE_POINTER_REGS'

What version of avr-gcc are you using?

Did you know about the known AVR bug list?:
<http://www.nongnu.org/avr-libc/bugs.html>

There's a bug in that list that exhibits the same symptoms. GCC bug #31786:
<http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31786>
Could this be the same bug?

Eric Weddington






reply via email to

[Prev in Thread] Current Thread [Next in Thread]