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(); + } };