Hi, Richard,

> On Aug 5, 2020, at 4:35 PM, Qing Zhao via Gcc-patches 
> <gcc-patches@gcc.gnu.org> wrote:
> 
> 
>> 
>>>>>> +     continue;
>>>>>> +      if (fixed_regs[regno])
>>>>>> +     continue;
>>>>>> +      if (is_live_reg_at_exit (regno))
>>>>>> +     continue;
>> 
>> How can a call-used reg be live at exit?
> 
> Yes, this might not be needed, I will double check on this.

Just double checked this. And it turned out that this condition cannot be 
deleted.

a call-used reg might be the register that holds the return value and return to 
caller (so it’s live at exit).
For example, the EAX register of i386 is a call-used register and at the same 
time, it is the register that holds the return value.

Hope this is clear.

thanks.

Qing

Reply via email to