LLVM API Documentation
#include <PassSupport.h>

Public Types | |
| typedef Pass *(* | NormalCtor_t )() |
Public Member Functions | |
| PassInfo (const char *name, const char *arg, const void *pi, NormalCtor_t normal, bool isCFGOnly, bool is_analysis) | |
| PassInfo (const char *name, const void *pi) | |
| const char * | getPassName () const |
| const char * | getPassArgument () const |
| const void * | getTypeInfo () const |
| bool | isPassID (const void *IDPtr) const |
| Return true if this PassID implements the specified ID pointer. | |
| bool | isAnalysisGroup () const |
| bool | isAnalysis () const |
| bool | isCFGOnlyPass () const |
| NormalCtor_t | getNormalCtor () const |
| void | setNormalCtor (NormalCtor_t Ctor) |
| Pass * | createPass () const |
| createPass() - Use this method to create an instance of this pass. | |
| void | addInterfaceImplemented (const PassInfo *ItfPI) |
| const std::vector< const PassInfo * > & | getInterfacesImplemented () const |
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, defined below.
Definition at line 39 of file PassSupport.h.
| typedef Pass*(* llvm::PassInfo::NormalCtor_t)() |
Definition at line 41 of file PassSupport.h.
| llvm::PassInfo::PassInfo | ( | const char * | name, |
| const char * | arg, | ||
| const void * | pi, | ||
| NormalCtor_t | normal, | ||
| bool | isCFGOnly, | ||
| bool | is_analysis | ||
| ) | [inline] |
PassInfo ctor - Do not call this directly, this should only be invoked through RegisterPass.
Definition at line 57 of file PassSupport.h.
| llvm::PassInfo::PassInfo | ( | const char * | name, |
| const void * | pi | ||
| ) | [inline] |
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 65 of file PassSupport.h.
| void llvm::PassInfo::addInterfaceImplemented | ( | const PassInfo * | ItfPI | ) | [inline] |
addInterfaceImplemented - This method is called when this pass is registered as a member of an analysis group with the RegisterAnalysisGroup template.
Definition at line 117 of file PassSupport.h.
Referenced by llvm::PassRegistry::registerAnalysisGroup().
| Pass * PassInfo::createPass | ( | ) | const |
createPass() - Use this method to create an instance of this pass.
Definition at line 178 of file Pass.cpp.
References isAnalysisGroup().
Referenced by llvm::PMDataManager::add(), llvm::Pass::createPass(), and llvm::PMTopLevelManager::schedulePass().
| const std::vector<const PassInfo*>& llvm::PassInfo::getInterfacesImplemented | ( | ) | const [inline] |
getInterfacesImplemented - Return a list of all of the analysis group interfaces implemented by this pass.
Definition at line 124 of file PassSupport.h.
Referenced by llvm::PMTopLevelManager::findAnalysisPass(), and llvm::PMDataManager::recordAvailableAnalysis().
| NormalCtor_t llvm::PassInfo::getNormalCtor | ( | ) | const [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 103 of file PassSupport.h.
Referenced by llvm::PassNameParser::ignorablePass(), and llvm::PassRegistry::registerAnalysisGroup().
| const char* llvm::PassInfo::getPassArgument | ( | ) | const [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 78 of file PassSupport.h.
Referenced by llvm::PassNameParser::ignorablePass(), llvm::PassArgFilter< Args >::operator()(), llvm::PassNameParser::passRegistered(), llvm::PassRegistry::registerPass(), llvm::ShouldPrintBeforeOrAfterPass(), and llvm::PassRegistry::unregisterPass().
| const char* llvm::PassInfo::getPassName | ( | ) | const [inline] |
getPassName - Return the friendly name for the pass, never returns null
Definition at line 72 of file PassSupport.h.
Referenced by llvm::Pass::getPassName(), and llvm::PassNameParser::passRegistered().
| const void* llvm::PassInfo::getTypeInfo | ( | ) | const [inline] |
getTypeInfo - Return the id object for the pass... TODO : Rename
Definition at line 82 of file PassSupport.h.
Referenced by llvm::TargetPassConfig::addMachinePasses(), llvm::AnalysisUsage::addPreserved(), llvm::PassRegistry::registerPass(), and llvm::PassRegistry::unregisterPass().
| bool llvm::PassInfo::isAnalysis | ( | ) | const [inline] |
Definition at line 93 of file PassSupport.h.
Referenced by llvm::PMTopLevelManager::schedulePass().
| bool llvm::PassInfo::isAnalysisGroup | ( | ) | const [inline] |
isAnalysisGroup - Return true if this is an analysis group, not a normal pass.
Definition at line 92 of file PassSupport.h.
Referenced by createPass(), and llvm::PassRegistry::registerAnalysisGroup().
| bool llvm::PassInfo::isCFGOnlyPass | ( | ) | const [inline] |
isCFGOnlyPass - return true if this pass only looks at the CFG for the function.
Definition at line 97 of file PassSupport.h.
| bool llvm::PassInfo::isPassID | ( | const void * | IDPtr | ) | const [inline] |
Return true if this PassID implements the specified ID pointer.
Definition at line 85 of file PassSupport.h.
| void llvm::PassInfo::setNormalCtor | ( | NormalCtor_t | Ctor | ) | [inline] |
Definition at line 106 of file PassSupport.h.
Referenced by llvm::PassRegistry::registerAnalysisGroup().