Is this the expected behavior?
Paolo Bonzini
bonzini@gnu.org
Wed Jul 16 10:32:00 GMT 2008
Mohamed Shafi wrote:
> 2008/7/15 Ramana Radhakrishnan <ramana.r@gmail.com>:
>> <snipped parts of the last mail>
>>
>>> I agree with you, but what about when there are still caller save
>>> register are available and there are no register restrictions for any
>>> instructions? In my case i find that GCC has used only the argument
>>> registers, stack pointer and callee saved registers. So out of the 16
>>> available registers ony 5+1+4 registers were used, even though there
>>> was 6 caller save registers were available
>>
>> Check your REG_ALLOC_ORDER macro ?
>
> The order is argument registers, caller save registers and finally
> the callee save registers.
Are there instructions that only work on the callee-save registers?
This might confuse regclass (the pass that decides the register class
preferences).
Paolo
More information about the Gcc
mailing list