Home
last modified time | relevance | path

Searched refs:DominatorTree (Results 1 – 25 of 199) sorted by relevance

12345678

/freebsd-12.1/contrib/llvm/lib/IR/
H A DDomTreeUpdater.cpp25 const DominatorTree::UpdateType Update) const { in isUpdateValid()
41 if (Kind == DominatorTree::Insert && !HasEdge) in isUpdateValid()
45 if (Kind == DominatorTree::Delete && HasEdge) in isUpdateValid()
52 const DominatorTree::UpdateType Update) const { in isSelfDominance()
65 const DominatorTree::UpdateType Invert = {Kind != DominatorTree::Insert in applyLazyUpdate()
271 SmallVector<DominatorTree::UpdateType, 8> Seen; in applyUpdates()
299 DominatorTree &DomTreeUpdater::getDomTree() { in getDomTree()
335 applyLazyUpdate(DominatorTree::Insert, From, To); in insertEdge()
356 applyLazyUpdate(DominatorTree::Insert, From, To); in insertEdgeRelaxed()
381 applyLazyUpdate(DominatorTree::Delete, From, To); in deleteEdge()
[all …]
H A DDominators.cpp104 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 DominatorTreeAnalysis::run(Function &F, in run()
326 DominatorTree DT; in run()
371 assert(DT.verify(DominatorTree::VerificationLevel::Full)); in verifyAnalysis()
[all …]
/freebsd-12.1/contrib/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 *,
119 DominatorTreeWrapperPass, true, DominatorTree *,
123 : DOTGraphTraitsViewer<DominatorTreeWrapperPass, true, DominatorTree *, in DomOnlyViewer()
186 DominatorTreeWrapperPass, false, DominatorTree *,
[all …]
H A DMustExecute.cpp111 const DominatorTree *DT, in CanProveNotTakenFirstIteration()
185 const DominatorTree *DT) const { in allLoopPathsLeadToBlock()
236 const DominatorTree *DT, in isGuaranteedToExecute()
255 const DominatorTree *DT, in isGuaranteedToExecute()
317 static bool isMustExecuteIn(const Instruction &I, Loop *L, DominatorTree *DT) { in isMustExecuteIn()
335 DominatorTree &DT, LoopInfo &LI) { in MustExecuteAnnotatedWriter()
347 DominatorTree &DT, LoopInfo &LI) { in MustExecuteAnnotatedWriter()
/freebsd-12.1/contrib/llvm/include/llvm/Analysis/
H A DValueTracking.h34 class DominatorTree; variable
58 const DominatorTree *DT = nullptr,
66 const DominatorTree *DT = nullptr,
81 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 *DT = nullptr,
161 const DominatorTree *DT = nullptr,
[all …]
H A DMustExecute.h31 class DominatorTree; variable
74 const DominatorTree *DT) const;
86 const DominatorTree *DT,
111 const DominatorTree *DT,
140 const DominatorTree *DT,
163 ICFLoopSafetyInfo(DominatorTree *DT) : LoopSafetyInfo(), ICF(DT), MW(DT) {}; in ICFLoopSafetyInfo()
H A DPHITransAddr.h22 class DominatorTree; variable
83 const DominatorTree *DT, bool MustDominate);
93 const DominatorTree &DT,
105 const DominatorTree *DT);
113 BasicBlock *PredBB, const DominatorTree &DT,
H A DLoads.h31 const DominatorTree *DT = nullptr);
40 const DominatorTree *DT = nullptr);
49 const DominatorTree *DT = nullptr);
62 const DominatorTree *DT = nullptr);
H A DMemorySSAUpdater.h126 DominatorTree &DT);
129 ArrayRef<std::unique_ptr<ValueToValueMapTy>> VMaps, DominatorTree &DT);
132 void applyUpdates(ArrayRef<CFGUpdate> Updates, DominatorTree &DT);
134 void applyInsertUpdates(ArrayRef<CFGUpdate> Updates, DominatorTree &DT);
280 DominatorTree &DT);
281 void applyInsertUpdates(ArrayRef<CFGUpdate>, DominatorTree &DT,
H A DCFG.h24 class DominatorTree; variable
67 const DominatorTree *DT = nullptr,
77 const DominatorTree *DT = nullptr,
89 const DominatorTree *DT = nullptr,
H A DTypeMetadataUtils.h23 class DominatorTree; variable
45 DominatorTree &DT);
53 const CallInst *CI, DominatorTree &DT);
H A DSyncDependenceAnalysis.h29 class DominatorTree; variable
48 SyncDependenceAnalysis(const DominatorTree &DT, const PostDominatorTree &PDT,
75 const DominatorTree &DT;
H A DBasicAliasAnalysis.h39 class DominatorTree; variable
62 DominatorTree *DT;
69 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr,
172 DominatorTree *DT, bool &NSW, bool &NUW);
175 const DataLayout &DL, AssumptionCache *AC, DominatorTree *DT);
193 DominatorTree *DT);
H A DInstructionPrecedenceTracking.h53 InstructionPrecedenceTracking(DominatorTree *DT) in InstructionPrecedenceTracking()
100 ImplicitControlFlowTracking(DominatorTree *DT) in ImplicitControlFlowTracking()
125 MemoryWriteTracking(DominatorTree *DT) : InstructionPrecedenceTracking(DT) {} in MemoryWriteTracking()
/freebsd-12.1/contrib/llvm/include/llvm/IR/
H A DDomTreeUpdater.h32 DomTreeUpdater(DominatorTree &DT_, UpdateStrategy Strategy_) in DomTreeUpdater()
34 DomTreeUpdater(DominatorTree *DT_, UpdateStrategy Strategy_) in DomTreeUpdater()
40 DomTreeUpdater(DominatorTree &DT_, PostDominatorTree &PDT_, in DomTreeUpdater()
43 DomTreeUpdater(DominatorTree *DT_, PostDominatorTree *PDT_, in DomTreeUpdater()
95 void applyUpdates(ArrayRef<DominatorTree::UpdateType> Updates,
170 DominatorTree &getDomTree();
203 SmallVector<DominatorTree::UpdateType, 16> PendUpdates;
206 DominatorTree *DT = nullptr;
226 bool applyLazyUpdate(DominatorTree::UpdateKind Kind, BasicBlock *From,
250 bool isUpdateValid(DominatorTree::UpdateType Update) const;
[all …]
H A DDominators.h149 DominatorTree() = default;
150 explicit DominatorTree(Function &F) { recalculate(F); }
151 explicit DominatorTree(DominatorTree &DT, DomTreeBuilder::BBUpdates U) {
217 template <> struct GraphTraits<DominatorTree*>
221 static nodes_iterator nodes_begin(DominatorTree *N) {
225 static nodes_iterator nodes_end(DominatorTree *N) {
237 using Result = DominatorTree;
240 DominatorTree run(Function &F, FunctionAnalysisManager &);
261 DominatorTree DT;
270 DominatorTree &getDomTree() { return DT; }
[all …]
/freebsd-12.1/contrib/llvm/include/llvm/Transforms/Utils/
H A DUnrollLoop.h29 class DominatorTree; variable
72 DominatorTree *DT, AssumptionCache *AC,
80 DominatorTree *DT, AssumptionCache *AC,
91 DominatorTree *DT, AssumptionCache *AC, bool PreserveLCSSA);
96 DominatorTree *DT, AssumptionCache *AC,
100 bool isSafeToUnrollAndJam(Loop *L, ScalarEvolution &SE, DominatorTree &DT,
104 DominatorTree &DT, LoopInfo *LI, ScalarEvolution &SE,
113 ScalarEvolution *SE, DominatorTree *DT);
118 ScalarEvolution *SE, DominatorTree *DT,
H A DLoopUtils.h53 BasicBlock *InsertPreheaderForLoop(Loop *L, DominatorTree *DT, LoopInfo *LI,
61 bool formDedicatedExitBlocks(Loop *L, DominatorTree *DT, LoopInfo *LI,
76 DominatorTree &DT, LoopInfo &LI);
89 bool formLCSSA(Loop &L, DominatorTree &DT, LoopInfo *LI, ScalarEvolution *SE);
100 bool formLCSSARecursively(Loop &L, DominatorTree &DT, LoopInfo *LI,
111 bool sinkRegion(DomTreeNode *, AliasAnalysis *, LoopInfo *, DominatorTree *,
124 bool hoistRegion(DomTreeNode *, AliasAnalysis *, LoopInfo *, DominatorTree *,
140 void deleteDeadLoop(Loop *L, DominatorTree *DT, ScalarEvolution *SE,
155 DominatorTree *, const TargetLibraryInfo *,
277 bool canSinkOrHoistInst(Instruction &I, AAResults *AA, DominatorTree *DT,
H A DSimplifyIndVar.h24 class DominatorTree; variable
35 const DominatorTree *DT = nullptr;
43 const DominatorTree *getDomTree() const { return DT; } in getDomTree()
49 bool simplifyUsersOfIV(PHINode *CurrIV, ScalarEvolution *SE, DominatorTree *DT,
55 bool simplifyLoopIVs(Loop *L, ScalarEvolution *SE, DominatorTree *DT,
H A DBasicBlockUtils.h31 class DominatorTree; variable
94 DominatorTree *DT;
101 CriticalEdgeSplittingOptions(DominatorTree *DT = nullptr,
190 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr,
198 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr,
217 DominatorTree *DT = nullptr,
236 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr,
270 DominatorTree *DT = nullptr,
H A DCodeExtractor.h31 class DominatorTree; variable
56 DominatorTree *const DT;
85 CodeExtractor(ArrayRef<BasicBlock *> BBs, DominatorTree *DT = nullptr,
95 CodeExtractor(DominatorTree &DT, Loop &L, bool AggregateArgs = false,
H A DSSAUpdaterBulk.h30 class DominatorTree; variable
54 Value *computeValueAt(BasicBlock *BB, RewriteInfo &R, DominatorTree *DT);
86 void RewriteAllUses(DominatorTree *DT,
/freebsd-12.1/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/
H A DDominators.h43 class DominatorTree : public ManagedAnalysis {
49 DominatorTree() { in DominatorTree() function
53 ~DominatorTree() override { delete DT; } in ~DominatorTree()
71 bool compare(DominatorTree &Other) const { in compare()
185 template <> struct GraphTraits< ::clang::DominatorTree* >
187 static NodeRef getEntryNode(::clang::DominatorTree *DT) {
191 static nodes_iterator nodes_begin(::clang::DominatorTree *N) {
195 static nodes_iterator nodes_end(::clang::DominatorTree *N) {
/freebsd-12.1/contrib/llvm/lib/Transforms/AggressiveInstCombine/
H A DAggressiveInstCombineInternal.h50 class DominatorTree; variable
56 const DominatorTree &DT;
81 const DominatorTree &DT) in TruncInstCombine()
/freebsd-12.1/contrib/llvm/include/llvm/Transforms/Vectorize/
H A DLoopVectorize.h69 class DominatorTree; variable
92 DominatorTree *DT;
105 TargetTransformInfo &TTI_, DominatorTree &DT_,

12345678