LLVM API Documentation
#include <DominanceFrontier.h>


Public Member Functions | |
| DominanceFrontier () | |
| BasicBlock * | getRoot () const |
| virtual bool | runOnFunction (Function &) |
| virtual void | getAnalysisUsage (AnalysisUsage &AU) const |
| const DomSetType & | calculate (const DominatorTree &DT, const DomTreeNode *Node) |
Static Public Attributes | |
| static char | ID = 0 |
DominanceFrontier Class - Concrete subclass of DominanceFrontierBase that is used to compute a forward dominator frontiers.
Definition at line 156 of file DominanceFrontier.h.
| llvm::DominanceFrontier::DominanceFrontier | ( | ) | [inline] |
Definition at line 160 of file DominanceFrontier.h.
References llvm::PassRegistry::getPassRegistry(), and llvm::initializeDominanceFrontierPass().
| const DominanceFrontier::DomSetType & DominanceFrontier::calculate | ( | const DominatorTree & | DT, |
| const DomTreeNode * | Node | ||
| ) |
Definition at line 41 of file DominanceFrontier.cpp.
References llvm::DomTreeNodeBase< NodeT >::begin(), llvm::SmallPtrSet< PtrType, SmallSize >::count(), llvm::DomTreeNodeBase< NodeT >::end(), llvm::DominanceFrontierBase::Frontiers, llvm::DomTreeNodeBase< NodeT >::getBlock(), llvm::SmallPtrSet< PtrType, SmallSize >::insert(), llvm::A64CC::NE, llvm::DominatorTree::properlyDominates(), llvm::succ_begin(), and llvm::succ_end().
Referenced by runOnFunction().
| virtual void llvm::DominanceFrontier::getAnalysisUsage | ( | AnalysisUsage & | ) | const [inline, virtual] |
getAnalysisUsage - This function should be overriden by passes that need analysis information to do their job. If a pass specifies that it uses a particular analysis result to this function, it can then use the getAnalysis<AnalysisType>() function, below.
Reimplemented from llvm::Pass.
Definition at line 179 of file DominanceFrontier.h.
References llvm::AnalysisUsage::addRequired(), and llvm::AnalysisUsage::setPreservesAll().
| BasicBlock* llvm::DominanceFrontier::getRoot | ( | ) | const [inline] |
Definition at line 165 of file DominanceFrontier.h.
References llvm::DominanceFrontierBase::Roots.
runOnFunction - Virtual method overriden by subclasses to do the per-function processing of the pass.
Implements llvm::FunctionPass.
Definition at line 170 of file DominanceFrontier.h.
References calculate(), llvm::DominanceFrontierBase::Frontiers, llvm::DominatorTree::getRoots(), and llvm::DominanceFrontierBase::Roots.
char DominanceFrontier::ID = 0 [static] |
Definition at line 159 of file DominanceFrontier.h.