On Tue, 2012-02-28 at 11:03 -0600, William J. Schmidt wrote: > I think this is probably a problem with how cprop_into_successor_phis > works. It only propagates into immediate successors of a block. In > this case copies are propagated from bb12 into phis in bb13 and bb14 (of > which there are none). Seems like it could propagate into phis of all > dominator children, which would catch bb15. I haven't looked at this > part of the code in too much detail, but I'm guessing since bb15's > immediate dominator is bb12, this is the last chance to get the value > propagated into the phi. > > When I get more time, I'll walk through the logic for this test to > confirm, and post here with the results. > > If this is the problem, then I doubt anything will be fixed for this in > the limited time left for 4.7. You'd want to open a missed-optimization > PR for it.
No, this isn't right. I see in the dump that the copy is being removed from the const_and_copies_table after processing block 13 and before processing block 14. That's presumably a bug. I'll keep looking. Bill