[trimming down the Cc list]

1) what to do with (clobber (const_int 0)). This should be not so much of a problem thanks to validate_change, but I'd be weary of having such CLOBBER rtx-en in REG_EQUAL notes!

Just return NULL.  The philosophy of simplify_rtx is different from combine.
In the former, you're being asked "can you simplify this?" while in the
latter, there's a lot of intertwining between simplification and
substitution.  So you can just return "no, I can't simplify it" and combine
would then do what it wants do with that result.

Yes, one possibility is to use a RTX hook for this too. By default you would return NULL (and this would propagate up); in combine you could override it to return the CLOBBER.

To some extent, simplify-rtx.c could *know* about CLOBBER. It would just not return it unless in combine.

Paolo

Reply via email to