| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
| H A D | CodeMoverUtils.h | 26 class DominatorTree; variable 35 const DominatorTree &DT, 43 const DominatorTree &DT, 48 DominatorTree &DT, 56 DominatorTree &DT, 64 DominatorTree &DT, 71 DominatorTree &DT, 81 const DominatorTree *DT, 86 const DominatorTree *DT,
|
| H A D | SimplifyIndVar.h | 26 class DominatorTree; variable 38 const DominatorTree *DT = nullptr; 46 const DominatorTree *getDomTree() const { return DT; } in getDomTree() 56 DominatorTree *DT, LoopInfo *LI, 64 bool simplifyLoopIVs(Loop *L, ScalarEvolution *SE, DominatorTree *DT, 85 DominatorTree *DT, SmallVectorImpl<WeakTrackingVH> &DeadInsts,
|
| H A D | LoopUtils.h | 55 LLVM_ABI BasicBlock *InsertPreheaderForLoop(Loop *L, DominatorTree *DT, 65 LLVM_ABI bool formDedicatedExitBlocks(Loop *L, DominatorTree *DT, LoopInfo *LI, 89 const DominatorTree &DT, const LoopInfo &LI, 106 LLVM_ABI bool formLCSSA(Loop &L, const DominatorTree &DT, const LoopInfo *LI, 118 LLVM_ABI bool formLCSSARecursively(Loop &L, const DominatorTree &DT, 158 DominatorTree *, TargetLibraryInfo *, 167 DominatorTree *, TargetLibraryInfo *, 184 DominatorTree *, AssumptionCache *, 206 LLVM_ABI void deleteDeadLoop(Loop *L, DominatorTree *DT, ScalarEvolution *SE, 212 LLVM_ABI void breakLoopBackedge(Loop *L, DominatorTree &DT, ScalarEvolution &SE, [all …]
|
| H A D | UnrollLoop.h | 31 class DominatorTree; variable 86 DominatorTree *DT, AssumptionCache *AC, 96 LoopInfo *LI, ScalarEvolution *SE, DominatorTree *DT, AssumptionCache *AC, 103 bool UnrollRemainder, LoopInfo *LI, ScalarEvolution *SE, DominatorTree *DT, 108 DominatorTree &DT, DependenceInfo &DI, 112 ScalarEvolution *SE, DominatorTree *DT, 158 Loop *L, const TargetTransformInfo &TTI, DominatorTree &DT, LoopInfo *LI,
|
| H A D | AssumeBundleBuilder.h | 29 class DominatorTree; variable 48 DominatorTree *DT = nullptr); 55 DominatorTree *DT = nullptr); 75 DominatorTree *DT);
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | DomPrinter.cpp | 28 void DominatorTree::viewGraph(const Twine &Name, const Twine &Title) { in viewGraph() 36 void DominatorTree::viewGraph() { in viewGraph() 46 static DominatorTree *getGraph(DominatorTreeWrapperPass *DTWP) { in getGraph() 53 DominatorTreeWrapperPass, false, DominatorTree *, 58 DominatorTreeWrapperPass, false, DominatorTree *, in DomViewerWrapperPass() 64 DominatorTreeWrapperPass, true, DominatorTree *, 69 DominatorTreeWrapperPass, true, DominatorTree *, in DomOnlyViewerWrapperPass() 126 DominatorTreeWrapperPass, false, DominatorTree *, 131 DominatorTreeWrapperPass, false, DominatorTree *, in DomPrinterWrapperPass() 137 DominatorTreeWrapperPass, true, DominatorTree *, [all …]
|
| H A D | DomTreeUpdater.cpp | 26 GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>; 29 GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, 33 GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>:: 36 GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>::
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | DomTreeUpdater.h | 30 GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>; 33 : public GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, 35 friend GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, 40 GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>; 122 GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, 126 GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>:: 129 GenericDomTreeUpdater<DomTreeUpdater, DominatorTree, PostDominatorTree>::
|
| H A D | Loads.h | 25 class DominatorTree; variable 42 const DominatorTree *DT = nullptr, 52 const DominatorTree *DT = nullptr, const TargetLibraryInfo *TLI = nullptr); 61 const DominatorTree *DT = nullptr, const TargetLibraryInfo *TLI = nullptr); 74 const DominatorTree *DT = nullptr, const TargetLibraryInfo *TLI = nullptr); 84 LoadInst *LI, Loop *L, ScalarEvolution &SE, DominatorTree &DT, 91 Loop *L, ScalarEvolution *SE, DominatorTree *DT, AssumptionCache *AC, 105 const DominatorTree *DT = nullptr, const TargetLibraryInfo *TLI = nullptr);
|
| H A D | PHITransAddr.h | 22 class DominatorTree; variable 80 const DominatorTree *DT, bool MustDominate); 91 const DominatorTree &DT, 103 const DominatorTree *DT); 111 BasicBlock *PredBB, const DominatorTree &DT,
|
| H A D | ValueTracking.h | 34 class DominatorTree; variable 65 const DominatorTree *DT = nullptr, 72 const DominatorTree *DT = nullptr, 81 const DominatorTree *DT = nullptr, 133 const DominatorTree *DT = nullptr, 209 const DominatorTree *DT = nullptr, 220 const DominatorTree *DT = nullptr, 259 const Instruction *CxtI = nullptr, const DominatorTree *DT = nullptr, 547 AssumptionCache *AC = nullptr, const DominatorTree *DT = nullptr, 554 const DominatorTree *DT = nullptr, [all …]
|
| H A D | MemorySSAUpdater.h | 46 class DominatorTree; variable 117 DominatorTree &DT); 120 ArrayRef<std::unique_ptr<ValueToValueMapTy>> VMaps, DominatorTree &DT); 125 LLVM_ABI void applyUpdates(ArrayRef<CFGUpdate> Updates, DominatorTree &DT, 129 DominatorTree &DT); 295 DominatorTree &DT); 296 void applyInsertUpdates(ArrayRef<CFGUpdate>, DominatorTree &DT,
|
| H A D | CFG.h | 25 class DominatorTree; variable 73 const DominatorTree *DT = nullptr, const LoopInfo *LI = nullptr); 84 const DominatorTree *DT = nullptr, const LoopInfo *LI = nullptr); 98 const DominatorTree *DT = nullptr, const LoopInfo *LI = nullptr); 110 const DominatorTree *DT = nullptr, const LoopInfo *LI = nullptr);
|
| H A D | BasicAliasAnalysis.h | 28 class DominatorTree; variable 49 DominatorTree *DT_; 51 DominatorTree *getDT(const AAQueryInfo &AAQI) const { in getDT() 58 DominatorTree *DT = nullptr) 113 AssumptionCache *AC, DominatorTree *DT); 125 DominatorTree *DT, const AAQueryInfo &AAQI);
|
| H A D | CaptureTracking.h | 27 class DominatorTree; variable 79 const DominatorTree *DT, 94 const DominatorTree *DT, bool IncludeI, CaptureComponents Mask, 111 const DominatorTree &DT, CaptureComponents Mask,
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | Dominators.h | 165 class DominatorTree : public DominatorTreeBase<BasicBlock, false> { 169 DominatorTree() = default; 170 explicit DominatorTree(Function &F) { recalculate(F); } 171 explicit DominatorTree(DominatorTree &DT, DomTreeBuilder::BBUpdates U) { 270 template <> struct GraphTraits<DominatorTree*> 272 static NodeRef getEntryNode(DominatorTree *DT) { return DT->getRootNode(); } 274 static nodes_iterator nodes_begin(DominatorTree *N) { 278 static nodes_iterator nodes_end(DominatorTree *N) { 290 using Result = DominatorTree; 293 LLVM_ABI DominatorTree run(Function &F, FunctionAnalysisManager &); [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | LoopFuse.cpp | 180 DominatorTree &DT; 185 FusionCandidate(Loop *L, DominatorTree &DT, const PostDominatorTree *PDT, in FusionCandidate() 397 const DominatorTree *DT = &(LHS.DT); in operator ()() 570 DominatorTree &DT; 579 LoopFuser(LoopInfo &LI, DominatorTree &DT, DependenceInfo &DI, in LoopFuser() 823 SmallVector<DominatorTree::UpdateType, 8> TreeUpdates; in peelFusionCandidate() 829 DominatorTree::UpdateType(DominatorTree::Delete, Pred, BB)); in peelFusionCandidate() 1613 SmallVector<DominatorTree::UpdateType, 8> TreeUpdates; in performFusion() 1635 TreeUpdates.emplace_back(DominatorTree::UpdateType( in performFusion() 1636 DominatorTree::Delete, FC0.ExitingBlock, FC1.Preheader)); in performFusion() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPUUnifyDivergentExitNodes.cpp | 70 bool run(Function &F, DominatorTree *DT, const PostDominatorTree &PDT, 157 std::vector<DominatorTree::UpdateType> Updates; in unifyReturnBlockSet() 168 Updates.emplace_back(DominatorTree::Insert, BB, NewRetBlock); in unifyReturnBlockSet() 184 bool AMDGPUUnifyDivergentExitNodesImpl::run(Function &F, DominatorTree *DT, in run() 203 std::vector<DominatorTree::UpdateType> Updates; in run() 241 Updates.emplace_back(DominatorTree::Insert, BB, DummyReturnBB); in run() 252 Updates.emplace_back(DominatorTree::Insert, BB, TransitionBB); in run() 254 Updates.emplace_back(DominatorTree::Insert, TransitionBB, Successor); in run() 255 Updates.emplace_back(DominatorTree::Delete, BB, Successor); in run() 262 Updates.emplace_back(DominatorTree::Insert, BB, DummyReturnBB); in run() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/IR/ |
| H A D | Dominators.cpp | 126 bool DominatorTree::invalidate(Function &F, const PreservedAnalyses &PA, in invalidate() 135 bool DominatorTree::dominates(const BasicBlock *BB, const Use &U) const { in dominates() 148 bool DominatorTree::dominates(const Value *DefV, in dominates() 187 bool DominatorTree::dominates(const Instruction *Def, in dominates() 213 bool DominatorTree::dominates(const BasicBlockEdge &BBE, in dominates() 263 bool DominatorTree::dominates(const BasicBlockEdge &BBE, const Use &U) const { in dominates() 281 bool DominatorTree::dominates(const Value *DefV, const Use &U) const { in dominates() 334 bool DominatorTree::isReachableFromEntry(const Use &U) const { in isReachableFromEntry() 350 bool DominatorTree::dominates(const BasicBlockEdge &BBE1, in dominates() 357 Instruction *DominatorTree::findNearestCommonDominator(Instruction *I1, in findNearestCommonDominator() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | CallBrPrepare.cpp | 57 static bool SplitCriticalEdges(ArrayRef<CallBrInst *> CBRs, DominatorTree &DT); 59 DominatorTree &DT); 60 static void UpdateSSA(DominatorTree &DT, CallBrInst *CBR, CallInst *Intrinsic, 118 bool SplitCriticalEdges(ArrayRef<CallBrInst *> CBRs, DominatorTree &DT) { in SplitCriticalEdges() 140 bool InsertIntrinsicCalls(ArrayRef<CallBrInst *> CBRs, DominatorTree &DT) { in InsertIntrinsicCalls() 173 static void PrintDebugDomInfo(const DominatorTree &DT, const Use &U, in PrintDebugDomInfo() 185 void UpdateSSA(DominatorTree &DT, CallBrInst *CBR, CallInst *Intrinsic, in UpdateSSA() 236 DominatorTree *DT; in runOnFunction() 237 std::optional<DominatorTree> LazilyComputedDomTree; in runOnFunction()
|
| H A D | IndirectBrExpandPass.cpp | 177 SmallVector<DominatorTree::UpdateType, 8> Updates; in runImpl() 183 Updates.push_back({DominatorTree::Delete, IBr->getParent(), SuccBB}); in runImpl() 215 SmallVector<DominatorTree::UpdateType, 8> Updates; in runImpl() 226 Updates.push_back({DominatorTree::Delete, IBr->getParent(), SuccBB}); in runImpl() 248 Updates.push_back({DominatorTree::Insert, IBr->getParent(), SwitchBB}); in runImpl() 250 Updates.push_back({DominatorTree::Delete, IBr->getParent(), SuccBB}); in runImpl() 271 Updates.push_back({DominatorTree::Insert, SwitchBB, BB}); in runImpl()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
| H A D | LoopExtractor.cpp | 61 function_ref<DominatorTree &(Function &)> LookupDomTree, in LoopExtractor() 73 function_ref<DominatorTree &(Function &)> LookupDomTree; 80 DominatorTree &DT); 81 bool extractLoop(Loop *L, LoopInfo &LI, DominatorTree &DT); 117 auto LookupDomTree = [this](Function &F) -> DominatorTree & { in runOnModule() 176 DominatorTree &DT = LookupDomTree(F); in runOnFunction() 221 LoopInfo &LI, DominatorTree &DT) { in extractLoops() 239 bool LoopExtractor::extractLoop(Loop *L, LoopInfo &LI, DominatorTree &DT) { in extractLoop() 263 auto LookupDomTree = [&FAM](Function &F) -> DominatorTree & { in run()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | LoopIdiomVectorize.cpp | 121 DominatorTree *DT; 134 LoopIdiomVectorize(LoopIdiomVectorizeStyle S, unsigned VF, DominatorTree *DT, in LoopIdiomVectorize() 451 DTU.applyUpdates({{DominatorTree::Insert, VectorLoopPreheaderBlock, in createMaskedFindMismatch() 483 {{DominatorTree::Insert, VectorLoopStartBlock, VectorLoopMismatchBlock}, in createMaskedFindMismatch() 484 {DominatorTree::Insert, VectorLoopStartBlock, VectorLoopIncBlock}}); in createMaskedFindMismatch() 506 {{DominatorTree::Insert, VectorLoopIncBlock, VectorLoopStartBlock}, in createMaskedFindMismatch() 507 {DominatorTree::Insert, VectorLoopIncBlock, EndBlock}}); in createMaskedFindMismatch() 542 DTU.applyUpdates({{DominatorTree::Insert, VectorLoopPreheaderBlock, in createPredicatedFindMismatch() 594 {{DominatorTree::Insert, VectorLoopStartBlock, VectorLoopMismatchBlock}, in createPredicatedFindMismatch() 595 {DominatorTree::Insert, VectorLoopStartBlock, VectorLoopIncBlock}}); in createPredicatedFindMismatch() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | BasicBlockUtils.cpp | 63 SmallVectorImpl<DominatorTree::UpdateType> *Updates, in detachDeadBlocks() 72 Updates->push_back({DominatorTree::Delete, BB, Succ}); in detachDeadBlocks() 111 SmallVector<DominatorTree::UpdateType, 4> Updates; in DeleteDeadBlocks() 181 DominatorTree *DT) { in MergeBlockIntoPredecessor() 246 std::vector<DominatorTree::UpdateType> Updates; in MergeBlockIntoPredecessor() 264 Updates.push_back({DominatorTree::Insert, PredBB, SuccOfBB}); in MergeBlockIntoPredecessor() 268 Updates.push_back({DominatorTree::Delete, BB, SuccOfBB}); in MergeBlockIntoPredecessor() 269 Updates.push_back({DominatorTree::Delete, PredBB, BB}); in MergeBlockIntoPredecessor() 626 BasicBlock *llvm::SplitEdge(BasicBlock *BB, BasicBlock *Succ, DominatorTree *DT, in SplitEdge() 774 SmallVector<DominatorTree::UpdateType, 3> Updates; in ehAwareSplitEdge() [all …]
|
| H A D | MatrixUtils.cpp | 52 {DominatorTree::Delete, Preheader, Tmp}, in CreateLoop() 53 {DominatorTree::Insert, Header, Body}, in CreateLoop() 54 {DominatorTree::Insert, Body, Latch}, in CreateLoop() 55 {DominatorTree::Insert, Latch, Header}, in CreateLoop() 56 {DominatorTree::Insert, Latch, Exit}, in CreateLoop() 57 {DominatorTree::Insert, Preheader, Header}, in CreateLoop()
|