LLVM API Documentation
#include <Pass.h>


Public Member Functions | |
| BasicBlockPass (char &pid) | |
| Pass * | createPrinterPass (raw_ostream &O, const std::string &Banner) const |
| createPrinterPass - Get a basic block printer pass. More... | |
| virtual bool | doInitialization (Function &) |
| virtual bool | runOnBasicBlock (BasicBlock &BB)=0 |
| virtual bool | doFinalization (Function &) |
| virtual void | assignPassManager (PMStack &PMS, PassManagerType T) |
| virtual PassManagerType | getPotentialPassManagerType () const |
| Return what kind of Pass Manager can manage this pass. More... | |
Public Member Functions inherited from llvm::Pass | |
| Pass (PassKind K, char &pid) | |
| virtual | ~Pass () |
| PassKind | getPassKind () const |
| virtual const char * | getPassName () const |
| AnalysisID | getPassID () const |
| getPassID - Return the PassID number that corresponds to this pass. More... | |
| virtual bool | doInitialization (Module &) |
| virtual bool | doFinalization (Module &) |
| virtual void | print (raw_ostream &O, const Module *M) const |
| void | dump () const |
| virtual void | preparePassManager (PMStack &) |
| Check if available pass managers are suitable for this pass or not. More... | |
| void | setResolver (AnalysisResolver *AR) |
| AnalysisResolver * | getResolver () const |
| virtual void | getAnalysisUsage (AnalysisUsage &) const |
| virtual void | releaseMemory () |
| virtual void * | getAdjustedAnalysisPointer (AnalysisID ID) |
| virtual ImmutablePass * | getAsImmutablePass () |
| virtual PMDataManager * | getAsPMDataManager () |
| virtual void | verifyAnalysis () const |
| virtual void | dumpPassStructure (unsigned Offset=0) |
| template<typename AnalysisType > | |
| AnalysisType * | getAnalysisIfAvailable () const |
| bool | mustPreserveAnalysisID (char &AID) const |
| template<typename AnalysisType > | |
| AnalysisType & | getAnalysis () const |
| template<typename AnalysisType > | |
| AnalysisType & | getAnalysis (Function &F) |
| template<typename AnalysisType > | |
| AnalysisType & | getAnalysisID (AnalysisID PI) const |
| template<typename AnalysisType > | |
| AnalysisType & | getAnalysisID (AnalysisID PI, Function &F) |
Additional Inherited Members | |
Static Public Member Functions inherited from llvm::Pass | |
| static const PassInfo * | lookupPassInfo (const void *TI) |
| static const PassInfo * | lookupPassInfo (StringRef Arg) |
| static Pass * | createPass (AnalysisID ID) |
BasicBlockPass class - This class is used to implement most local optimizations. Optimizations should subclass this class if they meet the following constraints:
|
inlineexplicit |
|
virtual |
Find appropriate Basic Pass Manager or Call Graph Pass Manager in the PM Stack and add self into that manager.
Reimplemented from llvm::Pass.
Definition at line 1885 of file LegacyPassManager.cpp.
References llvm::PMTopLevelManager::addIndirectPassManager(), llvm::PMStack::empty(), llvm::PMDataManager::getPassManagerType(), llvm::PMT_BasicBlockPassManager, llvm::PMStack::push(), and llvm::PMStack::top().
|
virtual |
createPrinterPass - Get a basic block printer pass.
Implements llvm::Pass.
Definition at line 144 of file Pass.cpp.
References llvm::createPrintBasicBlockPass().
doFinalization - Virtual method overriden by BasicBlockPass subclasses to do any post processing needed after all passes have run.
doInitialization - Virtual method overridden by BasicBlockPass subclasses to do any necessary per-function initialization.
|
virtual |
Return what kind of Pass Manager can manage this pass.
Reimplemented from llvm::Pass.
Definition at line 159 of file Pass.cpp.
References llvm::PMT_BasicBlockPassManager.
|
pure virtual |
runOnBasicBlock - Virtual method overriden by subclasses to do the per-basicblock processing of the pass.