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