> Ahh, you mean something like this? (Fixes the testcase, but not
> properly tested yet.)
Yes, but I think you still need the regular treatment for these CALL_INSNs:
Index: postreload.c
===
--- postreload.c(revision 166701)
Eric Botcazou writes:
>> JUMP_INSNs already invalidate the register use information. The problem
>> is that CALL_INSNs that can throw don't.
>
> Sure, that's precisely what I was suggesting to change, like in rev 162301.
Ahh, you mean something like this? (Fixes the testcase, but not
properly
> JUMP_INSNs already invalidate the register use information. The problem
> is that CALL_INSNs that can throw don't.
Sure, that's precisely what I was suggesting to change, like in rev 162301.
--
Eric Botcazou
Eric Botcazou writes:
>> It appears that reload_combine does not take exceptions into account.
>> When it encounters a BARRIER it forgets all register uses after this
>> point. But an exception can transfer control to any of the CODE_LABELs
>> and jump back to after the BARRIER, with the registe
> It appears that reload_combine does not take exceptions into account.
> When it encounters a BARRIER it forgets all register uses after this
> point. But an exception can transfer control to any of the CODE_LABELs
> and jump back to after the BARRIER, with the registers still in use.
There shou