Searched defs:Latch (Results 1 - 14 of 14) sorted by relevance

/external/llvm/include/llvm/Analysis/
H A DLoopInfoImpl.h163 BlockT *Latch = nullptr; local
167 if (Latch) return nullptr;
168 Latch = N;
172 return Latch;
/external/swiftshader/third_party/LLVM/lib/Analysis/
H A DProfileEstimatorPass.cpp203 BasicBlock *Latch = BBLoop->getLoopLatch(); local
204 if (Latch) {
205 Edge edge = getEdge(Latch,0);
208 edge = getEdge(Latch, BB);
/external/llvm/lib/Transforms/Scalar/
H A DLoopRotation.cpp352 assert(L->getHeader() == NewHeader && "Latch block is our new header");
554 BasicBlock *Latch = L->getLoopLatch(); local
555 if (!Latch || Latch->hasAddressTaken())
558 BranchInst *Jmp = dyn_cast<BranchInst>(Latch->getTerminator());
562 BasicBlock *LastExit = Latch->getSinglePredecessor();
570 if (!shouldSpeculateInstrs(Latch->begin(), Jmp->getIterator(), L))
573 DEBUG(dbgs() << "Folding loop latch " << Latch->getName() << " into "
576 // Hoist the instructions from Latch into LastExit.
577 LastExit->getInstList().splice(BI->getIterator(), Latch
[all...]
H A DLoopUnswitch.cpp1273 BasicBlock *Latch = L->getLoopLatch(); local
1281 if (Latch && DT->dominates(SISucc, Latch))
H A DInductiveRangeCheckElimination.cpp414 BasicBlock *Latch; member in struct:__anon13478::__anon13479::LoopStructure
416 // `Latch's terminator instruction is `LatchBr', and it's `LatchBrExitIdx'th
428 : Tag(""), Header(nullptr), Latch(nullptr), LatchBr(nullptr),
436 Result.Latch = cast<BasicBlock>(Map(Latch));
627 BasicBlock *Latch = L.getLoopLatch(); local
628 if (!L.isLoopExiting(Latch)) {
640 BranchInst *LatchBr = dyn_cast<BranchInst>(Latch->getTerminator());
662 const SCEV *LatchCount = SE.getExitCount(&L, Latch);
814 Result.Latch
[all...]
H A DLoopStrengthReduce.cpp1836 unsigned Entry, Latch; local
1839 Latch = 1;
1842 Latch = 0;
1852 dyn_cast<BinaryOperator>(PH->getIncomingValue(Latch));
1884 NewPH->addIncoming(NewIncr, PH->getIncomingBlock(Latch));
/external/llvm/lib/Transforms/Utils/
H A DLoopUnrollRuntime.cpp66 BasicBlock *Latch = L->getLoopLatch(); local
67 assert(Latch && "Loop must have a latch");
68 BasicBlock *PrologLatch = cast<BasicBlock>(VMap[Latch]);
75 for (BasicBlock *Succ : successors(Latch)) {
94 Value *V = PN->getIncomingValueForBlock(Latch);
156 BasicBlock *Latch = L->getLoopLatch(); local
157 assert(Latch && "Loop must have a latch");
158 BasicBlock *EpilogLatch = cast<BasicBlock>(VMap[Latch]);
166 // Latch
184 // PN = PHI [I, Latch]
278 BasicBlock *Latch = L->getLoopLatch(); local
487 BasicBlock *Latch = L->getLoopLatch(); local
[all...]
H A DLoopUtils.cpp533 auto *Latch = TheLoop->getLoopLatch(); local
534 if (!Preheader || !Latch)
539 Phi->getBasicBlockIndex(Latch) < 0)
544 auto *Previous = dyn_cast<Instruction>(Phi->getIncomingValueForBlock(Latch));
/external/swiftshader/third_party/LLVM/lib/Transforms/Scalar/
H A DLoopUnswitch.cpp944 BasicBlock *Latch = L->getLoopLatch(); local
949 if (Latch && DT->dominates(SISucc, Latch))
H A DLoopStrengthReduce.cpp1520 unsigned Entry, Latch; local
1523 Latch = 1;
1526 Latch = 0;
1536 dyn_cast<BinaryOperator>(PH->getIncomingValue(Latch));
1568 NewPH->addIncoming(NewIncr, PH->getIncomingBlock(Latch));
/external/swiftshader/third_party/LLVM/include/llvm/Analysis/
H A DLoopInfo.h324 BlockT *Latch = 0; local
328 if (Latch) return 0;
329 Latch = N;
333 return Latch;
/external/llvm/lib/Target/Hexagon/
H A DHexagonHardwareLoops.cpp373 if (MachineBasicBlock *Latch = L->getLoopLatch()) {
374 if (L->isLoopExiting(Latch))
375 return Latch;
389 MachineBasicBlock *Latch = L->getLoopLatch(); local
391 if (!Header || !Preheader || !Latch || !ExitingBlock)
415 if (Phi->getOperand(i+1).getMBB() != Latch)
573 MachineBasicBlock *Latch = L->getLoopLatch(); local
578 else if (MBB == Latch)
595 if (ExitingBlock != Latch && (TB == Latch || F
1571 MachineBasicBlock *Latch = L->getLoopLatch(); local
1820 MachineBasicBlock *Latch = L->getLoopLatch(); local
[all...]
/external/llvm/lib/Analysis/
H A DLoopAccessAnalysis.cpp1744 BasicBlock* Latch = TheLoop->getLoopLatch(); local
1745 return !DT->dominates(BB, Latch);
/external/llvm/lib/Transforms/Vectorize/
H A DLoopVectorize.cpp2729 BasicBlock *Latch = L->getLoopLatch(); local
2732 if (!Latch)
2733 Latch = Header;
2739 Builder.SetInsertPoint(Latch->getTerminator());
2744 Induction->addIncoming(Next, Latch);
2750 Latch->getTerminator()->eraseFromParent();
3570 BasicBlock *Latch = OrigLoop->getLoopLatch(); local
3571 Value *LoopVal = Phi->getIncomingValueForBlock(Latch);
3790 auto *Latch = OrigLoop->getLoopLatch(); local
3794 auto *Previous = Phi->getIncomingValueForBlock(Latch);
4751 BasicBlock *Latch = TheLoop->getLoopLatch(); local
[all...]

Completed in 722 milliseconds