| /llvm-project-15.0.7/llvm/include/llvm/IR/ |
| H A D | Dominators.h | 98 class BasicBlockEdge { 103 BasicBlockEdge(const BasicBlock *Start_, const BasicBlock *End_) : in BasicBlockEdge() function 106 BasicBlockEdge(const std::pair<BasicBlock *, BasicBlock *> &Pair) in BasicBlockEdge() function 124 template <> struct DenseMapInfo<BasicBlockEdge> { 127 static unsigned getHashValue(const BasicBlockEdge *V); 129 static inline BasicBlockEdge getEmptyKey() { 133 static inline BasicBlockEdge getTombstoneKey() { 137 static unsigned getHashValue(const BasicBlockEdge &Edge) { 142 static bool isEqual(const BasicBlockEdge &LHS, const BasicBlockEdge &RHS) { 207 bool dominates(const BasicBlockEdge &BBE, const Use &U) const; [all …]
|
| /llvm-project-15.0.7/llvm/lib/IR/ |
| H A D | Dominators.cpp | 50 bool BasicBlockEdge::isSingleEdge() const { in isSingleEdge() 193 BasicBlockEdge E(DefBB, NormalDest); in dominates() 200 BasicBlockEdge E(DefBB, NormalDest); in dominates() 207 bool DominatorTree::dominates(const BasicBlockEdge &BBE, in dominates() 257 bool DominatorTree::dominates(const BasicBlockEdge &BBE, const Use &U) const { in dominates() 310 BasicBlockEdge E(DefBB, NormalDest); in dominates() 317 BasicBlockEdge E(DefBB, NormalDest); in dominates() 351 bool DominatorTree::dominates(const BasicBlockEdge &BBE1, in dominates() 352 const BasicBlockEdge &BBE2) const { in dominates()
|
| /llvm-project-15.0.7/llvm/unittests/IR/ |
| H A D | DominatorTreeTest.cpp | 337 BasicBlockEdge Edge_BB0_BB2(BB0, TI->getSuccessor(0)); in TEST() 341 BasicBlockEdge Edge_BB0_BB1_a(BB0, TI->getSuccessor(1)); in TEST() 344 BasicBlockEdge Edge_BB0_BB1_b(BB0, TI->getSuccessor(2)); in TEST() 1048 BasicBlockEdge E01(BB0, BB1); in TEST() 1049 BasicBlockEdge E02(BB0, BB2); in TEST() 1050 BasicBlockEdge E13(BB1, BB3); in TEST() 1051 BasicBlockEdge E23(BB2, BB3); in TEST()
|
| /llvm-project-15.0.7/llvm/include/llvm/Transforms/Utils/ |
| H A D | Local.h | 405 const BasicBlockEdge &Edge);
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Scalar/ |
| H A D | GVN.cpp | 1939 BasicBlockEdge Edge(IntrinsicI->getParent(), Successor); in processAssumeIntrinsic() 2245 static bool isOnlyReachableViaThisEdge(const BasicBlockEdge &E, in isOnlyReachableViaThisEdge() 2288 const BasicBlockEdge &Root, in propagateEquality() 2500 BasicBlockEdge TrueE(Parent, TrueSucc); in processInstruction() 2504 BasicBlockEdge FalseE(Parent, FalseSucc); in processInstruction() 2526 BasicBlockEdge E(Parent, Dst); in processInstruction()
|
| H A D | LoopDeletion.cpp | 246 DenseSet<BasicBlockEdge> LiveEdges; in canProveExitOnFirstIteration()
|
| H A D | EarlyCSE.cpp | 1101 BasicBlockEdge(Pred, BB))) { in handleBranchCondition()
|
| H A D | NewGVN.cpp | 624 using BlockEdge = BasicBlockEdge;
|
| /llvm-project-15.0.7/llvm/include/llvm/Transforms/Scalar/ |
| H A D | GVN.h | 362 bool propagateEquality(Value *LHS, Value *RHS, const BasicBlockEdge &Root,
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Utils/ |
| H A D | SimplifyIndVar.cpp | 2049 auto DominatesNarrowUser = [this, NarrowUser] (BasicBlockEdge BBE) { in calculatePostIncRange() 2054 if (DominatesNarrowUser(BasicBlockEdge(BB, TrueSuccessor))) in calculatePostIncRange() 2057 if (DominatesNarrowUser(BasicBlockEdge(BB, FalseSuccessor))) in calculatePostIncRange()
|
| H A D | Local.cpp | 2735 const BasicBlockEdge &Root) { in replaceDominatedUsesWith() 2736 auto Dominates = [&DT](const BasicBlockEdge &Root, const Use &U) { in replaceDominatedUsesWith()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombinePHI.cpp | 1335 DT.dominates(BasicBlockEdge(IDom, It->second), in simplifyUsingControlFlow() 1336 BasicBlockEdge(Pred, BB)); in simplifyUsingControlFlow()
|
| H A D | InstCombineSelect.cpp | 2398 BasicBlockEdge TrueEdge(IDom, TrueSucc); in foldSelectToPhiImpl() 2399 BasicBlockEdge FalseEdge(IDom, FalseSucc); in foldSelectToPhiImpl() 2403 BasicBlockEdge Incoming(Pred, BB); in foldSelectToPhiImpl()
|
| /llvm-project-15.0.7/llvm/lib/Analysis/ |
| H A D | ValueTracking.cpp | 2366 BasicBlockEdge Edge(BI->getParent(), NonNullSuccessor); in isKnownNonNullFromDominatingCondition() 5075 BasicBlockEdge NoWrapEdge(BI->getParent(), BI->getSuccessor(1)); in isOverflowIntrinsicNoWrap()
|
| H A D | ScalarEvolution.cpp | 5848 BasicBlockEdge LeftEdge(BI->getParent(), BI->getSuccessor(0)); in BrPHIToSelect() 5849 BasicBlockEdge RightEdge(BI->getParent(), BI->getSuccessor(1)); in BrPHIToSelect() 11105 BasicBlockEdge DominatingEdge(PBB, BB); in isLoopBackedgeGuardedByCond()
|