23 "Dominance Frontier Construction",
true,
true)
28 DominanceFrontier::DominanceFrontier()
40 Base.analyze(getAnalysis<DominatorTreeWrapperPass>().getDomTree());
53 #if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
static PassRegistry * getPassRegistry()
getPassRegistry - Access the global registry object, which is automatically initialized at applicatio...
INITIALIZE_PASS_BEGIN(DominanceFrontier,"domfrontier","Dominance Frontier Construction", true, true) INITIALIZE_PASS_END(DominanceFrontier
A Module instance is used to store all the information related to an LLVM module. ...
DominanceFrontierBase - Common base class for computing forward and inverse dominance frontiers for a...
AnalysisUsage & addRequired()
#define INITIALIZE_PASS_DEPENDENCY(depName)
#define INITIALIZE_PASS_END(passName, arg, name, cfg, analysis)
void print(raw_ostream &OS, const Module *=nullptr) const override
print - Print out the internal state of the pass.
Dominance Frontier Construction
void releaseMemory() override
releaseMemory() - This member can be implemented by a pass if it wants to be able to release its memo...
Represent the analysis usage information of a pass.
FunctionPass class - This class is used to implement most global optimizations.
void getAnalysisUsage(AnalysisUsage &AU) const override
getAnalysisUsage - This function should be overriden by passes that need analysis information to do t...
raw_ostream & dbgs()
dbgs() - This returns a reference to a raw_ostream for debugging messages.
void initializeDominanceFrontierPass(PassRegistry &)
void setPreservesAll()
Set by analyses that do not transform their input at all.
bool runOnFunction(Function &) override
runOnFunction - Virtual method overriden by subclasses to do the per-function processing of the pass...
This class implements an extremely fast bulk output stream that can only output to a stream...
Legacy analysis pass which computes a DominatorTree.
DominanceFrontier Class - Concrete subclass of DominanceFrontierBase that is used to compute a forwar...