diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/CodeGen/MachineModuleInfo.h | 3 | ||||
-rw-r--r-- | include/llvm/Pass.h | 4 | ||||
-rw-r--r-- | include/llvm/PassManager.h | 8 | ||||
-rw-r--r-- | include/llvm/PassManagers.h | 4 |
4 files changed, 9 insertions, 10 deletions
diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h index fc73a3d609..4660cad5d8 100644 --- a/include/llvm/CodeGen/MachineModuleInfo.h +++ b/include/llvm/CodeGen/MachineModuleInfo.h @@ -180,7 +180,10 @@ public: const MCObjectFileInfo *MOFI); ~MachineModuleInfo(); + using ModulePass::doInitialization; bool doInitialization(); + + using ModulePass::doFinalization; bool doFinalization(); /// EndFunction - Discard function meta information. diff --git a/include/llvm/Pass.h b/include/llvm/Pass.h index 7b6f169666..acfc6a251e 100644 --- a/include/llvm/Pass.h +++ b/include/llvm/Pass.h @@ -230,7 +230,7 @@ public: /// doInitialization - Virtual method overridden by subclasses to do /// any necessary initialization. /// - virtual bool doInitialization() { return false; } + virtual bool doInitialization(Module &) { return false; } /// runOnModule - Virtual method overriden by subclasses to process the module /// being operated on. @@ -239,7 +239,7 @@ public: /// doFinalization - Virtual method overriden by subclasses to do any post /// processing needed after all passes have run. /// - virtual bool doFinalization() { return false; } + virtual bool doFinalization(Module &) { return false; } virtual void assignPassManager(PMStack &PMS, PassManagerType T); diff --git a/include/llvm/PassManager.h b/include/llvm/PassManager.h index 1d5e800b4d..ce5fda79f9 100644 --- a/include/llvm/PassManager.h +++ b/include/llvm/PassManager.h @@ -58,14 +58,6 @@ public: /// whether any of the passes modifies the module, and if so, return true. bool run(Module &M); - /// doInitialization - Run all of the initializers for the module passes. - /// - bool doInitialization(); - - /// doFinalization - Run all of the finalizers for the module passes. - /// - bool doFinalization(); - private: /// PassManagerImpl_New is the actual class. PassManager is just the /// wraper to publish simple pass manager interface diff --git a/include/llvm/PassManagers.h b/include/llvm/PassManagers.h index b0450f3e00..385d6e1b55 100644 --- a/include/llvm/PassManagers.h +++ b/include/llvm/PassManagers.h @@ -462,6 +462,10 @@ public: virtual PassManagerType getPassManagerType() const { return PMT_FunctionPassManager; } + +protected: + // FIXME: due to limitation in AddressSanitizer + bool RunFinalization; }; Timer *getPassTimer(Pass *); |