On 12/2/20 9:32 AM, Qing Zhao wrote:
>
>> So we are clearing the x87 registers with that option. Hence the change
>> in reg-stack behavior. I'm a bit surprised by this as I don't see
>> clearing the x87 registers as particularly helpful from a security
>> standpoint. But I haven't followed that discussion closely.
> Even with the option -fzero-call-used-regs=used-gpr (without clearing any x87
> registers),
> We have the same compiler time error.
>
> The first thing that the new pass “zero_call_used_regs” does is:
>
> df_analyze();
OK. So that's the key issue, until now nothing has really cared about
the DF state after reg-stack, but the pass to zero registers does. I
had the order backwards in my head with register clearing happening
before regstack. Hence my significant confusion about why things were
suddenly going wrong.
The patch is OK. Thanks for patiently walking me through this.
jeff