This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch,AVR] Fix PR46278, Take #3


Weddington, Eric schrieb:
> 
>> This is yet another attempt to fix PR46278 (fake X addressing).
>> 
>> After the previous clean-ups it is just a small change.
>> 
>> caller-saves.c tries to eliminate call-clobbered hard-regs allocated to 
>> pseudos around function calls and that leads to situations that reload is 
>> no more capable to perform all requested spills because of the very few 
>> AVR's address registers.
>> 
>> Thus, the patch adds a new target option -mstrict-X so that the user can
>> turn that option if he like to do so, and then -fcaller-save is disabled.
>> 
>> The patch passes the testsuite without regressions. Moreover, the 
>> testsuite passes without regressions if all test cases are run with 
>> -mstrict-X and all libraries (libgcc, avr-libc) are built with the new
>> option turned on.
> 
> Hi Johann,
> 
> Sorry, I haven't been keeping up with the discussion on this PR.
> 
> But if all test cases pass with running -mstrict-X and everything built with
> that option on, then why is this even an option? Is it because that it may 
> not always reduce code size?...

An alternative would be to set -mstrict-X per default if -O or higher.
Let's see what Denis thinks.

Johann

> 
> Thanks, Eric
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]