>> In the .cpp file, I'm not sure why you need the Deleter class. It >> seems like the CollectorModuleMetadata pass should manage its own >> lifetime (freeing itself on releaseMemory). This will require all >> the machinefunctionpasses to preserve CollectorModuleMetadata >> though. Does this make sense? > > Shades of <http://llvm.org/PR746>. > > I thought so as well, and tried very hard to make that work. I > can't remember the details, but I was more fundamental than just > not invalidating the analysis. Even after I'd fixed all of the > passes that invalidated the metadata (and there were many), I had > resolve lifetime issues by making CollectorModuleMetadata an > ImmutablePass. > > I actually think this is empirically better, despite being "ugly"; > notice how you have 2 files changed here instead of 25, and no risk > that a pass will accidentally invalidate the "analysis" and throw > away necessary output.
Ok sounds good, please commit! -Chris _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits