On 12/14/09, Andrew Hutchinson <andrewhutchin...@cox.net> wrote:
> The patterns for AVR mega 256 use EICALL an EIJMP
>
> Both require EIND to be set to provide upper address bits
>
> However, we are using linker trampolines for both, so in either case the
> 16 bit jump or call is to the trampolines.
>
> Are not the trampolines always located in first 128Kbytes? Thus we
> should be using ICALL and IJMP and not needing to set use EIND at all.
>
> What have I miss-understood?
>

Hi,

Yes this confused me a lot too, but the reason is because the
trampoline is not in the first 128kbytes for a bootloader, so if the
compiler uses eijmp and eicall, then it is possible to do indirect
calls there too, but it still works fine in normal code.

Sean

>
> Andy
>
>
>
> _______________________________________________
> AVR-GCC-list mailing list
> AVR-GCC-list@nongnu.org
> http://lists.nongnu.org/mailman/listinfo/avr-gcc-list
>


_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to