Home
last modified time | relevance | path

Searched refs:DominatorTree (Results 1 - 25 of 254) sorted by relevance

1234567891011

/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Analysis/
H A DDomPrinter.cpp52 struct DOTGraphTraits<DominatorTree*> : public DOTGraphTraits<DomTreeNode*> {
57 static std::string getGraphName(DominatorTree *DT) { in getGraphName()
61 std::string getNodeLabel(DomTreeNode *Node, DominatorTree *G) { in getNodeLabel()
83 void DominatorTree::viewGraph(const Twine &Name, const Twine &Title) { in viewGraph()
91 void DominatorTree::viewGraph() { in viewGraph()
101 static DominatorTree *getGraph(DominatorTreeWrapperPass *DTWP) { in getGraph()
107 DominatorTreeWrapperPass, false, DominatorTree *,
111 : DOTGraphTraitsViewer<DominatorTreeWrapperPass, false, DominatorTree *, in DomViewer()
119 DominatorTreeWrapperPass, true, DominatorTree *,
123 : DOTGraphTraitsViewer<DominatorTreeWrapperPass, true, DominatorTree *, in DomOnlyViewer()
[all...]
H A DDomTreeUpdater.cpp26 const DominatorTree::UpdateType Update) const { in isUpdateValid()
42 if (Kind == DominatorTree::Insert && !HasEdge) in isUpdateValid()
46 if (Kind == DominatorTree::Delete && HasEdge) in isUpdateValid()
53 const DominatorTree::UpdateType Update) const { in isSelfDominance()
68 DT->applyUpdates(ArrayRef<DominatorTree::UpdateType>(I, E)); in applyDomTreeUpdates()
90 PDT->applyUpdates(ArrayRef<DominatorTree::UpdateType>(I, E)); in applyPostDomTreeUpdates()
231 void DomTreeUpdater::applyUpdates(ArrayRef<DominatorTree::UpdateType> Updates) { in applyUpdates()
250 ArrayRef<DominatorTree::UpdateType> Updates) { in applyUpdatesPermissive()
255 SmallVector<DominatorTree::UpdateType, 8> DeduplicatedUpdates; in applyUpdatesPermissive()
303 DominatorTree
[all...]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/include/llvm/Analysis/
H A DDomTreeUpdater.h31 DomTreeUpdater(DominatorTree &DT_, UpdateStrategy Strategy_) in DomTreeUpdater()
33 DomTreeUpdater(DominatorTree *DT_, UpdateStrategy Strategy_) in DomTreeUpdater()
39 DomTreeUpdater(DominatorTree &DT_, PostDominatorTree &PDT_, in DomTreeUpdater()
42 DomTreeUpdater(DominatorTree *DT_, PostDominatorTree *PDT_, in DomTreeUpdater()
54 /// Returns true if it holds a DominatorTree.
77 /// Returns true if there are DominatorTree updates queued.
88 /// These methods provide APIs for submitting updates to the DominatorTree and
91 /// Note: There are two strategies to update the DominatorTree and the
99 /// DominatorTree. The incremental updater can reschedule the updates or
121 void applyUpdates(ArrayRef<DominatorTree
[all...]
H A DValueTracking.h33 class DominatorTree;
58 const DominatorTree *DT = nullptr,
66 const DominatorTree *DT = nullptr,
81 const DominatorTree *DT = nullptr,
93 const DominatorTree *DT = nullptr,
107 const DominatorTree *DT = nullptr,
121 const DominatorTree *DT = nullptr,
129 const DominatorTree *DT = nullptr,
137 const DominatorTree *DT = nullptr,
145 const DominatorTree *D
[all...]
H A DLoads.h33 const DominatorTree *DT = nullptr);
43 const DominatorTree *DT = nullptr);
52 const DominatorTree *DT = nullptr);
65 const DominatorTree *DT = nullptr);
76 DominatorTree &DT);
89 const DominatorTree *DT = nullptr);
H A DCFG.h23 class DominatorTree;
70 const DominatorTree *DT = nullptr, const LoopInfo *LI = nullptr);
79 const DominatorTree *DT = nullptr,
91 const DominatorTree *DT = nullptr,
106 const DominatorTree *DT = nullptr, const LoopInfo *LI = nullptr);
H A DPHITransAddr.h21 class DominatorTree;
82 const DominatorTree *DT, bool MustDominate);
92 const DominatorTree &DT,
104 const DominatorTree *DT);
112 BasicBlock *PredBB, const DominatorTree &DT,
H A DMemorySSAUpdater.h131 DominatorTree &DT);
134 ArrayRef<std::unique_ptr<ValueToValueMapTy>> VMaps, DominatorTree &DT);
137 void applyUpdates(ArrayRef<CFGUpdate> Updates, DominatorTree &DT);
139 void applyInsertUpdates(ArrayRef<CFGUpdate> Updates, DominatorTree &DT);
303 DominatorTree &DT);
304 void applyInsertUpdates(ArrayRef<CFGUpdate>, DominatorTree &DT,
H A DTypeMetadataUtils.h22 class DominatorTree;
44 DominatorTree &DT);
52 const CallInst *CI, DominatorTree &DT);
H A DMustExecute.h41 class DominatorTree;
85 const DominatorTree *DT) const;
97 const DominatorTree *DT,
122 const DominatorTree *DT,
151 const DominatorTree *DT,
174 ICFLoopSafetyInfo(DominatorTree *DT) : LoopSafetyInfo(), ICF(DT), MW(DT) {}; in ICFLoopSafetyInfo()
478 /// Getters for common CFG analyses: LoopInfo, DominatorTree, and
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Scalar/
H A DLoopFuse.cpp161 const DominatorTree *DT;
166 FusionCandidate(Loop *L, const DominatorTree *DT, in FusionCandidate()
356 const DominatorTree *DT = LHS.DT; in operator ()()
509 DominatorTree &DT;
516 LoopFuser(LoopInfo &LI, DominatorTree &DT, DependenceInfo &DI, in LoopFuser()
1198 SmallVector<DominatorTree::UpdateType, 8> TreeUpdates; in performFusion()
1219 TreeUpdates.emplace_back(DominatorTree::UpdateType( in performFusion()
1220 DominatorTree::Delete, FC0.ExitingBlock, FC1.Preheader)); in performFusion()
1221 TreeUpdates.emplace_back(DominatorTree::UpdateType( in performFusion()
1222 DominatorTree in performFusion()
[all...]
/third_party/skia/third_party/externals/spirv-tools/source/opt/
H A Ddominator_tree.cpp220 bool DominatorTree::StrictlyDominates(uint32_t a, uint32_t b) const { in StrictlyDominates()
225 bool DominatorTree::StrictlyDominates(const BasicBlock* a, in StrictlyDominates()
227 return DominatorTree::StrictlyDominates(a->id(), b->id()); in StrictlyDominates()
230 bool DominatorTree::StrictlyDominates(const DominatorTreeNode* a, in StrictlyDominates()
236 bool DominatorTree::Dominates(uint32_t a, uint32_t b) const { in Dominates()
245 bool DominatorTree::Dominates(const DominatorTreeNode* a, in Dominates()
255 bool DominatorTree::Dominates(const BasicBlock* A, const BasicBlock* B) const { in Dominates()
259 BasicBlock* DominatorTree::ImmediateDominator(const BasicBlock* A) const { in ImmediateDominator()
263 BasicBlock* DominatorTree::ImmediateDominator(uint32_t a) const { in ImmediateDominator()
277 DominatorTreeNode* DominatorTree
[all...]
/third_party/skia/third_party/externals/swiftshader/third_party/SPIRV-Tools/source/opt/
H A Ddominator_tree.cpp220 bool DominatorTree::StrictlyDominates(uint32_t a, uint32_t b) const { in StrictlyDominates()
225 bool DominatorTree::StrictlyDominates(const BasicBlock* a, in StrictlyDominates()
227 return DominatorTree::StrictlyDominates(a->id(), b->id()); in StrictlyDominates()
230 bool DominatorTree::StrictlyDominates(const DominatorTreeNode* a, in StrictlyDominates()
236 bool DominatorTree::Dominates(uint32_t a, uint32_t b) const { in Dominates()
245 bool DominatorTree::Dominates(const DominatorTreeNode* a, in Dominates()
255 bool DominatorTree::Dominates(const BasicBlock* A, const BasicBlock* B) const { in Dominates()
259 BasicBlock* DominatorTree::ImmediateDominator(const BasicBlock* A) const { in ImmediateDominator()
263 BasicBlock* DominatorTree::ImmediateDominator(uint32_t a) const { in ImmediateDominator()
277 DominatorTreeNode* DominatorTree
[all...]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/include/llvm/IR/
H A DDominators.h9 // This file defines the DominatorTree class, which provides fast and efficient
144 class DominatorTree : public DominatorTreeBase<BasicBlock, false> { class
148 DominatorTree() = default;
149 explicit DominatorTree(Function &F) { recalculate(F); } in DominatorTree() function in llvm::DominatorTree
150 explicit DominatorTree(DominatorTree &DT, DomTreeBuilder::BBUpdates U) { in DominatorTree() function in llvm::DominatorTree
188 // DominatorTree GraphTraits specializations so the DominatorTree can be
216 template <> struct GraphTraits<DominatorTree*>
218 static NodeRef getEntryNode(DominatorTree *D
[all...]
/third_party/spirv-tools/source/opt/
H A Ddominator_tree.cpp207 bool DominatorTree::StrictlyDominates(uint32_t a, uint32_t b) const { in StrictlyDominates()
212 bool DominatorTree::StrictlyDominates(const BasicBlock* a, in StrictlyDominates()
214 return DominatorTree::StrictlyDominates(a->id(), b->id()); in StrictlyDominates()
217 bool DominatorTree::StrictlyDominates(const DominatorTreeNode* a, in StrictlyDominates()
223 bool DominatorTree::Dominates(uint32_t a, uint32_t b) const { in Dominates()
232 bool DominatorTree::Dominates(const DominatorTreeNode* a, in Dominates()
242 bool DominatorTree::Dominates(const BasicBlock* A, const BasicBlock* B) const { in Dominates()
246 BasicBlock* DominatorTree::ImmediateDominator(const BasicBlock* A) const { in ImmediateDominator()
250 BasicBlock* DominatorTree::ImmediateDominator(uint32_t a) const { in ImmediateDominator()
264 DominatorTreeNode* DominatorTree
[all...]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/include/llvm/Transforms/Utils/
H A DUnrollLoop.h29 class DominatorTree;
82 ScalarEvolution *SE, DominatorTree *DT,
90 ScalarEvolution *SE, DominatorTree *DT,
101 DominatorTree *DT, AssumptionCache *AC, bool PreserveLCSSA);
106 DominatorTree *DT, AssumptionCache *AC,
110 bool isSafeToUnrollAndJam(Loop *L, ScalarEvolution &SE, DominatorTree &DT,
114 DominatorTree &DT, LoopInfo *LI, ScalarEvolution &SE,
125 ScalarEvolution *SE, DominatorTree *DT,
H A DCodeMoverUtils.h21 class DominatorTree;
31 const DominatorTree &DT,
40 const DominatorTree &DT,
45 const DominatorTree &DT, const PostDominatorTree &PDT,
51 const DominatorTree &DT, const PostDominatorTree &PDT,
H A DLoopUtils.h53 BasicBlock *InsertPreheaderForLoop(Loop *L, DominatorTree *DT, LoopInfo *LI,
61 bool formDedicatedExitBlocks(Loop *L, DominatorTree *DT, LoopInfo *LI,
71 /// LoopInfo and DominatorTree are required and, since the routine makes no
76 DominatorTree &DT, LoopInfo &LI,
86 /// LoopInfo and DominatorTree are required and preserved.
91 bool formLCSSA(Loop &L, DominatorTree &DT, LoopInfo *LI, ScalarEvolution *SE);
97 /// LoopInfo and DominatorTree are required and preserved.
102 bool formLCSSARecursively(Loop &L, DominatorTree &DT, LoopInfo *LI,
115 /// reverse depth first order w.r.t the DominatorTree. This allows us to visit
117 /// iteration. Takes DomTreeNode, AliasAnalysis, LoopInfo, DominatorTree,
[all...]
H A DSimplifyIndVar.h23 class DominatorTree;
34 const DominatorTree *DT = nullptr;
42 const DominatorTree *getDomTree() const { return DT; } in getDomTree()
48 bool simplifyUsersOfIV(PHINode *CurrIV, ScalarEvolution *SE, DominatorTree *DT,
54 bool simplifyLoopIVs(Loop *L, ScalarEvolution *SE, DominatorTree *DT,
H A DBasicBlockUtils.h30 class DominatorTree;
48 SmallVectorImpl<DominatorTree::UpdateType> *Updates,
122 DominatorTree *DT;
131 CriticalEdgeSplittingOptions(DominatorTree *DT = nullptr, in CriticalEdgeSplittingOptions()
226 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr,
234 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr,
248 /// This currently updates the LLVM IR, DominatorTree, LoopInfo, and LCCSA but
254 DominatorTree *DT = nullptr,
266 /// This currently updates the LLVM IR, DominatorTree, LoopInfo, and LCCSA but
273 DominatorTree *D
[all...]
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/IR/
H A DDominators.cpp57 // DominatorTree Implementation
60 // Provide public access to DominatorTree information. Implementation details
104 bool DominatorTree::invalidate(Function &F, const PreservedAnalyses &PA, in invalidate()
116 bool DominatorTree::dominates(const Instruction *Def, in dominates()
153 bool DominatorTree::dominates(const Instruction *Def, in dominates()
179 bool DominatorTree::dominates(const BasicBlockEdge &BBE, in dominates()
231 bool DominatorTree::dominates(const BasicBlockEdge &BBE, const Use &U) const { in dominates()
249 bool DominatorTree::dominates(const Instruction *Def, const Use &U) const { in dominates()
300 bool DominatorTree::isReachableFromEntry(const Use &U) const { in isReachableFromEntry()
324 DominatorTree DominatorTreeAnalysi
[all...]
/third_party/skia/third_party/externals/spirv-tools/test/opt/dominator_tree/
H A Dgenerated.cpp128 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
193 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
295 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
337 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
416 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
439 DominatorTree::iterator node_it = dom_tree.GetDomTree().begin(); in TEST_F()
440 DominatorTree::iterator node_end = dom_tree.GetDomTree().end(); in TEST_F()
450 DominatorTree::const_iterator node_it = dom_tree.GetDomTree().cbegin(); in TEST_F()
451 DominatorTree::const_iterator node_end = dom_tree.GetDomTree().cend(); in TEST_F()
461 DominatorTree in TEST_F()
[all...]
/third_party/skia/third_party/externals/swiftshader/third_party/SPIRV-Tools/test/opt/dominator_tree/
H A Dgenerated.cpp128 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
193 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
295 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
337 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
416 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
439 DominatorTree::iterator node_it = dom_tree.GetDomTree().begin(); in TEST_F()
440 DominatorTree::iterator node_end = dom_tree.GetDomTree().end(); in TEST_F()
450 DominatorTree::const_iterator node_it = dom_tree.GetDomTree().cbegin(); in TEST_F()
451 DominatorTree::const_iterator node_end = dom_tree.GetDomTree().cend(); in TEST_F()
461 DominatorTree in TEST_F()
[all...]
/third_party/spirv-tools/test/opt/dominator_tree/
H A Dgenerated.cpp127 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
192 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
294 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
336 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
415 DominatorTree& tree = dom_tree.GetDomTree(); in TEST_F()
438 DominatorTree::iterator node_it = dom_tree.GetDomTree().begin(); in TEST_F()
439 DominatorTree::iterator node_end = dom_tree.GetDomTree().end(); in TEST_F()
449 DominatorTree::const_iterator node_it = dom_tree.GetDomTree().cbegin(); in TEST_F()
450 DominatorTree::const_iterator node_end = dom_tree.GetDomTree().cend(); in TEST_F()
460 DominatorTree in TEST_F()
[all...]
/third_party/mesa3d/src/nouveau/codegen/
H A Dnv50_ir_ssa.cpp30 // DominatorTree implements an algorithm for finding immediate dominators,
32 class DominatorTree : public Graph class
35 DominatorTree(Graph *cfg);
36 ~DominatorTree() { } in ~DominatorTree()
65 void DominatorTree::debugPrint() in debugPrint()
76 DominatorTree::DominatorTree(Graph *cfgraph) : cfg(cfgraph), in DominatorTree() function in nv50_ir::DominatorTree
98 void DominatorTree::buildDFS(Graph::Node *node) in buildDFS()
110 void DominatorTree::squash(int v) in squash()
121 int DominatorTree
[all...]

Completed in 20 milliseconds

1234567891011