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

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

Re: [avr-gcc-list] mcall-prologues completely broken for >128k


From: Dmitry K.
Subject: Re: [avr-gcc-list] mcall-prologues completely broken for >128k
Date: Thu, 14 May 2009 14:03:56 +1100
User-agent: KMail/1.5

On Thursday 14 May 2009 09:31, you wrote:
[...]
> I like that solution.  Is this correct?
>
> Index: setjmp.S
> ===================================================================
> RCS file: /sources/avr-libc/avr-libc/libc/stdlib/setjmp.S,v
> retrieving revision 1.7
> diff -u -r1.7 setjmp.S
> --- setjmp.S    1 Apr 2009 23:11:00 -0000       1.7
> +++ setjmp.S    13 May 2009 22:29:57 -0000
> @@ -155,8 +155,10 @@
>  #if  defined(__AVR_3_BYTE_PC__) && __AVR_3_BYTE_PC__
>         ld      __tmp_reg__, X+
>  .L_eijmp:
> -       out     AVR_EXTENDED_INDIRECT_ADDR, __tmp_reg__
> -       eijmp
> +       push    ZL
> +       push    ZH
> +       push    __tmp_reg__
> +       ret
>  #else
>         ijmp
>  #endif

Yes, it is.
And some optimization is needed to exclude pop/push sequences.

Dmitry.






reply via email to

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