On 06/19/2014 12:36 PM, Jan Hubicka wrote:
>> On 06/19/2014 09:06 AM, Tom de Vries wrote:
>>>
>>> 2014-06-19  Tom de Vries  <t...@codesourcery.com>
>>>
>>>     * final.c (collect_fn_hard_reg_usage): Don't save function_used_regs if
>>>     it contains all call_used_regs.
>>
>> Ok.
> 
> When we now have way to represent different reg usages for functions, what 
> would be best
> way to make local functions to default into saving some SSE registers on 
> x86/x86-64?

I wouldn't do that at all.  Leave all sse registers call-clobbered.  This way
you don't need to have different entry points (or one possibly less efficient
entry point) when a function is used both locally and globally.

What I would investigate is how to use this hard reg usage data in the register
allocator.  If we know that the callee only uses xmm0-xmm4, then we can keep
xmm5-xmm15 live across the call.


r~

Reply via email to