John Criswell <criswell at illinois.edu> writes:> 2) Rerunning analysis group passes after invalidation. If you want to > use an analysis other than the default analysis group, you have to > manually specify where to use it each time in the pass pipeline. If > your non-default pass gets invalidated, then the default is used by > any other transform that requests an analysis from that group.Oh yes, I've run into this as well. I did a local hack here to add a parameter to specify which pass should be treated as default. -Dave
This is excellent Chandler. We spoke before about wanting to keep running things like InstCombine and SimplifyCFG in a loop until stabilization. This will make doing that much easier. I think some of the idea for this work might have come from a patch i tried to submit a few weeks ago on reducing recomputing the dom tree, in which you commented that we need to fix the pass manager. In that email i mentioned that not all passes respect the return value from runOnFunction. Is your pass framework going to explicitly use this return value? If so we'll need everyone to help make sure passes correctly return when they change anything. Pete On Jul 11, 2012, at 10:02 AM, dag at cray.com wrote:> John Criswell <criswell at illinois.edu> writes: > >> 2) Rerunning analysis group passes after invalidation. If you want to >> use an analysis other than the default analysis group, you have to >> manually specify where to use it each time in the pass pipeline. If >> your non-default pass gets invalidated, then the default is used by >> any other transform that requests an analysis from that group. > > Oh yes, I've run into this as well. I did a local hack here to add a > parameter to specify which pass should be treated as default. > > -Dave > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
On Wed, Jul 11, 2012 at 10:10 AM, Peter Cooper <peter_cooper at apple.com>wrote:> This is excellent Chandler. > > We spoke before about wanting to keep running things like InstCombine and > SimplifyCFG in a loop until stabilization. This will make doing that much > easier. > > I think some of the idea for this work might have come from a patch i > tried to submit a few weeks ago on reducing recomputing the dom tree, in > which you commented that we need to fix the pass manager.Well, my interest was renewed sharply when I wrote a significant optimization pass that simply cannot run in the existing framework. =/> In that email i mentioned that not all passes respect the return value > from runOnFunction. Is your pass framework going to explicitly use this > return value? If so we'll need everyone to help make sure passes correctly > return when they change anything. >I *really* want to make this happen, but I think it needs to happen as a phase-2. For now, I think we have to replicate the annoying current behavior. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120711/616cf90b/attachment.html>