Searched refs:DomTreeNode (Results 1 - 24 of 24) sorted by relevance

/external/llvm/include/llvm/Analysis/
H A DPostDominators.h45 inline DomTreeNode *getRootNode() const {
49 inline DomTreeNode *operator[](BasicBlock *BB) const {
53 inline DomTreeNode *getNode(BasicBlock *BB) const {
57 inline bool dominates(DomTreeNode* A, DomTreeNode* B) const {
65 inline bool properlyDominates(const DomTreeNode* A, DomTreeNode* B) const {
98 : public GraphTraits<DomTreeNode*> {
H A DRegionInfo.h85 typedef DomTreeNode DomTreeNodeT;
/external/llvm/lib/Analysis/
H A DDomPrinter.cpp29 struct DOTGraphTraits<DomTreeNode*> : public DefaultDOTGraphTraits {
34 std::string getNodeLabel(DomTreeNode *Node, DomTreeNode *Graph) {
52 struct DOTGraphTraits<DominatorTree*> : public DOTGraphTraits<DomTreeNode*> {
55 : DOTGraphTraits<DomTreeNode*>(isSimple) {}
61 std::string getNodeLabel(DomTreeNode *Node, DominatorTree *G) {
62 return DOTGraphTraits<DomTreeNode*>::getNodeLabel(Node, G->getRootNode());
68 : public DOTGraphTraits<DomTreeNode*> {
71 : DOTGraphTraits<DomTreeNode*>(isSimple) {}
77 std::string getNodeLabel(DomTreeNode *Nod
[all...]
H A DDivergenceAnalysis.cpp227 DomTreeNode *IDomNode = DT.getNode(InfluencedBB)->getIDom();
H A DIVUsers.cpp90 for (DomTreeNode *Rung = DT->getNode(BB);
H A DScalarEvolution.cpp6726 for (DomTreeNode *DTN = (*DT)[Latch], *HeaderDTN = (*DT)[L->getHeader()];
/external/clang/include/clang/Analysis/Analyses/
H A DDominators.h33 typedef llvm::DomTreeNodeBase<CFGBlock> DomTreeNode; typedef in namespace:clang
57 /// \brief This method returns the root DomTreeNode, which is the wrapper
59 inline DomTreeNode *getRootNode() const {
68 DomTreeNode *R = getRootNode();
69 DomTreeNode *OtherR = Other.getRootNode();
169 template <> struct GraphTraits< ::clang::DomTreeNode* > {
170 typedef ::clang::DomTreeNode NodeType;
183 typedef df_iterator< ::clang::DomTreeNode* > nodes_iterator;
185 static nodes_iterator nodes_begin(::clang::DomTreeNode *N) {
189 static nodes_iterator nodes_end(::clang::DomTreeNode *
[all...]
/external/llvm/include/llvm/IR/
H A DDominators.h52 typedef DomTreeNodeBase<BasicBlock> DomTreeNode; typedef in namespace:llvm
87 const DomTreeNode *R = getRootNode();
88 const DomTreeNode *OtherR = Other.getRootNode();
129 template <> struct GraphTraits<DomTreeNode*> {
130 typedef DomTreeNode NodeType;
143 typedef df_iterator<DomTreeNode*> nodes_iterator;
145 static nodes_iterator nodes_begin(DomTreeNode *N) {
149 static nodes_iterator nodes_end(DomTreeNode *N) {
155 : public GraphTraits<DomTreeNode*> {
/external/llvm/include/llvm/Transforms/Utils/
H A DLoopUtils.h87 /// iteration. Takes DomTreeNode, AliasAnalysis, LoopInfo, DominatorTree,
91 bool sinkRegion(DomTreeNode *, AliasAnalysis *, LoopInfo *, DominatorTree *,
99 /// Takes DomTreeNode, AliasAnalysis, LoopInfo, DominatorTree, DataLayout,
102 bool hoistRegion(DomTreeNode *, AliasAnalysis *, LoopInfo *, DominatorTree *,
/external/llvm/lib/Transforms/Scalar/
H A DEarlyCSE.cpp345 CallHTType &AvailableCalls, unsigned cg, DomTreeNode *n,
346 DomTreeNode::iterator child, DomTreeNode::iterator end)
355 DomTreeNode *node() { return Node; }
356 DomTreeNode::iterator childIter() { return ChildIter; }
357 DomTreeNode *nextChild() {
358 DomTreeNode *child = *ChildIter;
362 DomTreeNode::iterator end() { return EndIter; }
373 DomTreeNode *Node;
374 DomTreeNode
[all...]
H A DLoopRotation.cpp507 DomTreeNode *OrigHeaderNode = DT->getNode(OrigHeader);
508 SmallVector<DomTreeNode *, 8> HeaderChildren(OrigHeaderNode->begin(),
510 DomTreeNode *OrigPreheaderNode = DT->getNode(OrigPreheader);
568 DomTreeNode *OrigHeaderNode = DT->getNode(OrigHeader);
569 SmallVector<DomTreeNode *, 8> HeaderChildren(OrigHeaderNode->begin(),
575 DomTreeNode *Node = HeaderChildren[I];
H A DLoopDeletion.cpp210 SmallVector<DomTreeNode*, 8> ChildNodes;
216 for (SmallVectorImpl<DomTreeNode *>::iterator DI = ChildNodes.begin(),
H A DSink.cpp247 DomTreeNode *DTN = DT->getNode(Inst->getParent());
248 for (DomTreeNode::iterator I = DTN->begin(), E = DTN->end();
H A DLICM.cpp291 bool llvm::sinkRegion(DomTreeNode *N, AliasAnalysis *AA, LoopInfo *LI,
308 const std::vector<DomTreeNode*> &Children = N->getChildren();
349 bool llvm::hoistRegion(DomTreeNode *N, AliasAnalysis *AA, LoopInfo *LI,
390 const std::vector<DomTreeNode*> &Children = N->getChildren();
H A DStructurizeCFG.cpp45 typedef DenseMap<DomTreeNode *, unsigned> DTN2UnsignedMap;
77 DomTreeNode *Node = DT->getNode(BB);
H A DLoopStrengthReduce.cpp2769 for (DomTreeNode *Rung = DT.getNode(L->getLoopLatch());
4409 for (DomTreeNode *Rung = DT.getNode(IP->getParent()); ; ) {
4895 for (DomTreeNode *Rung = DT.getNode(L->getLoopPreheader());
/external/llvm/lib/Transforms/Utils/
H A DBreakCriticalEdges.cpp232 DomTreeNode *TINode = DT->getNode(TIBB);
238 DomTreeNode *NewBBNode = DT->addNewBlock(NewBB, TIBB);
239 DomTreeNode *DestBBNode = nullptr;
245 if (DomTreeNode *OPNode = DT->getNode(OtherPreds.back()))
H A DPromoteMemoryToRegister.cpp279 DenseMap<DomTreeNode *, unsigned> DomLevels;
584 SmallVector<DomTreeNode *, 32> Worklist;
586 DomTreeNode *Root = DT.getRootNode();
591 DomTreeNode *Node = Worklist.pop_back_val();
593 for (DomTreeNode::iterator CI = Node->begin(), CE = Node->end();
864 typedef std::pair<DomTreeNode *, unsigned> DomTreeNodePair;
870 if (DomTreeNode *Node = DT.getNode(BB))
875 SmallVector<DomTreeNode *, 32> Worklist;
876 SmallPtrSet<DomTreeNode *, 32> VisitedPQ;
877 SmallPtrSet<DomTreeNode *, 3
[all...]
H A DBasicBlockUtils.cpp166 if (DomTreeNode *DTN = DT->getNode(BB)) {
167 DomTreeNode *PredDTN = DT->getNode(PredBB);
168 SmallVector<DomTreeNode *, 8> Children(DTN->begin(), DTN->end());
169 for (SmallVectorImpl<DomTreeNode *>::iterator DI = Children.begin(),
295 if (DomTreeNode *OldNode = DT->getNode(Old)) {
296 std::vector<DomTreeNode *> Children;
297 for (DomTreeNode::iterator I = OldNode->begin(), E = OldNode->end();
301 DomTreeNode *NewNode = DT->addNewBlock(New, Old);
302 for (std::vector<DomTreeNode *>::iterator I = Children.begin(),
721 if (DomTreeNode *OldNod
[all...]
H A DLCSSA.cpp94 DomTreeNode *DomNode = DT.getNode(DomBB);
207 DomTreeNode *DomNode = DT.getNode(BB);
H A DCodeExtractor.cpp273 DomTreeNode *OldNode = DT->getNode(*I);
274 SmallVector<DomTreeNode*, 8> Children;
275 for (DomTreeNode::iterator DI = OldNode->begin(), DE = OldNode->end();
279 DomTreeNode *NewNode = DT->addNewBlock(New, *I);
281 for (SmallVectorImpl<DomTreeNode *>::iterator I = Children.begin(),
H A DLoopSimplify.cpp703 DomTreeNode *Node = DT->getNode(ExitingBlock);
707 DomTreeNode *Child = Children.front();
/external/llvm/lib/Transforms/Instrumentation/
H A DDataFlowSanitizer.cpp1109 if (DomTreeNode *OldNode = DT.getNode(Head)) {
1110 std::vector<DomTreeNode *> Children(OldNode->begin(), OldNode->end());
1112 DomTreeNode *NewNode = DT.addNewBlock(Tail, Head);
/external/llvm/lib/Transforms/Vectorize/
H A DSLPVectorizer.cpp2615 SmallVector<const DomTreeNode *, 8> CSEWorkList;
2618 if (DomTreeNode *N = DT->getNode(BB)) {
2626 [this](const DomTreeNode *A, const DomTreeNode *B) {

Completed in 374 milliseconds