LLVM API Documentation
#include <GenericDomTree.h>
Public Types | |
typedef std::vector < DomTreeNodeBase< NodeT > * >::iterator | iterator |
typedef std::vector < DomTreeNodeBase< NodeT > * >::const_iterator | const_iterator |
Public Member Functions | |
iterator | begin () |
iterator | end () |
const_iterator | begin () const |
const_iterator | end () const |
NodeT * | getBlock () const |
DomTreeNodeBase< NodeT > * | getIDom () const |
const std::vector < DomTreeNodeBase< NodeT > * > & | getChildren () const |
DomTreeNodeBase (NodeT *BB, DomTreeNodeBase< NodeT > *iDom) | |
DomTreeNodeBase< NodeT > * | addChild (DomTreeNodeBase< NodeT > *C) |
size_t | getNumChildren () const |
void | clearAllChildren () |
bool | compare (const DomTreeNodeBase< NodeT > *Other) const |
void | setIDom (DomTreeNodeBase< NodeT > *NewIDom) |
unsigned | getDFSNumIn () const |
unsigned | getDFSNumOut () const |
Friends | |
class | DominatorTreeBase |
struct | PostDominatorTree |
Definition at line 63 of file GenericDomTree.h.
typedef std::vector<DomTreeNodeBase<NodeT> *>::const_iterator llvm::DomTreeNodeBase< NodeT >::const_iterator |
Definition at line 74 of file GenericDomTree.h.
typedef std::vector<DomTreeNodeBase<NodeT> *>::iterator llvm::DomTreeNodeBase< NodeT >::iterator |
Definition at line 72 of file GenericDomTree.h.
llvm::DomTreeNodeBase< NodeT >::DomTreeNodeBase | ( | NodeT * | BB, |
DomTreeNodeBase< NodeT > * | iDom | ||
) | [inline] |
Definition at line 87 of file GenericDomTree.h.
DomTreeNodeBase<NodeT>* llvm::DomTreeNodeBase< NodeT >::addChild | ( | DomTreeNodeBase< NodeT > * | C | ) | [inline] |
Definition at line 90 of file GenericDomTree.h.
Referenced by llvm::DominatorTreeBase< MachineBasicBlock >::addNewBlock(), llvm::Calculate(), and llvm::DominatorTreeBase< MachineBasicBlock >::getNodeForBlock().
iterator llvm::DomTreeNodeBase< NodeT >::begin | ( | ) | [inline] |
Definition at line 76 of file GenericDomTree.h.
Referenced by llvm::ForwardDominanceFrontierBase< BlockT >::calculate(), llvm::GraphTraits< DomTreeNode * >::child_begin(), llvm::GraphTraits< MachineDomTreeNode * >::child_begin(), llvm::DomTreeNodeBase< MachineBasicBlock >::compare(), llvm::DominatorTreeBase< MachineBasicBlock >::getDescendants(), and llvm::DominatorTreeBase< MachineBasicBlock >::updateDFSNumbers().
const_iterator llvm::DomTreeNodeBase< NodeT >::begin | ( | ) | const [inline] |
Definition at line 78 of file GenericDomTree.h.
void llvm::DomTreeNodeBase< NodeT >::clearAllChildren | ( | ) | [inline] |
Definition at line 99 of file GenericDomTree.h.
bool llvm::DomTreeNodeBase< NodeT >::compare | ( | const DomTreeNodeBase< NodeT > * | Other | ) | const [inline] |
Definition at line 103 of file GenericDomTree.h.
Referenced by llvm::DominatorTreeBase< MachineBasicBlock >::compare().
iterator llvm::DomTreeNodeBase< NodeT >::end | ( | ) | [inline] |
Definition at line 77 of file GenericDomTree.h.
Referenced by llvm::ForwardDominanceFrontierBase< BlockT >::calculate(), llvm::GraphTraits< DomTreeNode * >::child_end(), llvm::GraphTraits< MachineDomTreeNode * >::child_end(), llvm::DomTreeNodeBase< MachineBasicBlock >::compare(), llvm::DominatorTreeBase< MachineBasicBlock >::getDescendants(), and llvm::DominatorTreeBase< MachineBasicBlock >::updateDFSNumbers().
const_iterator llvm::DomTreeNodeBase< NodeT >::end | ( | ) | const [inline] |
Definition at line 79 of file GenericDomTree.h.
NodeT* llvm::DomTreeNodeBase< NodeT >::getBlock | ( | ) | const [inline] |
Definition at line 81 of file GenericDomTree.h.
Referenced by llvm::LoopInfoBase< BlockT, LoopT >::Analyze(), llvm::ForwardDominanceFrontierBase< BlockT >::calculate(), llvm::DominatorTree::compare(), llvm::DominatorTreeBase< MachineBasicBlock >::findNearestCommonDominator(), llvm::DominatorTreeBase< MachineBasicBlock >::getDescendants(), llvm::DOTGraphTraits< DomTreeNode * >::getNodeLabel(), llvm::MergeBasicBlockIntoOnlyPred(), and llvm::operator<<().
const std::vector<DomTreeNodeBase<NodeT>*>& llvm::DomTreeNodeBase< NodeT >::getChildren | ( | ) | const [inline] |
Definition at line 83 of file GenericDomTree.h.
Referenced by llvm::DominatorTreeBase< MachineBasicBlock >::eraseNode(), and simplifyOneLoop().
unsigned llvm::DomTreeNodeBase< NodeT >::getDFSNumIn | ( | ) | const [inline] |
getDFSNumIn/getDFSNumOut - These are an internal implementation detail, do not call them.
Definition at line 139 of file GenericDomTree.h.
Referenced by llvm::operator<<().
unsigned llvm::DomTreeNodeBase< NodeT >::getDFSNumOut | ( | ) | const [inline] |
Definition at line 140 of file GenericDomTree.h.
Referenced by llvm::operator<<().
DomTreeNodeBase<NodeT>* llvm::DomTreeNodeBase< NodeT >::getIDom | ( | ) | const [inline] |
Definition at line 82 of file GenericDomTree.h.
Referenced by llvm::DominatorTreeBase< MachineBasicBlock >::eraseNode(), llvm::DominatorTreeBase< MachineBasicBlock >::findNearestCommonDominator(), isSimplifiedLoopNest(), llvm::MergeBasicBlockIntoOnlyPred(), and simplifyOneLoop().
size_t llvm::DomTreeNodeBase< NodeT >::getNumChildren | ( | ) | const [inline] |
Definition at line 95 of file GenericDomTree.h.
Referenced by llvm::DomTreeNodeBase< MachineBasicBlock >::compare().
void llvm::DomTreeNodeBase< NodeT >::setIDom | ( | DomTreeNodeBase< NodeT > * | NewIDom | ) | [inline] |
Definition at line 121 of file GenericDomTree.h.
Referenced by llvm::DominatorTreeBase< MachineBasicBlock >::changeImmediateDominator().
friend class DominatorTreeBase [friend] |
Definition at line 69 of file GenericDomTree.h.
friend struct PostDominatorTree [friend] |
Definition at line 70 of file GenericDomTree.h.