On Sat, Dec 26, 2009 at 2:07 AM, Daniel Berlin <dber...@dberlin.org> wrote: >> In general it will be tricky for latter passes to clean up the messes. >> The fundamental problem is that the address computation is exposed to >> PRE prematurely (for a given target ) at GIMPLE level. > > > Yeah, i'm not sure PRE can really do anything different here. > I also think you would have a very hard time trying to stop everything > from moving invariant computations around at the tree level. > Might make more sense to finish the tree level with a global code > motion pass that is target sensitive or something.
And you also need to deal with the case where the address computation is already commoned in the original source. Btw, a optimization option to trigger fwprop and initializing it differently for different targets would work for me as a temporary workaround (not that this address cost issue is new ...) Richard.