14 #ifndef LLVM_PASSINFO_H 15 #define LLVM_PASSINFO_H 39 const bool IsCFGOnlyPass =
false;
40 const bool IsAnalysis;
41 const bool IsAnalysisGroup;
42 std::vector<const PassInfo *> ItfImpl;
49 bool isCFGOnly,
bool is_analysis)
50 : PassName(name), PassArgument(arg), PassID(pi), IsCFGOnlyPass(isCFGOnly),
51 IsAnalysis(is_analysis), IsAnalysisGroup(
false), NormalCtor(normal) {}
57 : PassName(name), PassID(pi), IsAnalysis(
false), IsAnalysisGroup(
true) {}
75 bool isPassID(
const void *IDPtr)
const {
return PassID == IDPtr; }
99 "No default implementation found for analysis group!");
101 "Cannot call createPass on PassInfo without default ctor!");
109 ItfImpl.push_back(ItfPI);
121 #endif // LLVM_PASSINFO_H Pass interface - Implemented by all 'passes'.
void setNormalCtor(NormalCtor_t Ctor)
This class represents lattice values for constants.
block Block Frequency true
void addInterfaceImplemented(const PassInfo *ItfPI)
addInterfaceImplemented - This method is called when this pass is registered as a member of an analys...
NormalCtor_t getNormalCtor() const
getNormalCtor - Return a pointer to a function, that when called, creates an instance of the pass and...
const void * getTypeInfo() const
getTypeInfo - Return the id object for the pass...
PassInfo(StringRef name, StringRef arg, const void *pi, NormalCtor_t normal, bool isCFGOnly, bool is_analysis)
PassInfo ctor - Do not call this directly, this should only be invoked through RegisterPass.
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.
print lazy value Lazy Value Info Printer Pass
PassInfo & operator=(const PassInfo &)=delete
Pass * createPass() const
createPass() - Use this method to create an instance of this pass.
bool isAnalysisGroup() const
isAnalysisGroup - Return true if this is an analysis group, not a normal pass.
StringRef getPassName() const
getPassName - Return the friendly name for the pass, never returns null
bool isPassID(const void *IDPtr) const
Return true if this PassID implements the specified ID pointer.
bool isCFGOnlyPass() const
isCFGOnlyPass - return true if this pass only looks at the CFG for the function.
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
PassInfo(StringRef name, const void *pi)
PassInfo ctor - Do not call this directly, this should only be invoked through RegisterPass.
const std::vector< const PassInfo * > & getInterfacesImplemented() const
getInterfacesImplemented - Return a list of all of the analysis group interfaces implemented by this ...
StringRef getPassArgument() const
getPassArgument - Return the command line option that may be passed to 'opt' that will cause this pas...
StringRef - Represent a constant reference to a string, i.e.