class PassManager
Declaration
class PassManager : public PassManagerBase { /* full declaration omitted */ };
Description
PassManager manages ModulePassManagers
Declared at: llvm/include/llvm/IR/LegacyPassManager.h:48
Inherits from: PassManagerBase
Method Overview
- public PassManager()
- public void add(llvm::Pass * P)
- public bool run(llvm::Module & M)
- public ~PassManager()
Inherited from PassManagerBase:
Methods
¶PassManager()
PassManager()
Declared at: llvm/include/llvm/IR/LegacyPassManager.h:51
¶void add(llvm::Pass* P)
void add(llvm::Pass* P)
Description
Add a pass to the queue of passes to run. This passes ownership of the Pass to the PassManager. When the PassManager is destroyed, the pass will be destroyed as well, so there is no need to delete the pass. This may even destroy the pass right away if it is found to be redundant. This implies that all passes MUST be allocated with 'new'.
Declared at: llvm/include/llvm/IR/LegacyPassManager.h:54
Parameters
- llvm::Pass* P
¶bool run(llvm::Module& M)
bool run(llvm::Module& M)
Description
run - Execute all of the passes scheduled for execution. Keep track of whether any of the passes modifies the module, and if so, return true.
Declared at: llvm/include/llvm/IR/LegacyPassManager.h:58
Parameters
- llvm::Module& M
¶~PassManager()
~PassManager()
Declared at: llvm/include/llvm/IR/LegacyPassManager.h:52