|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/Analysis/MemorySSA.h 865 void renamePass(DomTreeNode *, MemoryAccess *IncomingVal,
include/llvm/Analysis/PostDominators.h 96 : public GraphTraits<DomTreeNode*> {
include/llvm/Analysis/RegionInfo.h 93 using DomTreeNodeT = DomTreeNode;
include/llvm/IR/Dominators.h 209 : public DomTreeGraphTraitsBase<DomTreeNode, DomTreeNode::iterator> {};
209 : public DomTreeGraphTraitsBase<DomTreeNode, DomTreeNode::iterator> {};
213 : public DomTreeGraphTraitsBase<const DomTreeNode,
214 DomTreeNode::const_iterator> {};
217 : public GraphTraits<DomTreeNode*> {
include/llvm/Transforms/Utils/LoopUtils.h 120 bool sinkRegion(DomTreeNode *, AliasAnalysis *, LoopInfo *, DominatorTree *,
133 bool hoistRegion(DomTreeNode *, AliasAnalysis *, LoopInfo *, DominatorTree *,
169 SmallVector<DomTreeNode *, 16> collectChildrenInLoop(DomTreeNode *N,
169 SmallVector<DomTreeNode *, 16> collectChildrenInLoop(DomTreeNode *N,
lib/Analysis/DomPrinter.cpp 33 std::string getNodeLabel(DomTreeNode *Node, DomTreeNode *Graph) {
33 std::string getNodeLabel(DomTreeNode *Node, DomTreeNode *Graph) {
51 struct DOTGraphTraits<DominatorTree*> : public DOTGraphTraits<DomTreeNode*> {
60 std::string getNodeLabel(DomTreeNode *Node, DominatorTree *G) {
67 : public DOTGraphTraits<DomTreeNode*> {
76 std::string getNodeLabel(DomTreeNode *Node, PostDominatorTree *G ) {
lib/Analysis/IVUsers.cpp 98 for (DomTreeNode *Rung = DT->getNode(BB);
lib/Analysis/LegacyDivergenceAnalysis.cpp 162 DomTreeNode *ThisNode = PDT.getNode(ThisBB);
208 DomTreeNode *IDomNode = DT.getNode(InfluencedBB)->getIDom();
lib/Analysis/MemorySSA.cpp 530 DomTreeNode *Node = DT.getNode(BB);
970 DomTreeNode *DTN;
971 DomTreeNode::const_iterator ChildIt;
974 RenamePassData(DomTreeNode *D, DomTreeNode::const_iterator It,
974 RenamePassData(DomTreeNode *D, DomTreeNode::const_iterator It,
1137 void MemorySSA::renamePass(DomTreeNode *Root, MemoryAccess *IncomingVal,
1155 DomTreeNode *Node = WorkStack.back().DTN;
1156 DomTreeNode::const_iterator ChildIt = WorkStack.back().ChildIt;
1162 DomTreeNode *Child = *ChildIt;
lib/Analysis/OrderedInstructions.cpp 47 DomTreeNode *DA = DT->getNode(InstA->getParent());
48 DomTreeNode *DB = DT->getNode(InstB->getParent());
lib/Analysis/ScalarEvolution.cpp 9523 for (DomTreeNode *DTN = DT[Latch], *HeaderDTN = DT[L->getHeader()];
lib/IR/SafepointIRVerifier.cpp 736 DomTreeNode *DTN = DT[const_cast<BasicBlock *>(BB)];
lib/Target/Hexagon/HexagonCommonGEP.cpp 329 for (auto *DTN : children<DomTreeNode*>(DT->getNode(Root)))
810 DomTreeNode *N = (*DT)[DomB]->getIDom();
870 DomTreeNode *DN = DT->getNode(L->getHeader());
1250 for (auto DTN : children<DomTreeNode*>(DT->getNode(B)))
lib/Target/Hexagon/HexagonGenExtract.cpp 223 for (auto *DTN : children<DomTreeNode*>(DT->getNode(B)))
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp 2241 DomTreeNode *BN = DT->getNode(ExitB);
2242 DomTreeNode *DN = DT->getNode(ExitD);
lib/Transforms/Instrumentation/DataFlowSanitizer.cpp 1254 if (DomTreeNode *OldNode = DT.getNode(Head)) {
1255 std::vector<DomTreeNode *> Children(OldNode->begin(), OldNode->end());
1257 DomTreeNode *NewNode = DT.addNewBlock(Tail, Head);
lib/Transforms/Scalar/ADCE.cpp 297 for (auto &PDTChild : children<DomTreeNode *>(PDT.getRootNode())) {
lib/Transforms/Scalar/EarlyCSE.cpp 577 DomTreeNode *node() { return Node; }
578 DomTreeNode::iterator childIter() { return ChildIter; }
580 DomTreeNode *nextChild() {
581 DomTreeNode *child = *ChildIter;
586 DomTreeNode::iterator end() { return EndIter; }
593 DomTreeNode *Node;
594 DomTreeNode::iterator ChildIter;
595 DomTreeNode::iterator EndIter;
696 bool processNode(DomTreeNode *Node);
863 bool EarlyCSE::processNode(DomTreeNode *Node) {
1300 DomTreeNode *child = NodeToProcess->nextChild();
lib/Transforms/Scalar/GuardWidening.cpp 133 DomTreeNode *Root;
149 Instruction *Instr, const df_iterator<DomTreeNode *> &DFSI,
291 DomTreeNode *Root,
363 Instruction *Instr, const df_iterator<DomTreeNode *> &DFSI,
lib/Transforms/Scalar/LICM.cpp 494 bool llvm::sinkRegion(DomTreeNode *N, AliasAnalysis *AA, LoopInfo *LI,
512 SmallVector<DomTreeNode *, 16> Worklist = collectChildrenInLoop(N, CurLoop);
515 for (DomTreeNode *DTN : reverse(Worklist)) {
767 DomTreeNode *PreheaderNode = DT->getNode(HoistCommonSucc);
768 DomTreeNode *HeaderNode = DT->getNode(CurLoop->getHeader());
795 bool llvm::hoistRegion(DomTreeNode *N, AliasAnalysis *AA, LoopInfo *LI,
lib/Transforms/Scalar/LoopStrengthReduce.cpp 3043 for (DomTreeNode *Rung = DT.getNode(L->getLoopLatch());
5040 for (DomTreeNode *Rung = DT.getNode(IP->getParent()); ; ) {
5539 for (DomTreeNode *Rung = DT.getNode(L->getLoopPreheader());
lib/Transforms/Scalar/NewGVN.cpp 511 DenseMap<const DomTreeNode *, unsigned> RPOOrdering;
3570 DomTreeNode *DomNode = DT->getNode(BB);
3629 DomTreeNode *DomNode = DT->getNode(IBlock);
3659 DomTreeNode *DomNode = DT->getNode(BB);
lib/Transforms/Scalar/SimpleLoopUnswitch.cpp 1879 SmallVector<DomTreeNode *, 4> DomWorklist;
1882 SmallPtrSet<DomTreeNode *, 4> Visited;
1886 DomTreeNode *N = DomWorklist.pop_back_val();
1893 for (DomTreeNode *ChildN : *N) {
2327 computeDomSubtreeCost(DomTreeNode &N,
2329 SmallDenseMap<DomTreeNode *, int, 4> &DTCostMap) {
2669 SmallDenseMap<DomTreeNode *, int, 4> DTCostMap;
lib/Transforms/Scalar/Sink.cpp 167 DomTreeNode *DTN = DT.getNode(Inst->getParent());
168 for (DomTreeNode::iterator I = DTN->begin(), E = DTN->end();
lib/Transforms/Utils/BasicBlockUtils.cpp 420 if (DomTreeNode *OldNode = DT->getNode(Old)) {
421 std::vector<DomTreeNode *> Children(OldNode->begin(), OldNode->end());
423 DomTreeNode *NewNode = DT->addNewBlock(New, Old);
424 for (DomTreeNode *I : Children)
837 if (DomTreeNode *OldNode = DT->getNode(Head)) {
838 std::vector<DomTreeNode *> Children(OldNode->begin(), OldNode->end());
840 DomTreeNode *NewNode = DT->addNewBlock(Tail, Head);
841 for (DomTreeNode *Child : Children)
lib/Transforms/Utils/CodeExtractor.cpp 752 DomTreeNode *OldNode = DT->getNode(Block);
753 SmallVector<DomTreeNode *, 8> Children(OldNode->begin(),
756 DomTreeNode *NewNode = DT->addNewBlock(New, Block);
758 for (DomTreeNode *I : Children)
lib/Transforms/Utils/LCSSA.cpp 128 DomTreeNode *DomNode = DT.getNode(DomBB);
lib/Transforms/Utils/LoopSimplify.cpp 675 DomTreeNode *Node = DT->getNode(ExitingBlock);
679 DomTreeNode *Child = Children.front();
lib/Transforms/Utils/LoopUnrollPeel.cpp 499 DomTreeNode *IDom = DT->getNode(*BB)->getIDom();
lib/Transforms/Utils/LoopUtils.cpp 487 SmallVector<DomTreeNode *, 16>
489 SmallVector<DomTreeNode *, 16> Worklist;
500 for (DomTreeNode *Child : Worklist[I]->getChildren())
lib/Transforms/Utils/PredicateInfo.cpp 179 DomTreeNode *DomASrc = DT.getNode(ASrc);
180 DomTreeNode *DomBSrc = DT.getNode(BSrc);
192 DomTreeNode *DomADest = DT.getNode(ADest);
193 DomTreeNode *DomBDest = DT.getNode(BDest);
309 DomTreeNode *DomNode = DT.getNode(IBlock);
620 DomTreeNode *DomNode = DT.getNode(PAssume->AssumeInst->getParent());
lib/Transforms/Vectorize/SLPVectorizer.cpp 4424 SmallVector<const DomTreeNode *, 8> CSEWorkList;
4427 if (DomTreeNode *N = DT->getNode(BB)) {
tools/polly/lib/CodeGen/IslNodeBuilder.cpp 604 DomTreeNode *N = DT.getNode(&F->getEntryBlock());
610 for (po_iterator<DomTreeNode *> I = po_begin(N), E = po_end(N); I != E; ++I)
unittests/Transforms/Scalar/LoopPassManagerTest.cpp 1390 SmallVector<DomTreeNode *, 4> ChildNodes(AR.DT[LoopBB]->begin(),
1392 for (DomTreeNode *ChildNode : ChildNodes)