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

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

RE: [avr-gcc-list] gcc signal overhead, redundant code, bug (?), far fro


From: Szikra Istvan
Subject: RE: [avr-gcc-list] gcc signal overhead, redundant code, bug (?), far from optimal
Date: Sat, 20 Aug 2005 20:32:25 +0200

You mean something like this:

"SIGNAL(SIG_UART_DATA)
{
    //Disable UDRIE
    UCSRB &= _BV(UDRIE);
    sei();
    MyInterruptHandler();
}"

Yes I tried, it doesn't work :(

And it turns out others tried it before me:
"Which I thought should require no prologue (MyInterruptHandler() pushing
what it needs) but the compiler still generates a similar looking prologue
for the interrupt handler - even with the interrupt and MyInterruptHandler()
in separate source files... (Which I found a little surprising)"

Quotes are from:
http://lists.gnu.org/archive/html/avr-gcc-list/2004-11/msg00242.html


Istvan Szikra

> -----Original Message-----
> From: address@hidden [mailto:avr-gcc-
> address@hidden On Behalf Of David Brown
> Sent: 2005. augusztus 19. 09:38
> To: address@hidden
> Subject: Re: [avr-gcc-list] gcc signal overhead, redundant code, bug
> (?),far from optimal
> 
> <snip>
> 
> >
> > So for the frequently used part of the interrupt the speed optimized is
> in
> > fact slower than the size optimized. :) :| :(
> >
> 
> Have you tried putting the calculation bit in a seperate function?  That
> way
> most of the pushing will be deferred until the call.
> 
> mvh.,
> 
> David
> 
> 
> 
> 
> _______________________________________________
> AVR-GCC-list mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/avr-gcc-list








reply via email to

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