Paolo Bonzini | 16 Jul 11:40

Re: Is this the expected behavior?

Mohamed Shafi wrote:
> 2008/7/15 Ramana Radhakrishnan <ramana.r <at> 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


Gmane