[patch] fix regrename pass to ensure renamings produce valid insns

Bernd Schmidt bernds@codesourcery.com
Thu Jun 25 13:59:00 GMT 2015


On 06/25/2015 03:53 PM, Eric Botcazou wrote:
>> I'd be happiest if we had an assert on almost all targets. regrename has
>> been designed in such a way that the replacements can't fail, if the
>> constraints on the insns are correct. If there are ports which have
>> borderline insns where that doesn't hold maybe we ought to have a target
>> hook that says so.
>
> ARM both has "borderline" insns (in fact insns with match_parallel are enough)
> and benefits from the regrename pass so this doesn't seem to be really doable.

All I'm saying it would be nice to have a port say "validate regrename 
results", and use the assert only if the port doesn't request it. On 
most ports (excluding arm and nios2 by the sound of it) we'd still have 
an assert verifying that the regrename implementation is sound wrt doing 
the right thing with insn constraints.


Bernd




More information about the Gcc-patches mailing list