|
LLVM
4.0.0
|
PassInfo class - An instance of this class exists for every pass known by the system, and can be obtained from a live Pass by calling its getPassInfo() method. More...
#include <PassInfo.h>
Public Types | |
| typedef Pass *(* | NormalCtor_t )() |
| typedef Pass *(* | TargetMachineCtor_t )(TargetMachine *) |
Public Member Functions | |
| PassInfo (StringRef name, StringRef arg, const void *pi, NormalCtor_t normal, bool isCFGOnly, bool is_analysis, TargetMachineCtor_t machine=nullptr) | |
| PassInfo ctor - Do not call this directly, this should only be invoked through RegisterPass. More... | |
| PassInfo (StringRef name, const void *pi) | |
| PassInfo ctor - Do not call this directly, this should only be invoked through RegisterPass. More... | |
| StringRef | getPassName () const |
| getPassName - Return the friendly name for the pass, never returns null More... | |
| StringRef | getPassArgument () const |
| getPassArgument - Return the command line option that may be passed to 'opt' that will cause this pass to be run. More... | |
| const void * | getTypeInfo () const |
| getTypeInfo - Return the id object for the pass... More... | |
| bool | isPassID (const void *IDPtr) const |
| Return true if this PassID implements the specified ID pointer. More... | |
| bool | isAnalysisGroup () const |
| isAnalysisGroup - Return true if this is an analysis group, not a normal pass. More... | |
| bool | isAnalysis () const |
| bool | isCFGOnlyPass () const |
| isCFGOnlyPass - return true if this pass only looks at the CFG for the function. More... | |
| NormalCtor_t | getNormalCtor () const |
| getNormalCtor - Return a pointer to a function, that when called, creates an instance of the pass and returns it. More... | |
| void | setNormalCtor (NormalCtor_t Ctor) |
| TargetMachineCtor_t | getTargetMachineCtor () const |
| getTargetMachineCtor - Return a pointer to a function, that when called with a TargetMachine, creates an instance of the pass and returns it. More... | |
| void | setTargetMachineCtor (TargetMachineCtor_t Ctor) |
| Pass * | createPass () const |
| createPass() - Use this method to create an instance of this pass. More... | |
| void | addInterfaceImplemented (const PassInfo *ItfPI) |
| addInterfaceImplemented - This method is called when this pass is registered as a member of an analysis group with the RegisterAnalysisGroup template. More... | |
| const std::vector< const PassInfo * > & | getInterfacesImplemented () const |
| getInterfacesImplemented - Return a list of all of the analysis group interfaces implemented by this pass. More... | |
PassInfo class - An instance of this class exists for every pass known by the system, and can be obtained from a live Pass by calling its getPassInfo() method.
These objects are set up by the RegisterPass<> template.
Definition at line 32 of file PassInfo.h.
| typedef Pass*(* llvm::PassInfo::NormalCtor_t)() |
Definition at line 34 of file PassInfo.h.
| typedef Pass*(* llvm::PassInfo::TargetMachineCtor_t)(TargetMachine *) |
Definition at line 35 of file PassInfo.h.
|
inline |
PassInfo ctor - Do not call this directly, this should only be invoked through RegisterPass.
Definition at line 52 of file PassInfo.h.
PassInfo ctor - Do not call this directly, this should only be invoked through RegisterPass.
This version is for use by analysis groups; it does not auto-register the pass.
Definition at line 61 of file PassInfo.h.
addInterfaceImplemented - This method is called when this pass is registered as a member of an analysis group with the RegisterAnalysisGroup template.
Definition at line 127 of file PassInfo.h.
Referenced by llvm::PassRegistry::registerAnalysisGroup().
|
inline |
createPass() - Use this method to create an instance of this pass.
Definition at line 115 of file PassInfo.h.
References assert(), and isAnalysisGroup().
Referenced by llvm::PMDataManager::add(), llvm::Pass::createPass(), and llvm::PMTopLevelManager::schedulePass().
getInterfacesImplemented - Return a list of all of the analysis group interfaces implemented by this pass.
Definition at line 134 of file PassInfo.h.
Referenced by llvm::PMTopLevelManager::addImmutablePass(), and llvm::PMDataManager::recordAvailableAnalysis().
|
inline |
getNormalCtor - Return a pointer to a function, that when called, creates an instance of the pass and returns it.
This pointer may be null if there is no default constructor for the pass.
Definition at line 97 of file PassInfo.h.
Referenced by llvm::PassNameParser::ignorablePass(), and llvm::PassRegistry::registerAnalysisGroup().
|
inline |
getPassArgument - Return the command line option that may be passed to 'opt' that will cause this pass to be run.
This will return null if there is no argument.
Definition at line 74 of file PassInfo.h.
Referenced by llvm::PassNameParser::ignorablePass(), llvm::PassArgFilter< Args >::operator()(), llvm::PassNameParser::passRegistered(), llvm::PassRegistry::registerPass(), and ShouldPrintBeforeOrAfterPass().
|
inline |
getPassName - Return the friendly name for the pass, never returns null
Definition at line 68 of file PassInfo.h.
Referenced by llvm::Pass::getPassName(), and llvm::PassNameParser::passRegistered().
|
inline |
getTargetMachineCtor - Return a pointer to a function, that when called with a TargetMachine, creates an instance of the pass and returns it.
This pointer may be null if there is no constructor with a TargetMachine for the pass.
Definition at line 109 of file PassInfo.h.
Referenced by llvm::PassRegistry::registerAnalysisGroup().
|
inline |
getTypeInfo - Return the id object for the pass...
TODO : Rename
Definition at line 78 of file PassInfo.h.
Referenced by llvm::TargetPassConfig::addMachinePasses(), llvm::AnalysisUsage::addPreserved(), and llvm::PassRegistry::registerPass().
|
inline |
Definition at line 87 of file PassInfo.h.
Referenced by llvm::PMTopLevelManager::schedulePass().
|
inline |
isAnalysisGroup - Return true if this is an analysis group, not a normal pass.
Definition at line 86 of file PassInfo.h.
Referenced by createPass(), and llvm::PassRegistry::registerAnalysisGroup().
|
inline |
isCFGOnlyPass - return true if this pass only looks at the CFG for the function.
Definition at line 91 of file PassInfo.h.
Return true if this PassID implements the specified ID pointer.
Definition at line 81 of file PassInfo.h.
|
inline |
Definition at line 100 of file PassInfo.h.
Referenced by llvm::PassRegistry::registerAnalysisGroup().
|
inline |
Definition at line 110 of file PassInfo.h.
Referenced by llvm::PassRegistry::registerAnalysisGroup().
1.8.6