/llvm-project/llvm/include/llvm/Analysis/ |
H A D | DomPrinter.h | 24 struct DOTGraphTraits<DomTreeNode *> : public DefaultDOTGraphTraits { 28 std::string getNodeLabel(DomTreeNode *Node, DomTreeNode *Graph) { 44 : public DOTGraphTraits<DomTreeNode *> { 47 : DOTGraphTraits<DomTreeNode *>(isSimple) {} 53 std::string getNodeLabel(DomTreeNode *Node, DominatorTree *G) { 54 return DOTGraphTraits<DomTreeNode *>::getNodeLabel(Node, 61 : public DOTGraphTraits<DomTreeNode*> { 64 : DOTGraphTraits<DomTreeNode*>(isSimple) {} 70 std::string getNodeLabel(DomTreeNode *Nod [all...] |
H A D | PostDominators.h | 101 : public GraphTraits<DomTreeNode*> {
|
/llvm-project/clang/include/clang/Analysis/Analyses/ |
H A D | Dominators.h | 38 using DomTreeNode = llvm::DomTreeNodeBase<CFGBlock>; variable 66 DomTreeNode *getRootNode() { in getRootNode() 74 DomTreeNode *R = getRootNode(); in compare() 75 DomTreeNode *OtherR = Other.getRootNode(); in compare() 104 DomTreeNode *IDom = DT.getNode(*I)->getIDom(); in dump() 280 template <> struct GraphTraits<clang::DomTreeNode *> { 281 using NodeRef = ::clang::DomTreeNode *; 282 using ChildIteratorType = ::clang::DomTreeNode::const_iterator; 289 llvm::pointer_iterator<df_iterator<::clang::DomTreeNode *>>; 291 static nodes_iterator nodes_begin(::clang::DomTreeNode *N) { [all …]
|
/llvm-project/llvm/include/llvm/IR/ |
H A D | Dominators.h | 92 using DomTreeNode = DomTreeNodeBase<BasicBlock>; variable 256 struct GraphTraits<DomTreeNode *> 257 : public DomTreeGraphTraitsBase<DomTreeNode, DomTreeNode::const_iterator> { 261 struct GraphTraits<const DomTreeNode *> 262 : public DomTreeGraphTraitsBase<const DomTreeNode, 263 DomTreeNode::const_iterator> {}; 266 : public GraphTraits<DomTreeNode*> {
|
/llvm-project/llvm/include/llvm/Transforms/Utils/ |
H A D | LoopUtils.h | 25 using DomTreeNode = DomTreeNodeBase<BasicBlock>; 147 /// iteration. Takes DomTreeNode, AAResults, LoopInfo, DominatorTree, 153 bool sinkRegion(DomTreeNode *, AAResults *, LoopInfo *, DominatorTree *, 161 bool sinkRegionForLoopNest(DomTreeNode *, AAResults *, LoopInfo *, 171 /// Takes DomTreeNode, AAResults, LoopInfo, DominatorTree, 177 bool hoistRegion(DomTreeNode *, AAResults *, LoopInfo *, DominatorTree *, 229 collectChildrenInLoop(DominatorTree *DT, DomTreeNode *N, const Loop *CurLoop); 23 using DomTreeNode = DomTreeNodeBase<BasicBlock>; global() variable
|
/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | LoopUnroll.cpp | 225 DomTreeNode *Node; 226 DomTreeNode::const_iterator ChildIter; 227 DomTreeNode::const_iterator EndIter; 232 unsigned cg, DomTreeNode *N, DomTreeNode::const_iterator Child, 233 DomTreeNode::const_iterator End) in StackNode() 240 DomTreeNode *node() { return Node; } in childGeneration() 241 DomTreeNode::const_iterator childIter() const { return ChildIter; } in childGeneration() 243 DomTreeNode *nextChild() { in childIter() 244 DomTreeNode *Chil in childIter() [all...] |
H A D | PredicateInfo.cpp | 161 DomTreeNode *DomASrc = DT.getNode(ASrc); in comparePHIRelated() 162 DomTreeNode *DomBSrc = DT.getNode(BSrc); in comparePHIRelated() 174 DomTreeNode *DomADest = DT.getNode(ADest); in comparePHIRelated() 175 DomTreeNode *DomBDest = DT.getNode(BDest); in comparePHIRelated() 344 DomTreeNode *DomNode = DT.getNode(IBlock); in convertUsesToDFSOrdered() 628 DomTreeNode *DomNode = DT.getNode(PAssume->AssumeInst->getParent()); in renameUses()
|
H A D | CodeMoverUtils.cpp | 102 DomTreeNode *DA = DT->getNode(InstA->getParent()); in domTreeLevelBefore() 103 DomTreeNode *DB = DT->getNode(InstB->getParent()); in domTreeLevelBefore()
|
H A D | BasicBlockUtils.cpp | 239 DomTreeNode *PredNode = DT->getNode(PredBB); in MergeBlockIntoPredecessor() 240 DomTreeNode *BBNode = DT->getNode(BB); in MergeBlockIntoPredecessor() 243 for (DomTreeNode *C : to_vector(BBNode->children())) in MergeBlockIntoPredecessor() 1068 if (DomTreeNode *OldNode = DT->getNode(Old)) { in SplitBlockImpl() 1069 std::vector<DomTreeNode *> Children(OldNode->begin(), OldNode->end()); in SplitBlockImpl() 1071 DomTreeNode *NewNode = DT->addNewBlock(New, Old); in SplitBlockImpl() 1072 for (DomTreeNode *I : Children) in SplitBlockImpl()
|
H A D | LoopUtils.cpp | 450 DomTreeNode *N, in collectChildrenInLoop() 453 auto AddRegionToWorklist = [&](DomTreeNode *DTN) { in collectChildrenInLoop() 463 for (DomTreeNode *Child : DT->getNode(Worklist[I])->children()) in collectChildrenInLoop()
|
H A D | LoopSimplify.cpp | 671 DomTreeNode *Node = DT->getNode(ExitingBlock); in simplifyOneLoop() 673 DomTreeNode *Child = Node->back(); in simplifyOneLoop()
|
H A D | CodeExtractor.cpp | 808 DomTreeNode *OldNode = DT->getNode(Block); in splitReturnBlocks() 809 SmallVector<DomTreeNode *, 8> Children(OldNode->begin(), in splitReturnBlocks() 812 DomTreeNode *NewNode = DT->addNewBlock(New, Block); 814 for (DomTreeNode *I : Children)
|
H A D | LCSSA.cpp | 144 const DomTreeNode *DomNode = DT.getNode(DomBB); in formLCSSAForInstructions()
|
/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | EarlyCSE.cpp | 773 GEPHTType &AvailableGEPs, unsigned cg, DomTreeNode *n, in StackNode() 774 DomTreeNode::const_iterator child, in StackNode() 775 DomTreeNode::const_iterator end) in StackNode() 787 DomTreeNode *node() { return Node; } in childIter() 788 DomTreeNode::const_iterator childIter() const { return ChildIter; } 790 DomTreeNode *nextChild() { in nextChild() 791 DomTreeNode *child = *ChildIter; in nextChild() 796 DomTreeNode::const_iterator end() const { return EndIter; } in isProcessed() 803 DomTreeNode *Node; 804 DomTreeNode [all...] |
H A D | ConstraintElimination.cpp | 129 FactOrCheck(EntryTy Ty, DomTreeNode *DTN, Instruction *Inst) 133 FactOrCheck(DomTreeNode *DTN, Use *U) 137 FactOrCheck(DomTreeNode *DTN, CmpPredicate Pred, Value *Op0, Value *Op1, in FactOrCheck() 142 static FactOrCheck getConditionFact(DomTreeNode *DTN, CmpPredicate Pred, in FactOrCheck() 148 static FactOrCheck getInstFact(DomTreeNode *DTN, Instruction *Inst) { in getConditionFact() 152 static FactOrCheck getCheck(DomTreeNode *DTN, Use *U) { in getInstFact() 156 static FactOrCheck getCheck(DomTreeNode *DTN, CallInst *CI) { in getCheck() 984 DomTreeNode *DTN = DT.getNode(InLoopSucc); in addInfoForInductions()
|
H A D | GuardWidening.cpp | 142 DomTreeNode *Root; 158 Instruction *Instr, const df_iterator<DomTreeNode *> &DFSI, 323 MemorySSAUpdater *MSSAU, DomTreeNode *Root, in GuardWideningImpl() 377 Instruction *Instr, const df_iterator<DomTreeNode *> &DFSI, in eliminateInstrViaWidening()
|
H A D | LICM.cpp | 555 bool llvm::sinkRegion(DomTreeNode *N, AAResults *AA, LoopInfo *LI, in sinkRegion() 622 bool llvm::sinkRegionForLoopNest(DomTreeNode *N, AAResults *AA, LoopInfo *LI, in sinkRegionForLoopNest() 847 DomTreeNode *PreheaderNode = DT->getNode(HoistCommonSucc); in getOrCreateHoistedBlock() 848 DomTreeNode *HeaderNode = DT->getNode(CurLoop->getHeader()); in getOrCreateHoistedBlock() 875 bool llvm::hoistRegion(DomTreeNode *N, AAResults *AA, LoopInfo *LI, in hoistRegion()
|
H A D | SimpleLoopUnswitch.cpp | 2116 SmallVector<DomTreeNode *, 4> DomWorklist; in visitDomSubTree() 2119 SmallPtrSet<DomTreeNode *, 4> Visited; in visitDomSubTree() 2123 DomTreeNode *N = DomWorklist.pop_back_val(); in visitDomSubTree() 2130 for (DomTreeNode *ChildN : *N) { in postUnswitch() 2661 DomTreeNode &N, in computeDomSubtreeCost() 2663 SmallDenseMap<DomTreeNode *, InstructionCost, 4> &DTCostMap) { in computeDomSubtreeCost() 2679 [&](InstructionCost Sum, DomTreeNode *ChildN) -> InstructionCost { 3368 SmallDenseMap<DomTreeNode *, InstructionCost, 4> DTCostMap; in findBestNonTrivialUnswitchCandidate() 2646 computeDomSubtreeCost(DomTreeNode & N,const SmallDenseMap<BasicBlock *,InstructionCost,4> & BBCostMap,SmallDenseMap<DomTreeNode *,InstructionCost,4> & DTCostMap) computeDomSubtreeCost() argument
|
H A D | ADCE.cpp | 303 for (const auto &PDTChild : children<DomTreeNode *>(PDT.getRootNode())) { in initialize()
|
H A D | NewGVN.cpp | 521 DenseMap<const DomTreeNode *, unsigned> RPOOrdering; 3491 llvm::sort(*Node, [&](const DomTreeNode *A, const DomTreeNode *B) { in runGVN() 3626 DomTreeNode *DomNode = DT->getNode(BB); in convertClassToDFSOrdered() 3685 DomTreeNode *DomNode = DT->getNode(IBlock); in convertClassToLoadsAndStores() 3715 DomTreeNode *DomNode = DT->getNode(BB); in deleteInstructionsInBlock()
|
/llvm-project/llvm/lib/FuzzMutate/ |
H A D | RandomIRBuilder.cpp | 30 DomTreeNode *Node = DT.getNode(BB); in getDominators() 49 DomTreeNode *Parent = DT.getNode(BB); in getDominatees() 54 for (DomTreeNode *Child : Parent->children()) in getDominatees() 58 DomTreeNode *Node = DT[ret[Idx]]; in getDominatees() 60 for (DomTreeNode *Child : Node->children()) in getDominatees()
|
/llvm-project/llvm/lib/Analysis/ |
H A D | MemorySSA.cpp | 532 DomTreeNode *Node = DT.getNode(BB); in getWalkTarget() 969 DomTreeNode *DTN; 970 DomTreeNode::const_iterator ChildIt; 973 RenamePassData(DomTreeNode *D, DomTreeNode::const_iterator It, in RenamePassData() 1146 void MemorySSA::renamePass(DomTreeNode *Root, MemoryAccess *IncomingVal, in renamePass() 1164 DomTreeNode *Node = WorkStack.back().DTN; in renamePass() 1165 DomTreeNode::const_iterator ChildIt = WorkStack.back().ChildIt; in renamePass() 1171 DomTreeNode *Child = *ChildIt; in renamePass()
|
/llvm-project/llvm/include/llvm/Support/ |
H A D | GenericDomTree.h | 218 /// Default DomTreeNode traits for NodeT. The default implementation assume a 403 "cannot get DomTreeNode of block with different parent");
|
/llvm-project/llvm/lib/Target/Hexagon/ |
H A D | HexagonCommonGEP.cpp | 330 for (auto *DTN : children<DomTreeNode*>(DT->getNode(Root))) in getBlockTraversalOrder() 798 DomTreeNode *N = (*DT)[DomB]->getIDom(); in recalculatePlacement() 858 DomTreeNode *DN = DT->getNode(L->getHeader()); in preheader() 1232 for (auto *DTN : children<DomTreeNode *>(DT->getNode(B))) in removeDeadCode()
|
H A D | HexagonGenExtract.cpp | 226 for (auto *DTN : children<DomTreeNode*>(DT->getNode(B))) in visitBlock()
|