------- Comment #77 from steven at gcc dot gnu dot org 2009-05-07 17:50 ------- Re. comment #75: Just the fact that an option is enabled in both releases doesn't mean the pass behind it is doing the same thing in both releases. What the scheduler does, depends heavily on the code you feed it. Sometimes it is pure (good or bad) luck that changes the behavior of a pass in the compiler. The interactions between all the pieces are just very complicated (which is why, IMHO, retargetable-compiler engineering is so difficult: controlling the pipeline is undoable).
Re. comment #76: Sad as it may be, I think this is the best short-term solution. Alternatively we could re-work fwprop to work on regions and use the partial-CFG dataflow stuff, similar to what the RTL loop optimizers (like loop-invariant) do. To be honest, I'd much prefer the latter, but the DIY-fwprop thing is probably easier in the short term. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33928