Run across a whole function, visiting each basic block one at a time.
Missing call to skipFunction?
Thanks. Added skipFunction and rebased.
Missing call to AU.addPreserved<ScalarEvolutionWrapperPass>(). Missing call to AU.addPreserved<GlobalsAAWrapperPass>(). But that's orthogonal, I guess; fine to address that in a followup.
@efriedma Thanks, added Preserved before committing.
Heads-up, we've bisected a webrtc test failure down to this revision: https://bugs.chromium.org/p/webrtc/issues/detail?id=10887
(But we're still analyzing things.)