LLVM 20.0.0git
|
PassManagerBase - An abstract interface to allow code to add passes to a pass manager without having to hard-code what kind of pass manager it is. More...
#include "llvm/IR/LegacyPassManager.h"
Public Member Functions | |
virtual | ~PassManagerBase () |
virtual void | add (Pass *P)=0 |
Add a pass to the queue of passes to run. | |
PassManagerBase - An abstract interface to allow code to add passes to a pass manager without having to hard-code what kind of pass manager it is.
Definition at line 39 of file LegacyPassManager.h.
|
virtualdefault |
|
pure virtual |
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'.
Implemented in llvm::legacy::PassManager, llvm::legacy::FunctionPassManager, and llvm::DebugifyCustomPassManager.
Referenced by llvm::CodeGenTargetMachineImpl::addAsmPrinter(), llvm::TargetPassConfig::addCheckDebugPass(), llvm::TargetPassConfig::addDebugifyPass(), llvm::TargetPassConfig::addISelPasses(), llvm::TargetPassConfig::addMachinePasses(), llvm::TargetPassConfig::addPass(), llvm::DirectXTargetMachine::addPassesToEmitFile(), llvm::CodeGenTargetMachineImpl::addPassesToEmitFile(), llvm::CodeGenTargetMachineImpl::addPassesToEmitMC(), addPassesToGenerateCode(), llvm::TargetPassConfig::addPrintPass(), llvm::TargetPassConfig::addStripDebugPass(), and llvm::TargetPassConfig::addVerifyPass().