HomeSort by: relevance | last modified time | path
    Searched refs:IDom (Results 1 - 18 of 18) sorted by relevancy

  /src/external/apache2/llvm/dist/llvm/include/llvm/Support/
GenericDomTree.h 61 DomTreeNodeBase *IDom;
68 DomTreeNodeBase(NodeT *BB, DomTreeNodeBase *iDom)
69 : TheBB(BB), IDom(iDom), Level(IDom ? IDom->Level + 1 : 0) {}
89 DomTreeNodeBase *getIDom() const { return IDom; }
124 assert(IDom && "No immediate dominator?");
125 if (IDom == NewIDom) return;
127 auto I = find(IDom->Children, this)
    [all...]
GenericDomTreeConstruction.h 69 NodePtr IDom = nullptr;
130 return InfoIt->second.IDom;
138 NodePtr IDom = getIDom(BB);
140 assert(IDom || DT.DomTreeNodes[nullptr]);
141 TreeNodePtr IDomNode = getNodeForBlock(IDom, DT);
277 VInfo.IDom = NumToNode[VInfo.Parent];
303 // IDom[i] = NCA(SDom[i], SpanningTreeParent(i)).
310 NodePtr WIDomCandidate = WInfo.IDom;
312 WIDomCandidate = NodeToInfo[WIDomCandidate].IDom;
314 WInfo.IDom = WIDomCandidate
    [all...]
  /src/external/apache2/llvm/dist/clang/include/clang/Analysis/Analyses/
Dominators.h 96 << "dominance tree (Node#,IDom#):\n";
104 DomTreeNode *IDom = DT.getNode(*I)->getIDom();
105 if (IDom && IDom->getBlock())
108 << IDom->getBlock()->getBlockID()
114 bool IsDomTreeRoot = !IDom && !IsPostDom && IsEntryBlock;
116 IDom && !IDom->getBlock() && IsPostDom && IsExitBlock;
  /src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Utils/
SSAUpdaterImpl.h 57 BBInfo *IDom = nullptr;
171 Info->IDom = PseudoEntry;
217 Blk1 = Blk1->IDom;
222 Blk2 = Blk2->IDom;
269 // Check if the IDom value has changed.
270 if (NewIDom && NewIDom != Info->IDom) {
271 Info->IDom = NewIDom;
278 /// IsDefInDomFrontier - Search up the dominator tree from Pred to IDom for
282 bool IsDefInDomFrontier(const BBInfo *Pred, const BBInfo *IDom) {
283 for (; Pred != IDom; Pred = Pred->IDom)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
CodeMoverUtils.cpp 125 BasicBlock *IDom = DT.getNode(CurBlock)->getIDom()->getBlock();
126 assert(DT.dominates(&Dominator, IDom) &&
127 "Expecting Dominator to dominate IDom");
130 const BranchInst *BI = dyn_cast<BranchInst>(IDom->getTerminator());
135 if (PDT.dominates(CurBlock, IDom)) {
138 << IDom->getName() << "\n");
142 << IDom->getName() << "\n");
148 << IDom->getName() << "\n");
160 CurBlock = IDom;
SSAUpdaterBulk.cpp 80 BasicBlock *IDom = DT->getNode(BB)->getIDom()->getBlock();
81 Value *V = computeValueAt(IDom, R, DT);
LoopPeel.cpp 539 DomTreeNode *IDom = DT->getNode(*BB)->getIDom();
540 // VMap must contain entry for IDom, as the iteration order is RPO.
541 DT->addNewBlock(NewBB, cast<BasicBlock>(VMap[IDom->getBlock()]));
684 // We'd like to determine the idom of exit block after peeling one
690 // We'd like to find an idom'(Exit) - idom of Exit after peeling.
691 // It is an evident that idom'(Exit) will be the nearest common dominator
693 // idom(Exit) is a nearest common dominator of ExitingSet.
694 // idom(Exit)' is a nearest common dominator of ExitingSet'.
696 // Header and idom(Exit)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/
LiveRangeCalc.cpp 345 MachineDomTreeNode *IDom = Node->getIDom();
350 bool needPHI = !IDom || !Seen.test(IDom->getBlock()->getNumber());
352 // IDom dominates all of our predecessors, but it may not be their
354 // properly dominated by IDom. If so, we need a phi-def here.
356 IDomValue = Map[IDom->getBlock()];
361 Map[IDom->getBlock()].second = IDomValue.second =
382 if (DomTree->dominates(IDom, Value.second)) {
ShrinkWrap.cpp 316 MachineBasicBlock *IDom = &Block;
318 IDom = Dom.findNearestCommonDominator(IDom, BB);
319 if (!IDom)
322 if (IDom == &Block)
324 return IDom;
SplitKit.cpp 943 MachineDomTreeNode *IDom = MDT[Loop->getHeader()]->getIDom();
946 if (!IDom || !MDT.dominates(DefDomNode, IDom))
949 MBB = IDom->getBlock();
  /src/external/apache2/llvm/dist/llvm/lib/MCA/HardwareUnits/
LSUnit.cpp 88 MemoryGroup &IDom = getGroup(ImmediateLoadDominator);
91 IDom.addSuccessor(&NewGroup, !assumeNoAlias());
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
ConstantHoisting.cpp 201 auto *IDom = DT->getNode(InsertionBlock)->getIDom();
202 while (IDom->getBlock()->isEHPad()) {
203 assert(Entry != IDom->getBlock() && "eh pad in entry block");
204 IDom = IDom->getIDom();
207 return IDom->getBlock()->getTerminator();
LoopStrengthReduce.cpp 5110 BasicBlock *IDom;
5115 IDom = Rung->getBlock();
5118 const Loop *IDomLoop = LI.getLoopFor(IDom);
5125 Tentative = IDom->getTerminator();
  /src/external/apache2/llvm/dist/llvm/lib/Analysis/
MemorySSAUpdater.cpp 883 // If BB has multiple predecessors, get last definition from IDom.
890 if (auto *IDom = DT.getNode(BB)->getIDom())
891 if (IDom->getBlock() != BB) {
892 BB = IDom->getBlock();
908 // Get nearest IDom given a set of blocks.
1076 assert(DT.getNode(BB)->getIDom() && "BB does not have valid idom");
1078 assert(PrevIDom && "Previous IDom should exists");
1080 assert(NewIDom && "BB should have a new valid idom");
1082 "New idom should dominate old idom");
    [all...]
ScalarEvolution.cpp 5398 BasicBlock *IDom = DT[PN->getParent()]->getIDom()->getBlock();
5399 assert(IDom && "At least the entry block should dominate PN");
5401 auto *BI = dyn_cast<BranchInst>(IDom->getTerminator());
  /src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
SIAnnotateControlFlow.cpp 170 BasicBlock *IDom = DT->getNode(Phi->getParent())->getIDom()->getBlock();
172 if (Phi->getIncomingBlock(i) == IDom) {
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/InstCombine/
InstCombinePHI.cpp 1267 auto *IDom = DT.getNode(BB)->getIDom()->getBlock();
1268 auto *BI = dyn_cast<BranchInst>(IDom->getTerminator());
1272 // Check that edges outgoing from the idom's terminators dominate respective
1274 BasicBlockEdge TrueOutEdge(IDom, BI->getSuccessor(0));
1275 BasicBlockEdge FalseOutEdge(IDom, BI->getSuccessor(1));
1283 // This Phi is actually equivalent to branching condition of IDom.
1287 // This Phi is actually opposite to branching condition of IDom. We invert
InstCombineSelect.cpp 2490 BasicBlock *IDom = IDomNode->getBlock();
2495 if (match(IDom->getTerminator(),
2500 } else if (match(IDom->getTerminator(),
2517 BasicBlockEdge TrueEdge(IDom, TrueSucc);
2518 BasicBlockEdge FalseEdge(IDom, FalseSucc);

Completed in 48 milliseconds