Home
last modified time | relevance | path

Searched refs:DT (Results 1 – 25 of 488) sorted by relevance

12345678910>>...20

/external/llvm/unittests/IR/
DDominatorTreeTest.cpp30 DominatorTree *DT = in runOnFunction() local
61 EXPECT_TRUE(DT->isReachableFromEntry(BB0)); in runOnFunction()
62 EXPECT_TRUE(DT->isReachableFromEntry(BB1)); in runOnFunction()
63 EXPECT_TRUE(DT->isReachableFromEntry(BB2)); in runOnFunction()
64 EXPECT_FALSE(DT->isReachableFromEntry(BB3)); in runOnFunction()
65 EXPECT_TRUE(DT->isReachableFromEntry(BB4)); in runOnFunction()
68 EXPECT_TRUE(DT->dominates(BB0, BB0)); in runOnFunction()
69 EXPECT_TRUE(DT->dominates(BB0, BB1)); in runOnFunction()
70 EXPECT_TRUE(DT->dominates(BB0, BB2)); in runOnFunction()
71 EXPECT_TRUE(DT->dominates(BB0, BB3)); in runOnFunction()
[all …]
/external/llvm/include/llvm/Support/
DGenericDomTreeConstruction.h33 unsigned DFSPass(DominatorTreeBase<typename GraphT::NodeType>& DT, in DFSPass() argument
39 InfoRec &VInfo = DT.Info[DT.Roots[i]]; in DFSPass()
46 InfoRec &SuccVInfo = DT.Info[*SI]; in DFSPass()
49 N = DTDFSPass(DT, *SI, N); in DFSPass()
63 DT.Info[BB]; in DFSPass()
70 DT.Vertex.push_back(BB); // Vertex[n] = V; in DFSPass()
95 DT.Info[Succ]; in DFSPass()
107 Eval(DominatorTreeBase<typename GraphT::NodeType> &DT, in Eval() argument
110 DT.Info[VIn]; in Eval()
123 DT.Info[V]; in Eval()
[all …]
/external/swiftshader/third_party/LLVM/include/llvm/Analysis/
DDominatorInternals.h34 unsigned DFSPass(DominatorTreeBase<typename GraphT::NodeType>& DT, in DFSPass() argument
40 InfoRec &VInfo = DT.Info[DT.Roots[i]]; in DFSPass()
47 InfoRec &SuccVInfo = DT.Info[*SI]; in DFSPass()
50 N = DTDFSPass(DT, *SI, N); in DFSPass()
64 DT.Info[BB]; in DFSPass()
71 DT.Vertex.push_back(BB); // Vertex[n] = V; in DFSPass()
96 DT.Info[Succ]; in DFSPass()
108 Eval(DominatorTreeBase<typename GraphT::NodeType>& DT, in Eval() argument
111 DT.Info[VIn]; in Eval()
124 DT.Info[V]; in Eval()
[all …]
DInstructionSimplify.h33 const TargetData *TD = 0, const DominatorTree *DT = 0);
38 const TargetData *TD = 0, const DominatorTree *DT = 0);
43 const DominatorTree *DT = 0);
48 const DominatorTree *DT = 0);
53 const DominatorTree *DT = 0);
58 const DominatorTree *DT = 0);
63 const DominatorTree *DT = 0);
68 const DominatorTree *DT = 0);
73 const DominatorTree *DT = 0);
78 const TargetData *TD = 0, const DominatorTree *DT = 0);
[all …]
DPostDominators.h26 DominatorTreeBase<BasicBlock>* DT; member
30 DT = new DominatorTreeBase<BasicBlock>(true); in PostDominatorTree()
42 return DT->getRoots(); in getRoots()
46 return DT->getRootNode(); in getRootNode()
50 return DT->getNode(BB);
54 return DT->getNode(BB); in getNode()
58 return DT->dominates(A, B); in dominates()
62 return DT->dominates(A, B); in dominates()
66 return DT->properlyDominates(A, B); in properlyDominates()
70 return DT->properlyDominates(A, B); in properlyDominates()
[all …]
DDominators.h183 void Calculate(DominatorTreeBase<typename GraphTraits<N>::NodeType>& DT,
227 void Split(DominatorTreeBase<typename GraphT::NodeType>& DT, in Split() argument
248 if (ND != NewBB && !DT.dominates(NewBBSucc, ND) && in Split()
249 DT.isReachableFromEntry(ND)) { in Split()
260 if (DT.isReachableFromEntry(PredBlocks[i])) { in Split()
272 if (DT.isReachableFromEntry(PredBlocks[i])) in Split()
273 NewBBIDom = DT.findNearestCommonDominator(NewBBIDom, PredBlocks[i]); in Split()
277 DomTreeNodeBase<NodeT> *NewBBNode = DT.addNewBlock(NewBB, NewBBIDom); in Split()
282 DomTreeNodeBase<NodeT> *NewBBSuccNode = DT.getNode(NewBBSucc); in Split()
283 DT.changeImmediateDominator(NewBBSuccNode, NewBBNode); in Split()
[all …]
/external/swiftshader/third_party/LLVM/include/llvm/CodeGen/
DMachineDominators.h43 DominatorTreeBase<MachineBasicBlock>* DT; variable
49 DominatorTreeBase<MachineBasicBlock>& getBase() { return *DT; } in getBase()
58 return DT->getRoots(); in getRoots()
62 return DT->getRoot(); in getRoot()
66 return DT->getRootNode(); in getRootNode()
72 return DT->dominates(A, B); in dominates()
76 return DT->dominates(A, B); in dominates()
83 if (BBA != BBB) return DT->dominates(BBA, BBB); in dominates()
101 return DT->properlyDominates(A, B); in properlyDominates()
106 return DT->properlyDominates(A, B); in properlyDominates()
[all …]
/external/swiftshader/third_party/LLVM/lib/Analysis/
DInstructionSimplify.cpp72 static bool ValueDominatesPHI(Value *V, PHINode *P, const DominatorTree *DT) { in ValueDominatesPHI() argument
79 if (DT) in ValueDominatesPHI()
80 return DT->dominates(I, P); in ValueDominatesPHI()
98 const DominatorTree *DT, unsigned MaxRecurse) { in ExpandBinOp() argument
110 if (Value *L = SimplifyBinOp(Opcode, A, C, TD, DT, MaxRecurse)) in ExpandBinOp()
111 if (Value *R = SimplifyBinOp(Opcode, B, C, TD, DT, MaxRecurse)) { in ExpandBinOp()
120 if (Value *V = SimplifyBinOp(OpcodeToExpand, L, R, TD, DT, in ExpandBinOp()
134 if (Value *L = SimplifyBinOp(Opcode, A, B, TD, DT, MaxRecurse)) in ExpandBinOp()
135 if (Value *R = SimplifyBinOp(Opcode, A, C, TD, DT, MaxRecurse)) { in ExpandBinOp()
144 if (Value *V = SimplifyBinOp(OpcodeToExpand, L, R, TD, DT, in ExpandBinOp()
[all …]
DPHITransAddr.cpp146 const DominatorTree *DT) { in PHITranslateSubExpr() argument
190 Value *PHIIn = PHITranslateSubExpr(Cast->getOperand(0), CurBB, PredBB, DT); in PHITranslateSubExpr()
209 (!DT || DT->dominates(CastI->getParent(), PredBB))) in PHITranslateSubExpr()
220 Value *GEPOp = PHITranslateSubExpr(GEP->getOperand(i), CurBB, PredBB, DT); in PHITranslateSubExpr()
231 if (Value *V = SimplifyGEPInst(GEPOps, TD, DT)) { in PHITranslateSubExpr()
246 (!DT || DT->dominates(GEPI->getParent(), PredBB))) { in PHITranslateSubExpr()
268 Value *LHS = PHITranslateSubExpr(Inst->getOperand(0), CurBB, PredBB, DT); in PHITranslateSubExpr()
287 if (Value *Res = SimplifyAddInst(LHS, RHS, isNSW, isNUW, TD, DT)) { in PHITranslateSubExpr()
305 (!DT || DT->dominates(BO->getParent(), PredBB))) in PHITranslateSubExpr()
322 const DominatorTree *DT) { in PHITranslateValue() argument
[all …]
/external/llvm/include/llvm/CodeGen/
DMachineDominators.h71 DominatorTreeBase<MachineBasicBlock>* DT; variable
79 return *DT; in getBase()
90 return DT->getRoots(); in getRoots()
95 return DT->getRoot(); in getRoot()
100 return DT->getRootNode(); in getRootNode()
108 return DT->dominates(A, B); in dominates()
114 return DT->dominates(A, B); in dominates()
122 if (BBA != BBB) return DT->dominates(BBA, BBB); in dominates()
141 return DT->properlyDominates(A, B); in properlyDominates()
147 return DT->properlyDominates(A, B); in properlyDominates()
[all …]
DMachinePostDominators.h29 DominatorTreeBase<MachineBasicBlock> *DT;
41 return DT->getRoots(); in getRoots()
45 return DT->getRootNode(); in getRootNode()
49 return DT->getNode(BB);
53 return DT->getNode(BB); in getNode()
58 return DT->dominates(A, B); in dominates()
62 return DT->dominates(A, B); in dominates()
67 return DT->properlyDominates(A, B); in properlyDominates()
72 return DT->properlyDominates(A, B); in properlyDominates()
77 return DT->findNearestCommonDominator(A, B); in findNearestCommonDominator()
/external/clang/include/clang/Analysis/Analyses/
DDominators.h41 llvm::DominatorTreeBase<CFGBlock>* DT;
44 DT = new llvm::DominatorTreeBase<CFGBlock>(false); in DominatorTree()
47 ~DominatorTree() override { delete DT; } in ~DominatorTree() local
49 llvm::DominatorTreeBase<CFGBlock>& getBase() { return *DT; } in getBase()
54 return DT->getRoot(); in getRoot()
60 return DT->getRootNode(); in getRootNode()
74 if (DT->compare(Other.getBase())) in compare()
85 DT->recalculate(*cfg); in buildDominatorTree()
95 if(DT->getNode(*I)->getIDom()) in dump()
98 << DT->getNode(*I)->getIDom()->getBlock()->getBlockID() in dump()
[all …]
/external/llvm/include/llvm/Analysis/
DInstructionSimplify.h54 const DominatorTree *DT = nullptr,
63 const DominatorTree *DT = nullptr,
72 const DominatorTree *DT = nullptr,
81 const DominatorTree *DT = nullptr,
90 const DominatorTree *DT = nullptr,
98 const DominatorTree *DT = nullptr,
106 const DominatorTree *DT = nullptr,
114 const DominatorTree *DT = nullptr,
123 const DominatorTree *DT = nullptr,
131 const DominatorTree *DT = nullptr,
[all …]
DValueTracking.h56 const DominatorTree *DT = nullptr);
66 const DominatorTree *DT = nullptr);
74 const DominatorTree *DT = nullptr);
85 const DominatorTree *DT = nullptr);
94 const DominatorTree *DT = nullptr);
100 const DominatorTree *DT = nullptr);
107 const DominatorTree *DT = nullptr);
114 const DominatorTree *DT = nullptr);
121 const DominatorTree *DT = nullptr);
135 const DominatorTree *DT = nullptr);
[all …]
/external/llvm/lib/Transforms/Utils/
DLCSSA.cpp63 static bool processInstruction(Loop &L, Instruction &Inst, DominatorTree &DT, in processInstruction() argument
101 DomTreeNode *DomNode = DT.getNode(DomBB); in processInstruction()
112 if (!DT.dominates(DomNode, DT.getNode(ExitBB))) in processInstruction()
193 processInstruction(*OtherLoop, *I, DT, EBs, PredCache, LI); in processInstruction()
208 DominatorTree &DT, in blockDominatesAnExit() argument
210 DomTreeNode *DomNode = DT.getNode(BB); in blockDominatesAnExit()
212 return DT.dominates(DomNode, DT.getNode(EB)); in blockDominatesAnExit()
216 bool llvm::formLCSSA(Loop &L, DominatorTree &DT, LoopInfo *LI, in formLCSSA() argument
235 if (!blockDominatesAnExit(BB, DT, ExitBlocks)) in formLCSSA()
246 Changed |= processInstruction(L, I, DT, ExitBlocks, PredCache, LI); in formLCSSA()
[all …]
DLoopUnroll.cpp84 DominatorTree *DT) { in foldBlockIntoPredecessor() argument
117 if (DT) in foldBlockIntoPredecessor()
118 if (DomTreeNode *DTN = DT->getNode(BB)) { in foldBlockIntoPredecessor()
119 DomTreeNode *PredDTN = DT->getNode(OnlyPred); in foldBlockIntoPredecessor()
122 DT->changeImmediateDominator(DI, PredDTN); in foldBlockIntoPredecessor()
124 DT->eraseNode(BB); in foldBlockIntoPredecessor()
206 DominatorTree *DT, AssumptionCache *AC, in UnrollLoop() argument
301 UnrollRuntimeEpilog, LI, SE, DT, in UnrollLoop()
469 if (DT) { in UnrollLoop()
471 DT->addNewBlock(New, Latches[It - 1]); in UnrollLoop()
[all …]
DBreakCriticalEdges.cpp46 auto *DT = DTWP ? &DTWP->getDomTree() : nullptr; in runOnFunction() local
50 SplitAllCriticalEdges(F, CriticalEdgeSplittingOptions(DT, LI)); in runOnFunction()
182 auto *DT = Options.DT; in SplitCriticalEdge() local
184 if (!DT && !LI) in SplitCriticalEdge()
212 if (DT) { in SplitCriticalEdge()
213 DomTreeNode *TINode = DT->getNode(TIBB); in SplitCriticalEdge()
219 DomTreeNode *NewBBNode = DT->addNewBlock(NewBB, TIBB); in SplitCriticalEdge()
224 DestBBNode = DT->getNode(DestBB); in SplitCriticalEdge()
226 if (DomTreeNode *OPNode = DT->getNode(OtherPreds.back())) in SplitCriticalEdge()
227 NewBBDominatesDestBB = DT->dominates(DestBBNode, OPNode); in SplitCriticalEdge()
[all …]
DLoopSimplify.cpp118 BasicBlock *llvm::InsertPreheaderForLoop(Loop *L, DominatorTree *DT, in InsertPreheaderForLoop() argument
140 PreheaderBB = SplitBlockPredecessors(Header, OutsideBlocks, ".preheader", DT, in InsertPreheaderForLoop()
160 DominatorTree *DT, LoopInfo *LI, in rewriteLoopExitBlock() argument
176 NewExitBB = SplitBlockPredecessors(Exit, LoopBlocks, ".loopexit", DT, LI, in rewriteLoopExitBlock()
207 static PHINode *findPHIToPartitionLoops(Loop *L, DominatorTree *DT, in findPHIToPartitionLoops() argument
213 if (Value *V = SimplifyInstruction(PN, DL, nullptr, DT, AC)) { in findPHIToPartitionLoops()
250 DominatorTree *DT, LoopInfo *LI, in separateNestedLoop() argument
261 PHINode *PN = findPHIToPartitionLoops(L, DT, AC); in separateNestedLoop()
286 DT, LI, PreserveLCSSA); in separateNestedLoop()
317 if (DT->dominates(Header, P)) in separateNestedLoop()
[all …]
/external/llvm/lib/CodeGen/
DMachineDominators.cpp52 DT->recalculate(F); in runOnMachineFunction()
60 DT = new DominatorTreeBase<MachineBasicBlock>(false); in MachineDominatorTree()
64 delete DT; in ~MachineDominatorTree()
68 DT->releaseMemory(); in releaseMemory()
77 DT->print(OS); in print()
97 MachineDomTreeNode *SuccDTNode = DT->getNode(Succ); in applySplitCriticalEdges()
120 if (!DT->dominates(SuccDTNode, DT->getNode(PredBB))) { in applySplitCriticalEdges()
132 MachineDomTreeNode *NewDTNode = DT->addNewBlock(Edge.NewBB, Edge.FromBB); in applySplitCriticalEdges()
138 DT->changeImmediateDominator(DT->getNode(Edge.ToBB), NewDTNode); in applySplitCriticalEdges()
149 OtherDT.DT->recalculate(F); in verifyDomTree()
/external/llvm/lib/Transforms/Scalar/
DSink.cpp38 DominatorTree &DT) { in AllUsesDominatedByBlock() argument
54 if (!DT.dominates(BB, UseBlock)) in AllUsesDominatedByBlock()
96 DominatorTree &DT, LoopInfo &LI) { in IsAcceptableTarget() argument
122 if (!DT.dominates(Inst->getParent(), SuccToSinkTo)) in IsAcceptableTarget()
134 return AllUsesDominatedByBlock(Inst, SuccToSinkTo, DT); in IsAcceptableTarget()
141 DominatorTree &DT, LoopInfo &LI, AAResults &AA) { in SinkInstruction() argument
168 DomTreeNode *DTN = DT.getNode(Inst->getParent()); in SinkInstruction()
173 IsAcceptableTarget(Inst, Candidate, DT, LI)) in SinkInstruction()
181 if (IsAcceptableTarget(Inst, *I, DT, LI)) in SinkInstruction()
200 static bool ProcessBlock(BasicBlock &BB, DominatorTree &DT, LoopInfo &LI, in ProcessBlock() argument
[all …]
DLICM.cpp86 static bool hoist(Instruction &I, const DominatorTree *DT, const Loop *CurLoop,
88 static bool sink(Instruction &I, const LoopInfo *LI, const DominatorTree *DT,
92 const DominatorTree *DT,
104 DominatorTree *DT, TargetLibraryInfo *TLI,
110 bool runOnLoop(Loop *L, AliasAnalysis *AA, LoopInfo *LI, DominatorTree *DT,
183 auto *DT = FAM.getCachedResult<DominatorTreeAnalysis>(*F); in run() local
186 assert((AA && LI && DT && TLI && SE) && "Analyses for LICM not available"); in run()
190 if (!LICM.runOnLoop(&L, AA, LI, DT, TLI, SE, true)) in run()
215 LoopInfo *LI, DominatorTree *DT, in runOnLoop() argument
220 assert(L->isLCSSAForm(*DT) && "Loop is not in LCSSA form."); in runOnLoop()
[all …]
DLoopRotation.cpp59 DominatorTree *DT; member in __anon3607f79c0111::LoopRotate
65 DominatorTree *DT, ScalarEvolution *SE) in LoopRotate() argument
66 : MaxHeaderSize(MaxHeaderSize), LI(LI), TTI(TTI), AC(AC), DT(DT), SE(SE) { in LoopRotate()
369 if (DT) { in rotateLoop()
374 DomTreeNode *OrigHeaderNode = DT->getNode(OrigHeader); in rotateLoop()
377 DomTreeNode *OrigPreheaderNode = DT->getNode(OrigPreheader); in rotateLoop()
379 DT->changeImmediateDominator(HeaderChildren[I], OrigPreheaderNode); in rotateLoop()
381 assert(DT->getNode(Exit)->getIDom() == OrigPreheaderNode); in rotateLoop()
382 assert(DT->getNode(NewHeader)->getIDom() == OrigPreheaderNode); in rotateLoop()
385 DT->changeImmediateDominator(OrigHeader, OrigLatch); in rotateLoop()
[all …]
/external/llvm/lib/Analysis/
DPHITransAddr.cpp147 const DominatorTree *DT) { in PHITranslateSubExpr() argument
192 Value *PHIIn = PHITranslateSubExpr(Cast->getOperand(0), CurBB, PredBB, DT); in PHITranslateSubExpr()
210 (!DT || DT->dominates(CastI->getParent(), PredBB))) in PHITranslateSubExpr()
221 Value *GEPOp = PHITranslateSubExpr(GEP->getOperand(i), CurBB, PredBB, DT); in PHITranslateSubExpr()
233 GEPOps, DL, TLI, DT, AC)) { in PHITranslateSubExpr()
247 (!DT || DT->dominates(GEPI->getParent(), PredBB))) { in PHITranslateSubExpr()
263 Value *LHS = PHITranslateSubExpr(Inst->getOperand(0), CurBB, PredBB, DT); in PHITranslateSubExpr()
283 if (Value *Res = SimplifyAddInst(LHS, RHS, isNSW, isNUW, DL, TLI, DT, AC)) { in PHITranslateSubExpr()
300 (!DT || DT->dominates(BO->getParent(), PredBB))) in PHITranslateSubExpr()
317 const DominatorTree *DT, in PHITranslateValue() argument
[all …]
/external/dtc/
Ddtdiff11 DT="$1"
12 if [ -d "$DT" ]; then
14 elif [ -f "$DT" ]; then
15 case "$DT" in
26 echo "Unrecognized format for $DT" >&2
30 $DTC -I $IFORMAT -O dts -qq -f -s -o - "$DT"
/external/llvm/include/llvm/Transforms/Utils/
DBasicBlockUtils.h52 bool MergeBlockIntoPredecessor(BasicBlock *BB, DominatorTree *DT = nullptr,
77 DominatorTree *DT; member
83 CriticalEdgeSplittingOptions(DominatorTree *DT = nullptr,
85 : DT(DT), LI(LI), MergeIdenticalEdges(false), in DT() function
173 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr);
180 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr);
199 DominatorTree *DT = nullptr,
219 DominatorTree *DT = nullptr,
253 DominatorTree *DT = nullptr,

12345678910>>...20