Home
last modified time | relevance | path

Searched refs:dominates (Results 1 – 25 of 218) sorted by relevance

123456789

/llvm-project-15.0.7/clang/unittests/Analysis/
H A DCFGDominatorTree.cpp53 EXPECT_TRUE(Dom.dominates(ExitBlock, ExitBlock)); in TEST()
55 EXPECT_TRUE(Dom.dominates(CaseABlock, ExitBlock)); in TEST()
56 EXPECT_TRUE(Dom.dominates(SwitchBlock, ExitBlock)); in TEST()
57 EXPECT_TRUE(Dom.dominates(EntryBlock, ExitBlock)); in TEST()
59 EXPECT_TRUE(Dom.dominates(CaseABlock, CaseABlock)); in TEST()
61 EXPECT_TRUE(Dom.dominates(SwitchBlock, CaseABlock)); in TEST()
62 EXPECT_TRUE(Dom.dominates(EntryBlock, CaseABlock)); in TEST()
64 EXPECT_TRUE(Dom.dominates(SwitchBlock, SwitchBlock)); in TEST()
66 EXPECT_TRUE(Dom.dominates(EntryBlock, SwitchBlock)); in TEST()
68 EXPECT_TRUE(Dom.dominates(EntryBlock, EntryBlock)); in TEST()
[all …]
/llvm-project-15.0.7/mlir/test/Analysis/
H A Dtest-dominance.mlir209 // CHECK-NEXT: dominates(0, 0) = true
210 // CHECK-NEXT: dominates(0, 1) = true
211 // CHECK-NEXT: dominates(0, 2) = true
212 // CHECK-NEXT: dominates(0, 3) = true
213 // CHECK-NEXT: dominates(0, 4) = true
214 // CHECK-NEXT: dominates(0, 5) = true
217 // CHECK-NEXT: dominates(1, 1) = true
218 // CHECK-NEXT: dominates(1, 2) = true
219 // CHECK-NEXT: dominates(1, 3) = true
220 // CHECK-NEXT: dominates(1, 4) = true
[all …]
/llvm-project-15.0.7/llvm/unittests/IR/
H A DDominatorTreeTest.cpp189 EXPECT_TRUE(DT->dominates(Y1, Y2)); in TEST()
194 EXPECT_TRUE(DT->dominates(Y6, Y6)); in TEST()
195 EXPECT_TRUE(DT->dominates(Y6, Y7)); in TEST()
196 EXPECT_TRUE(DT->dominates(Y7, Y6)); in TEST()
197 EXPECT_TRUE(DT->dominates(Y7, Y7)); in TEST()
1093 EXPECT_TRUE(DT->dominates(A, I)); in TEST()
1094 EXPECT_TRUE(DT->dominates(G, I)); in TEST()
1095 EXPECT_TRUE(DT->dominates(C, I)); in TEST()
1098 EXPECT_TRUE(DT->dominates(A, U)); in TEST()
1099 EXPECT_TRUE(DT->dominates(G, U)); in TEST()
[all …]
/llvm-project-15.0.7/llvm/unittests/CodeGen/
H A DLexicalScopesTest.cpp160 EXPECT_TRUE(FuncScope->dominates(FuncScope)); in TEST_F()
194 EXPECT_TRUE(FuncScope->dominates(BlockScope)); in TEST_F()
195 EXPECT_FALSE(BlockScope->dominates(FuncScope)); in TEST_F()
206 EXPECT_TRUE(LS.dominates(InBlockLoc.get(), &MBB)); in TEST_F()
354 EXPECT_TRUE(FuncScope->dominates(BlockScope)); in TEST_F()
355 EXPECT_TRUE(FuncScope->dominates(OtherBlockScope)); in TEST_F()
356 EXPECT_FALSE(BlockScope->dominates(FuncScope)); in TEST_F()
368 EXPECT_TRUE(LS.dominates(InBlockLoc.get(), MBB1)); in TEST_F()
371 EXPECT_TRUE(LS.dominates(InBlockLoc.get(), MBB4)); in TEST_F()
455 EXPECT_TRUE(LS.dominates(InBlockLoc.get(), MBB1)); in TEST_F()
[all …]
/llvm-project-15.0.7/llvm/lib/IR/
H A DDominators.cpp164 return dominates(Def, UseBB); in dominates()
167 return dominates(DefBB, UseBB); in dominates()
194 return dominates(E, UseBB); in dominates()
201 return dominates(E, UseBB); in dominates()
204 return dominates(DefBB, UseBB); in dominates()
213 if (!dominates(End, UseBB)) in dominates()
251 if (!dominates(End, BB)) in dominates()
272 return dominates(BBE, UseBB); in dominates()
311 return dominates(E, U); in dominates()
318 return dominates(E, U); in dominates()
[all …]
/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DCodeMoverUtils.cpp126 assert(DT.dominates(&Dominator, IDom) && in collectControlConditions()
135 if (PDT.dominates(CurBlock, IDom)) { in collectControlConditions()
139 } else if (PDT.dominates(CurBlock, BI->getSuccessor(0))) { in collectControlConditions()
145 } else if (PDT.dominates(CurBlock, BI->getSuccessor(1))) { in collectControlConditions()
241 if ((DT.dominates(&BB0, &BB1) && PDT.dominates(&BB1, &BB0)) || in isControlFlowEquivalent()
242 (PDT.dominates(&BB0, &BB1) && DT.dominates(&BB1, &BB0))) in isControlFlowEquivalent()
338 if (UserInst != &InsertPoint && !DT.dominates(&InsertPoint, U)) in isSafeToMoveBefore()
348 DT.dominates(OpInst, &I)) in isSafeToMoveBefore()
350 if (!DT.dominates(OpInst, &InsertPoint)) in isSafeToMoveBefore()
455 if (PDT->dominates(CurBlock, OtherBlock)) in nonStrictlyPostDominate()
[all …]
/llvm-project-15.0.7/llvm/include/llvm/CodeGen/
H A DMachinePostDominators.h54 bool dominates(const MachineDomTreeNode *A, in dominates() function
56 return PDT->dominates(A, B); in dominates()
59 bool dominates(const MachineBasicBlock *A, const MachineBasicBlock *B) const { in dominates() function
60 return PDT->dominates(A, B); in dominates()
H A DMachineDominators.h114 bool dominates(const MachineDomTreeNode *A, in dominates() function
117 return DT->dominates(A, B); in dominates()
126 bool dominates(const MachineBasicBlock *A, const MachineBasicBlock *B) const { in dominates() function
128 return DT->dominates(A, B); in dominates()
133 bool dominates(const MachineInstr *A, const MachineInstr *B) const { in dominates() function
136 if (BBA != BBB) return DT->dominates(BBA, BBB); in dominates()
H A DLexicalScopes.h99 if (Parent && (!NewScope || !Parent->dominates(NewScope)))
104 bool dominates(const LexicalScope *S) const { in dominates() function
168 bool dominates(const DILocation *DL, MachineBasicBlock *MBB);
/llvm-project-15.0.7/llvm/include/llvm/IR/
H A DDominators.h181 using Base::dominates;
184 bool dominates(const BasicBlock *BB, const Use &U) const;
195 bool dominates(const Value *Def, const Use &U) const;
198 bool dominates(const Value *Def, const Instruction *User) const;
201 bool dominates(const Instruction *Def, const BasicBlock *BB) const;
207 bool dominates(const BasicBlockEdge &BBE, const Use &U) const;
208 bool dominates(const BasicBlockEdge &BBE, const BasicBlock *BB) const;
210 bool dominates(const BasicBlockEdge &BBE1, const BasicBlockEdge &BBE2) const;
/llvm-project-15.0.7/llvm/lib/Target/ARC/
H A DARCOptAddrMode.cpp165 if (!MDT->dominates(InstBB, MBB)) in dominatesAllUsesOf()
172 if (!MDT->dominates(MI, User)) in dominatesAllUsesOf()
248 if (MDT->dominates(Last, First)) std::swap(First, Last); in tryToCombine()
282 if (MDT->dominates(Ldst, Add)) in canJoinInstructions()
284 else if (!MDT->dominates(Add, Ldst)) in canJoinInstructions()
319 if (&MI != Add && MDT->dominates(Ldst, &MI)) in canJoinInstructions()
321 else if (!MDT->dominates(&MI, Ldst)) in canJoinInstructions()
323 if (MDT->dominates(Add, &MI)) in canJoinInstructions()
421 if (!OpDef || !MDT->dominates(OpDef, To)) in canHoistLoadStoreTo()
/llvm-project-15.0.7/mlir/include/mlir/IR/
H A DDominance.h137 bool dominates(Operation *a, Operation *b) const { in dominates() function
147 bool dominates(Value a, Operation *b) const { in dominates() function
153 bool dominates(Block *a, Block *b) const { in dominates() function
/llvm-project-15.0.7/llvm/docs/
H A DCycleTerminology.rst40 a reducible cycle (an LLVM loop) L dominates all its other nodes, and
43 irreducible cycle, no one entry dominates the nodes of the cycle. One
198 1. If a node D dominates one or more nodes in a closed path P and P
199 does not contain D, then D dominates every node in P.
204 contradicts the fact that D dominates U.
206 2. If a node D dominates one or more nodes in a closed path P and P
210 **Proof:** From the above property, D dominates all the nodes in P.
/llvm-project-15.0.7/llvm/include/llvm/Analysis/
H A DPostDominators.h39 using Base::dominates;
43 bool dominates(const Instruction *I1, const Instruction *I2) const;
H A DRegionInfoImpl.h114 return (DT->dominates(entry, BB) && in contains()
115 !(DT->dominates(exit, BB) && DT->dominates(entry, exit))); in contains()
568 if (DT->dominates(entry, P) && !DT->dominates(exit, P)) in isCommonDomFrontier()
585 if (!DT->dominates(entry, exit)) { in isRegion()
711 if (!DT->dominates(entry, exit)) in findRegionsWithEntry()
861 if (DT->dominates(Exit, BB)) in getMaxRegionExit()
/llvm-project-15.0.7/llvm/test/Transforms/JumpThreading/
H A Dassume-edge-dom.ll25 ; An assume that can be used to simplify this comparison dominates each
26 ; predecessor branch (although no assume dominates the cmp itself). Make sure
/llvm-project-15.0.7/llvm/lib/Target/WebAssembly/
H A DWebAssemblyExceptionInfo.cpp61 assert(MDT.dominates(Header, Dst)); in isReachableAmongDominated()
72 if (!Visited.count(Succ) && MDT.dominates(Header, Succ)) in isReachableAmongDominated()
306 if (MDT.dominates(EHPad, Frontier)) in discoverAndMapException()
318 if (MDT.dominates(EHPad, Succ)) in discoverAndMapException()
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DPostDominators.cpp54 bool PostDominatorTree::dominates(const Instruction *I1, in dominates() function in PostDominatorTree
62 return Base::dominates(BB1, BB2); in dominates()
H A DPHITransAddr.cpp207 (!DT || DT->dominates(CastI->getParent(), PredBB))) in PHITranslateSubExpr()
246 (!DT || DT->dominates(GEPI->getParent(), PredBB))) { in PHITranslateSubExpr()
298 (!DT || DT->dominates(BO->getParent(), PredBB))) in PHITranslateSubExpr()
329 if (!DT->dominates(Inst->getParent(), PredBB)) in PHITranslateValue()
/llvm-project-15.0.7/llvm/lib/Target/X86/
H A DX86FastPreTileConfig.cpp103 static bool dominates(MachineBasicBlock &MBB, in dominates() function
154 if (dominates(*MBB, *CfgMI, UseInst)) { in mayLiveOut()
555 if (LastShapeMI && dominates(MBB, MI, LastShapeMI)) in configBasicBlock()
600 if (LastShapeMI && dominates(MBB, MI, LastShapeMI)) in configBasicBlock()
611 else if (dominates(MBB, LastShapeMI, RowMI)) in configBasicBlock()
617 else if (dominates(MBB, LastShapeMI, ColMI)) in configBasicBlock()
628 if (!LastTileCfg || !dominates(MBB, LastTileCfg, UseMI)) in configBasicBlock()
/llvm-project-15.0.7/mlir/lib/Dialect/Vector/Transforms/
H A DVectorTransferOpTransforms.cpp66 if (dominators.dominates(start, dest)) in isReachable()
77 if (dominators.dominates(bb, destBlock)) in isReachable()
138 if (!dominators.dominates(firstOverwriteCandidate, read)) { in deadStoreOp()
177 if (dominators.dominates(write, read) && checkSameValueRAW(write, read)) { in storeToLoadForwarding()
178 if (lastwrite == nullptr || dominators.dominates(lastwrite, write)) in storeToLoadForwarding()
181 assert(dominators.dominates(write, lastwrite)); in storeToLoadForwarding()
/llvm-project-15.0.7/flang/lib/Optimizer/Transforms/
H A DMemRefDataFlowOpt.cpp51 if (domInfo->dominates(storeOp, loadOp)) in findStoreToForward()
87 if (domInfo->dominates(storeOp, loadOp)) in findReadForWrite()
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DMachineSink.cpp358 if (!DT->dominates(MBB, UseBlock)) in AllUsesDominatedByBlock()
694 if (Pred != FromBB && !DT->dominates(ToBB, Pred)) in PostponeSplitCriticalEdge()
750 if (!PDT->dominates(SuccToSinkTo, MBB)) in isProfitableToSinkTo()
1140 if (!DT->dominates(From, To) || !PDT->dominates(To, From)) in hasStoreBetween()
1174 if (PDT->dominates(To, BB)) { in hasStoreBetween()
1183 if (DomBB != BB && DT->dominates(DomBB, BB)) in hasStoreBetween()
1185 else if(DomBB != BB && DT->dominates(BB, DomBB)) in hasStoreBetween()
1197 if (DomBB != BB && DT->dominates(DomBB, BB)) in hasStoreBetween()
1199 else if(DomBB != BB && DT->dominates(BB, DomBB)) in hasStoreBetween()
1413 if (!TryBreak && !DT->dominates(ParentBlock, SuccToSinkTo)) { in SinkInstruction()
[all …]
/llvm-project-15.0.7/llvm/include/llvm/Support/
H A DGenericDomTree.h398 return dominates(A, B);
416 bool dominates(const DomTreeNodeBase<NodeT> *A,
459 bool dominates(const NodeT *A, const NodeT *B) const;
847 if (Pred != NewBB && !dominates(NewBBSucc, Pred) &&
923 bool DominatorTreeBase<NodeT, IsPostDom>::dominates(const NodeT *A,
931 return dominates(getNode(const_cast<NodeT *>(A)),
943 return dominates(getNode(const_cast<NodeT *>(A)),
/llvm-project-15.0.7/llvm/test/Verifier/
H A Dnoalias_scope_decl.ll33 ; CHECK-NEXT: llvm.experimental.noalias.scope.decl dominates another one with the same scope
41 ; CHECK-NEXT: llvm.experimental.noalias.scope.decl dominates another one with the same scope

123456789