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

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

RE: [avr-gcc-list] Add builtins in avr target.


From: Weddington, Eric
Subject: RE: [avr-gcc-list] Add builtins in avr target.
Date: Fri, 18 Apr 2008 00:04:47 -0600

 

> -----Original Message-----
> From: 
> address@hidden 
> [mailto:address@hidden
> org] On Behalf Of Dmitry K.
> Sent: Thursday, April 17, 2008 9:24 PM
> To: address@hidden
> Subject: Re: [avr-gcc-list] Add builtins in avr target.
> 
> On Friday 18 April 2008 12:56, Weddington, Eric wrote:
> > > > 2008/4/17, Wouter van Gulik <address@hidden>:
> > > >>  For a 2 cycles delays an rjmp can be used. Saves an 
> instruction!
> > > >
> > > > And so on:
> > > >
> > > > 3 cycles:
> > > >   rjmp .
> > > >   nop
> > >
> > > I shall try to replace 'nop' with 'rjmp .' for two cycle
> > > delay.  It is necessary to check that the linker relaxation
> > > pass will not remove the  'rjmp .' instruction. Now I do not
> > > wish to complicate a code and to optimize 3..6 cycles delays.
> >
> > AFAIK, linker relaxation will do JMP->RJMP transformations 
> only. Going
> > the other way is not a size optimization.
> 
> Alas, not only.
> 
> Linker relaxation replaces the (R)CALL,RET sequence
> into (R)JMP,RET. 

I'm confused.

I thought we were talking about constructs like:
> 3 cycles:
>   rjmp .
>   nop
> 

Tail call optimization transforms (R)CALL,RET -> (R)JMP,RET as you
mentioned above. But again it would not affect the "rjmp ." as above.
Only RCALL.

Eric




reply via email to

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