Problem with peephole to peephole2 conversion
Richard Henderson
rth@redhat.com
Thu Aug 25 16:06:00 GMT 2005
On Thu, Aug 25, 2005 at 02:02:48PM +0530, Ashwin wrote:
> However if the pattern happens to be something like this :
>
> op0 = 1
> op0 = op0 leftshift op2
Ah, I see. Well, peep2_reg_dead_p doesn't include "or_set" in its
definition, so it shouldn't do what you're suggesting. I wouldn't
be opposed to adding a new function with this semantics. A
cursory glance across existing uses of the function turn up at least
one instance of
"true_regnum (operands[0]) == true_regnum (operands[2])
|| peep2_reg_dead_p (2, operands[0])"
which for that particular case corresponds to the condition you're
asking for. But it would seem that the vast majority of the time
we do not require the "or_set" semantics.
r~
More information about the Gcc
mailing list