From ee37bb34d133060318966b26317e063a1fee0c5f Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 30 Apr 2002 18:50:17 +0000 Subject: [PATCH] Fix problem where subpasses would invalidate all analyses outstanding git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2418 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/VMCore/PassManagerT.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/VMCore/PassManagerT.h b/lib/VMCore/PassManagerT.h index c72af14ce2f..e61d994d9a3 100644 --- a/lib/VMCore/PassManagerT.h +++ b/lib/VMCore/PassManagerT.h @@ -440,6 +440,10 @@ template<> struct PassManagerTraits : public BasicBlockPass { virtual bool doInitialization(Module *M); virtual bool runOnBasicBlock(BasicBlock *BB); virtual bool doFinalization(Module *M); + + virtual void getAnalysisUsage(AnalysisUsage &AU) const { + AU.setPreservesAll(); + } }; @@ -484,6 +488,10 @@ template<> struct PassManagerTraits : public FunctionPass { virtual bool doInitialization(Module *M); virtual bool runOnFunction(Function *F); virtual bool doFinalization(Module *M); + + virtual void getAnalysisUsage(AnalysisUsage &AU) const { + AU.setPreservesAll(); + } };