Home
last modified time | relevance | path

Searched refs:DomTreeNode (Results 1 – 25 of 34) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DDomPrinter.h25 struct DOTGraphTraits<DomTreeNode *> : public DefaultDOTGraphTraits {
29 std::string getNodeLabel(DomTreeNode *Node, DomTreeNode *Graph) {
45 : public DOTGraphTraits<DomTreeNode *> {
48 : DOTGraphTraits<DomTreeNode *>(isSimple) {}
54 std::string getNodeLabel(DomTreeNode *Node, DominatorTree *G) {
55 return DOTGraphTraits<DomTreeNode *>::getNodeLabel(Node,
62 : public DOTGraphTraits<DomTreeNode*> {
65 : DOTGraphTraits<DomTreeNode*>(isSimple) {}
71 std::string getNodeLabel(DomTreeNode *Node,
73 return DOTGraphTraits<DomTreeNode*>::getNodeLabel(Node, G->getRootNode());
H A DPostDominators.h101 : public GraphTraits<DomTreeNode*> {
/freebsd/contrib/llvm-project/clang/include/clang/Analysis/Analyses/
H A DDominators.h38 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;
291 static nodes_iterator nodes_begin(::clang::DomTreeNode *N) {
295 static nodes_iterator nodes_end(::clang::DomTreeNode *N) {
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DDominators.h92 using DomTreeNode = DomTreeNodeBase<BasicBlock>; variable
252 struct GraphTraits<DomTreeNode *>
253 : public DomTreeGraphTraitsBase<DomTreeNode, DomTreeNode::const_iterator> {
257 struct GraphTraits<const DomTreeNode *>
258 : public DomTreeGraphTraitsBase<const DomTreeNode,
259 DomTreeNode::const_iterator> {};
262 : public GraphTraits<DomTreeNode*> {
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DLoopUtils.h23 using DomTreeNode = DomTreeNodeBase<BasicBlock>; variable
151 bool sinkRegion(DomTreeNode *, AAResults *, LoopInfo *, DominatorTree *,
159 bool sinkRegionForLoopNest(DomTreeNode *, AAResults *, LoopInfo *,
175 bool hoistRegion(DomTreeNode *, AAResults *, LoopInfo *, DominatorTree *,
226 SmallVector<DomTreeNode *, 16> collectChildrenInLoop(DomTreeNode *N,
/freebsd/contrib/llvm-project/llvm/lib/FuzzMutate/
H A DRandomIRBuilder.cpp30 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()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DEarlyCSE.cpp773 DomTreeNode::const_iterator child, in StackNode()
774 DomTreeNode::const_iterator end) in StackNode()
786 DomTreeNode *node() { return Node; } in node()
789 DomTreeNode *nextChild() { in nextChild()
790 DomTreeNode *child = *ChildIter; in nextChild()
802 DomTreeNode *Node;
803 DomTreeNode::const_iterator ChildIter;
804 DomTreeNode::const_iterator EndIter;
956 bool processNode(DomTreeNode *Node);
1346 bool EarlyCSE::processNode(DomTreeNode *Node) { in processNode()
[all …]
H A DGuardWidening.cpp141 DomTreeNode *Root;
157 Instruction *Instr, const df_iterator<DomTreeNode *> &DFSI,
321 MemorySSAUpdater *MSSAU, DomTreeNode *Root, in GuardWideningImpl()
375 Instruction *Instr, const df_iterator<DomTreeNode *> &DFSI, in eliminateInstrViaWidening()
H A DConstraintElimination.cpp129 FactOrCheck(EntryTy Ty, DomTreeNode *DTN, Instruction *Inst) in FactOrCheck()
133 FactOrCheck(DomTreeNode *DTN, Use *U) in FactOrCheck()
138 FactOrCheck(DomTreeNode *DTN, CmpInst::Predicate Pred, Value *Op0, Value *Op1, in FactOrCheck()
143 static FactOrCheck getConditionFact(DomTreeNode *DTN, CmpInst::Predicate Pred, in getConditionFact()
149 static FactOrCheck getInstFact(DomTreeNode *DTN, Instruction *Inst) { in getInstFact()
153 static FactOrCheck getCheck(DomTreeNode *DTN, Use *U) { in getCheck()
157 static FactOrCheck getCheck(DomTreeNode *DTN, CallInst *CI) { in getCheck()
935 DomTreeNode *DTN = DT.getNode(InLoopSucc); in addInfoForInductions()
H A DLICM.cpp544 bool llvm::sinkRegion(DomTreeNode *N, AAResults *AA, LoopInfo *LI, in sinkRegion()
559 SmallVector<DomTreeNode *, 16> Worklist = collectChildrenInLoop(N, CurLoop); in sinkRegion()
562 for (DomTreeNode *DTN : reverse(Worklist)) { in sinkRegion()
612 bool llvm::sinkRegionForLoopNest(DomTreeNode *N, AAResults *AA, LoopInfo *LI, in sinkRegionForLoopNest()
837 DomTreeNode *PreheaderNode = DT->getNode(HoistCommonSucc); in getOrCreateHoistedBlock()
838 DomTreeNode *HeaderNode = DT->getNode(CurLoop->getHeader()); in getOrCreateHoistedBlock()
865 bool llvm::hoistRegion(DomTreeNode *N, AAResults *AA, LoopInfo *LI, in hoistRegion()
H A DSimpleLoopUnswitch.cpp2103 SmallVector<DomTreeNode *, 4> DomWorklist; in visitDomSubTree()
2106 SmallPtrSet<DomTreeNode *, 4> Visited; in visitDomSubTree()
2110 DomTreeNode *N = DomWorklist.pop_back_val(); in visitDomSubTree()
2117 for (DomTreeNode *ChildN : *N) { in visitDomSubTree()
2642 DomTreeNode &N, in computeDomSubtreeCost()
2644 SmallDenseMap<DomTreeNode *, InstructionCost, 4> &DTCostMap) { in computeDomSubtreeCost() argument
2660 [&](InstructionCost Sum, DomTreeNode *ChildN) -> InstructionCost { in computeDomSubtreeCost()
3345 SmallDenseMap<DomTreeNode *, InstructionCost, 4> DTCostMap; in findBestNonTrivialUnswitchCandidate()
H A DADCE.cpp303 for (const auto &PDTChild : children<DomTreeNode *>(PDT.getRootNode())) { in initialize()
H A DNewGVN.cpp510 DenseMap<const DomTreeNode *, unsigned> RPOOrdering;
3456 llvm::sort(*Node, [&](const DomTreeNode *A, const DomTreeNode *B) { in runGVN()
3589 DomTreeNode *DomNode = DT->getNode(BB); in convertClassToDFSOrdered()
3648 DomTreeNode *DomNode = DT->getNode(IBlock); in convertClassToDFSOrdered()
3678 DomTreeNode *DomNode = DT->getNode(BB); in convertClassToLoadsAndStores()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DPredicateInfo.cpp162 DomTreeNode *DomASrc = DT.getNode(ASrc); in comparePHIRelated()
163 DomTreeNode *DomBSrc = DT.getNode(BSrc); in comparePHIRelated()
175 DomTreeNode *DomADest = DT.getNode(ADest); in comparePHIRelated()
176 DomTreeNode *DomBDest = DT.getNode(BDest); in comparePHIRelated()
345 DomTreeNode *DomNode = DT.getNode(IBlock); in convertUsesToDFSOrdered()
631 DomTreeNode *DomNode = DT.getNode(PAssume->AssumeInst->getParent()); in renameUses()
H A DCodeMoverUtils.cpp102 DomTreeNode *DA = DT->getNode(InstA->getParent()); in domTreeLevelBefore()
103 DomTreeNode *DB = DT->getNode(InstB->getParent()); in domTreeLevelBefore()
H A DBasicBlockUtils.cpp239 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()
1056 if (DomTreeNode *OldNode = DT->getNode(Old)) { in SplitBlockImpl()
1057 std::vector<DomTreeNode *> Children(OldNode->begin(), OldNode->end()); in SplitBlockImpl()
1059 DomTreeNode *NewNode = DT->addNewBlock(New, Old); in SplitBlockImpl()
1060 for (DomTreeNode *I : Children) in SplitBlockImpl()
H A DLoopUtils.cpp449 SmallVector<DomTreeNode *, 16>
450 llvm::collectChildrenInLoop(DomTreeNode *N, const Loop *CurLoop) { in collectChildrenInLoop()
451 SmallVector<DomTreeNode *, 16> Worklist; in collectChildrenInLoop()
452 auto AddRegionToWorklist = [&](DomTreeNode *DTN) { in collectChildrenInLoop()
462 for (DomTreeNode *Child : Worklist[I]->children()) in collectChildrenInLoop()
H A DLoopSimplify.cpp675 DomTreeNode *Node = DT->getNode(ExitingBlock); in simplifyOneLoop()
677 DomTreeNode *Child = Node->back(); in simplifyOneLoop()
H A DCodeExtractor.cpp801 DomTreeNode *OldNode = DT->getNode(Block); in splitReturnBlocks()
802 SmallVector<DomTreeNode *, 8> Children(OldNode->begin(), in splitReturnBlocks()
805 DomTreeNode *NewNode = DT->addNewBlock(New, Block); in splitReturnBlocks()
807 for (DomTreeNode *I : Children) in splitReturnBlocks()
H A DLCSSA.cpp142 const DomTreeNode *DomNode = DT.getNode(DomBB); in formLCSSAForInstructions()
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DMemorySSA.cpp529 DomTreeNode *Node = DT.getNode(BB); in getWalkTarget()
966 DomTreeNode *DTN;
967 DomTreeNode::const_iterator ChildIt;
970 RenamePassData(DomTreeNode *D, DomTreeNode::const_iterator It, in RenamePassData()
1143 void MemorySSA::renamePass(DomTreeNode *Root, MemoryAccess *IncomingVal, in renamePass()
1161 DomTreeNode *Node = WorkStack.back().DTN; in renamePass()
1162 DomTreeNode::const_iterator ChildIt = WorkStack.back().ChildIt; in renamePass()
1168 DomTreeNode *Child = *ChildIt; in renamePass()
/freebsd/contrib/llvm-project/llvm/include/llvm/Support/
H A DGenericDomTree.h346 for (const auto &DomTreeNode : DomTreeNodes) {
347 NodeT *BB = DomTreeNode.first;
353 DomTreeNodeBase<NodeT> &MyNd = *DomTreeNode.second;
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonCommonGEP.cpp331 for (auto *DTN : children<DomTreeNode*>(DT->getNode(Root))) in getBlockTraversalOrder()
799 DomTreeNode *N = (*DT)[DomB]->getIDom(); in recalculatePlacement()
859 DomTreeNode *DN = DT->getNode(L->getHeader()); in preheader()
1233 for (auto *DTN : children<DomTreeNode *>(DT->getNode(B))) in removeDeadCode()
H A DHexagonGenExtract.cpp227 for (auto *DTN : children<DomTreeNode*>(DT->getNode(B))) in visitBlock()
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DSafepointIRVerifier.cpp743 DomTreeNode *DTN = DT[const_cast<BasicBlock *>(BB)]; in gatherDominatingDefs()

12