I still have to try extra fwprop pass to confirm this solves the issue.

But it does seem that the missing piece is effective constant propagation + simplification after splits and subregs - which is currently ineffective in local-alloc (or any later pass)

Adding extra pass indeed seems a poor route - BUT this would suggest no need for any constant propagation in local-alloc. Thus avoid duplication of function.


As for workaround, Nops are nothing already. I just split the instruction into (const_in 0) and it's gone. The split instruction pattern explicitely match on constant. Peephole would do the same thing - but latter Of course I will also have to add all the other variants that can be created:

AND Rx,0

AND Rx,0xff etc

Leaving only the limited constant propagation issue.

Andy
________________________________________________________________________
More new features than ever. Check out the new AIM(R) Mail ! - http://webmail.aim.com

Reply via email to