39 return "Post dominance root node";
58 return "Dominator tree";
74 return "Post dominator tree";
84 struct DominatorTreeWrapperPassAnalysisGraphTraits {
91 DominatorTreeWrapperPass, false, DominatorTree *,
92 DominatorTreeWrapperPassAnalysisGraphTraits> {
96 DominatorTreeWrapperPassAnalysisGraphTraits>(
103 DominatorTreeWrapperPass, true, DominatorTree *,
104 DominatorTreeWrapperPassAnalysisGraphTraits> {
108 DominatorTreeWrapperPassAnalysisGraphTraits>(
123 struct PostDomOnlyViewer
126 PostDomOnlyViewer() :
135 "View dominance tree of function",
false,
false)
137 char DomOnlyViewer::
ID = 0;
142 char PostDomViewer::ID = 0;
144 "View postdominance tree of
function", false, false)
146 char PostDomOnlyViewer::ID = 0;
148 "View postdominance tree of function "
149 "(with no function bodies)",
154 DominatorTreeWrapperPass, false, DominatorTree *,
155 DominatorTreeWrapperPassAnalysisGraphTraits> {
159 DominatorTreeWrapperPassAnalysisGraphTraits>(
166 DominatorTreeWrapperPass, true, DominatorTree *,
167 DominatorTreeWrapperPassAnalysisGraphTraits> {
171 DominatorTreeWrapperPassAnalysisGraphTraits>(
177 struct PostDomPrinter
186 struct PostDomOnlyPrinter
189 PostDomOnlyPrinter() :
200 "Print dominance tree of function to 'dot' file",
203 char DomOnlyPrinter::
ID = 0;
209 char PostDomPrinter::ID = 0;
214 char PostDomOnlyPrinter::ID = 0;
225 return new DomPrinter();
229 return new DomOnlyPrinter();
233 return new DomViewer();
237 return new DomOnlyViewer();
241 return new PostDomPrinter();
245 return new PostDomOnlyPrinter();
249 return new PostDomViewer();
253 return new PostDomOnlyViewer();
FunctionPass * createDomOnlyViewerPass()
void initializeDomViewerPass(PassRegistry &)
static PassRegistry * getPassRegistry()
getPassRegistry - Access the global registry object, which is automatically initialized at applicatio...
FunctionPass * createPostDomPrinterPass()
void Print(const Unit &U, const char *PrintAfter="")
void initializePostDomViewerPass(PassRegistry &)
void initializePostDomOnlyViewerPass(PassRegistry &)
const Function * getParent() const
Return the enclosing method, or null if none.
void initializeDomOnlyPrinterPass(PassRegistry &)
FunctionPass * createDomViewerPass()
void initializePostDomPrinterPass(PassRegistry &)
Number of individual test Apply this number of consecutive mutations to each input exit after the first new interesting input is found the minimized corpus is saved into the first input directory Number of jobs to run If Reload the main corpus periodically to get new units discovered by other processes Read the given input file
DomTreeNodeBase< NodeT > * getRootNode()
getRootNode - This returns the entry node for the CFG of the function.
DominatorTree & getDomTree()
DOTGraphTraits(bool isSimple=false)
std::string getNodeLabel(const void *, const GraphType &)
getNodeLabel - Given a node and a pointer to the top level graph, return the label to print in the no...
Base class for the actual dominator tree node.
Concrete subclass of DominatorTreeBase that is used to compute a normal dominator tree...
FunctionPass * createDomPrinterPass()
LLVM Basic Block Representation.
void initializeDomOnlyViewerPass(PassRegistry &)
INITIALIZE_PASS(DomViewer,"view-dom","View dominance tree of function", false, false) char DomOnlyViewer INITIALIZE_PASS(DomOnlyViewer,"view-dom-only","View dominance tree of function (with no function bodies)", false, false) char PostDomViewer INITIALIZE_PASS(PostDomViewer,"view-postdom","View postdominance tree of function", false, false) char PostDomOnlyViewer INITIALIZE_PASS(PostDomOnlyViewer,"view-postdom-only","View postdominance tree of function ""(with no function bodies)", false, false) namespace
std::string getNodeLabel(DomTreeNode *Node, DominatorTree *G)
DOTGraphTraits(bool isSimple=false)
FunctionPass class - This class is used to implement most global optimizations.
static std::string getGraphName(PostDominatorTree *DT)
std::string getNodeLabel(DomTreeNode *Node, DomTreeNode *Graph)
DOTGraphTraits - Template class that can be specialized to customize how graphs are converted to 'dot...
void initializePostDomOnlyPrinterPass(PassRegistry &)
DOTGraphTraits(bool isSimple=false)
FunctionPass * createDomOnlyPrinterPass()
std::string getNodeLabel(DomTreeNode *Node, PostDominatorTree *G)
FunctionPass * createPostDomViewerPass()
void initializeDomPrinterPass(PassRegistry &)
PostDominatorTree Class - Concrete subclass of DominatorTree that is used to compute the post-dominat...
DomTreeNode * getRootNode() const
FunctionPass * createPostDomOnlyViewerPass()
FunctionPass * createPostDomOnlyPrinterPass()
static std::string getGraphName(DominatorTree *DT)
DefaultDOTGraphTraits - This class provides the default implementations of all of the DOTGraphTraits ...
print Print MemDeps of function
Legacy analysis pass which computes a DominatorTree.