2011/6/16 Richard Henderson <r...@redhat.com>:
> On 06/15/2011 02:58 PM, Richard Henderson wrote:
>> Indeed, I can work around this particular crash by either
>> hacking Z to be call-saved, or hacking the frame pointer to
>> not be required.  The former of course changes the abi, and
>> the second produces awful code due to too many copies from
>> the stack pointer.  So neither option is "preferred".
>
> Perhaps I spoke too soon re the frame pointer.  The old
> code is even worse.
>
>   text    data     bss     dec     hex filename
>  10032      25       0   10057    2749 bld-avr-orig/gcc/z.o
>   5816      25       0    5841    16d1 bld-avr-new/gcc/z.o
>
> That said, there's a crash building libgcc so there's
> still work to do.

@rth (while you are diving into AVR microworld ;-)
May be you can give a suggestion to change the AVR abi.
I have tuned the abi for code size almost 13 years ago.
The register pressure to r18-r31 are very high.

I have a set of experiments with omitting the frame poiner and I found that
better to support fake addressing modes (infinite displacement for frame
pointer).

Denis.

Reply via email to