Paolo Bonzini wrote:
Propagating REG_EQUIV notes across register-register moves would seem
to a obviously simple way to fix this. Thoughts?
I am not sure local-alloc is the best place to address the overall
problem, I doubt it is intended to provide such optimizations.
An additional cse pass after split would seem a better way perhaps?
You could try adding another fwprop run after splitting. I wouldn't
like a third instance of the pass, but it could help.
I think we should at least look at how ugly it would be to do the
propagation in local. I don't particularly like either solution --
extending local to do something other passes do quite well is
duplication, but adding another pass isn't ideal either.
Jeff