Redundant logical operations left after early splitting
Andy H
hutchinsonandy@aim.com
Fri Feb 22 05:54:00 GMT 2008
Paolo,
As you suggested, I moved the extra fwprop nearer combine, just after
split - but it failed to propagate anything.
The reason is that immediately post split the data flow is reflecting
cross dependencies between Word and subreg U/D. So the USE of just 1
QImode subreg of SImode register islinked to 4 QImode DEFs - and fwprop
gives up.
Putting fwprop after subreg pass removes this problem - as the subreg
have then been converted to QImode psuedo regs and we get single DEF.
Andy
Paolo Bonzini wrote:
>
>> This would indicate that simplify-rtx inside fwprop is removing OR Rx,0
>> but not picking up the the additionally revealed forward propagation
>> oppertunities
>> This would seem to be an avoidable limitation.
>
> Yes, can you send me your MD patch and a simple testcase? fwprop is
> supposed to be "cascading", and some bugs in cascading were already
> revealed by the AVR port.
>
> It might be even more worthwhile to try *moving* fwprop2 after
> combine, then.
>
> Paolo
More information about the Gcc
mailing list