Home
last modified time | relevance | path

Searched refs:Latch (Results 1 – 25 of 53) sorted by relevance

123

/external/swiftshader/third_party/llvm-7.0/llvm/unittests/Transforms/Vectorize/
DVPlanDominatorTreeTest.cpp54 VPBlockBase *Latch = IfThen->getSingleSuccessor(); in TEST_F() local
55 VPBlockBase *Exit = Latch->getSuccessors()[0] != H in TEST_F()
56 ? Latch->getSuccessors()[0] in TEST_F()
57 : Latch->getSuccessors()[1]; in TEST_F()
63 EXPECT_TRUE(VPDT.isReachableFromEntry(Latch)); in TEST_F()
71 EXPECT_TRUE(VPDT.dominates(PH, Latch)); in TEST_F()
78 EXPECT_TRUE(VPDT.dominates(H, Latch)); in TEST_F()
85 EXPECT_FALSE(VPDT.dominates(IfThen, Latch)); in TEST_F()
92 EXPECT_FALSE(VPDT.dominates(IfElse, Latch)); in TEST_F()
95 EXPECT_FALSE(VPDT.dominates(Latch, PH)); in TEST_F()
[all …]
DVPlanLoopInfoTest.cpp56 VPBlockBase *Latch = IfThen->getSingleSuccessor(); in TEST_F() local
57 VPBlockBase *Exit = Latch->getSuccessors()[0] != H in TEST_F()
58 ? Latch->getSuccessors()[0] in TEST_F()
59 : Latch->getSuccessors()[1]; in TEST_F()
74 EXPECT_TRUE(VPLp->contains(Latch)); in TEST_F()
75 EXPECT_EQ(VPLp, VPLI.getLoopFor(Latch)); in TEST_F()
82 EXPECT_EQ(Latch, VPLp->getLoopLatch()); in TEST_F()
83 EXPECT_EQ(Latch, VPLp->getExitingBlock()); in TEST_F()
/external/swiftshader/third_party/llvm-7.0/llvm/test/Transforms/LoopPredication/
Dprofitability.ll19 Header: ; preds = %entry, %Latch
20 %result.in3 = phi i64* [ %arg2, %entry ], [ %arg, %Latch ]
21 %j2 = phi i64 [ 0, %entry ], [ %j.next, %Latch ]
26 br i1 %innercmp, label %Latch, label %exit, !prof !0
28 Latch: ; preds = %Header
32 deopt: ; preds = %Latch
58 Header: ; preds = %entry, %Latch
59 %result.in3 = phi i64* [ %arg2, %entry ], [ %arg, %Latch ]
60 %j2 = phi i64 [ 0, %entry ], [ %j.next, %Latch ]
65 br i1 %innercmp, label %Latch, label %exit
[all …]
/external/llvm/lib/Transforms/Utils/
DLoopUnrollRuntime.cpp66 BasicBlock *Latch = L->getLoopLatch(); in ConnectProlog() local
67 assert(Latch && "Loop must have a latch"); in ConnectProlog()
68 BasicBlock *PrologLatch = cast<BasicBlock>(VMap[Latch]); in ConnectProlog()
75 for (BasicBlock *Succ : successors(Latch)) { in ConnectProlog()
94 Value *V = PN->getIncomingValueForBlock(Latch); in ConnectProlog()
156 BasicBlock *Latch = L->getLoopLatch(); in ConnectEpilog() local
157 assert(Latch && "Loop must have a latch"); in ConnectEpilog()
158 BasicBlock *EpilogLatch = cast<BasicBlock>(VMap[Latch]); in ConnectEpilog()
198 Value *V = PN->getIncomingValueForBlock(Latch); in ConnectEpilog()
222 for (BasicBlock *Succ : successors(Latch)) { in ConnectEpilog()
[all …]
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Transforms/Utils/
DLoopUnrollRuntime.cpp73 BasicBlock *Latch = L->getLoopLatch(); in ConnectProlog() local
74 assert(Latch && "Loop must have a latch"); in ConnectProlog()
75 BasicBlock *PrologLatch = cast<BasicBlock>(VMap[Latch]); in ConnectProlog()
82 for (BasicBlock *Succ : successors(Latch)) { in ConnectProlog()
97 Value *V = PN.getIncomingValueForBlock(Latch); in ConnectProlog()
171 BasicBlock *Latch = L->getLoopLatch(); in ConnectEpilog() local
172 assert(Latch && "Loop must have a latch"); in ConnectEpilog()
173 BasicBlock *EpilogLatch = cast<BasicBlock>(VMap[Latch]); in ConnectEpilog()
209 Value *V = PN.getIncomingValueForBlock(Latch); in ConnectEpilog()
233 for (BasicBlock *Succ : successors(Latch)) { in ConnectEpilog()
[all …]
DLoopRotationUtils.cpp565 BasicBlock *Latch = L->getLoopLatch(); in simplifyLoopLatch() local
566 if (!Latch || Latch->hasAddressTaken()) in simplifyLoopLatch()
569 BranchInst *Jmp = dyn_cast<BranchInst>(Latch->getTerminator()); in simplifyLoopLatch()
573 BasicBlock *LastExit = Latch->getSinglePredecessor(); in simplifyLoopLatch()
581 if (!shouldSpeculateInstrs(Latch->begin(), Jmp->getIterator(), L)) in simplifyLoopLatch()
584 LLVM_DEBUG(dbgs() << "Folding loop latch " << Latch->getName() << " into " in simplifyLoopLatch()
588 LastExit->getInstList().splice(BI->getIterator(), Latch->getInstList(), in simplifyLoopLatch()
589 Latch->begin(), Jmp->getIterator()); in simplifyLoopLatch()
591 unsigned FallThruPath = BI->getSuccessor(0) == Latch ? 0 : 1; in simplifyLoopLatch()
597 Latch->replaceSuccessorsPhiUsesWith(LastExit); in simplifyLoopLatch()
[all …]
DLoopUnrollPeel.cpp402 BasicBlock *Latch = L->getLoopLatch(); in cloneLoopBlocks() local
444 BasicBlock *NewLatch = cast<BasicBlock>(VMap[Latch]); in cloneLoopBlocks()
465 Value *LatchVal = NewPHI->getIncomingValueForBlock(Latch); in cloneLoopBlocks()
481 Value *LatchVal = PHI->getIncomingValueForBlock(Latch); in cloneLoopBlocks()
485 PHI->addIncoming(LatchVal, cast<BasicBlock>(VMap[Latch])); in cloneLoopBlocks()
514 BasicBlock *Latch = L->getLoopLatch(); in peelLoop() local
579 cast<BranchInst>(cast<BasicBlock>(Latch)->getTerminator()); in peelLoop()
617 DT->changeImmediateDominator(Exit, cast<BasicBlock>(LVMap[Latch])); in peelLoop()
637 Value *NewVal = PHI->getIncomingValueForBlock(Latch); in peelLoop()
DLoopUnrollAndJam.cpp93 static bool processHeaderPhiOperands(BasicBlock *Header, BasicBlock *Latch, in processHeaderPhiOperands() argument
97 Value *V = Phi.getIncomingValueForBlock(Latch); in processHeaderPhiOperands()
119 BasicBlock *Latch, in moveHeaderPhiOperandsToForeBlocks() argument
125 processHeaderPhiOperands(Header, Latch, AftBlocks, in moveHeaderPhiOperandsToForeBlocks()
708 BasicBlock *Latch = L->getLoopLatch(); in isSafeToUnrollAndJam() local
714 if (Latch != Exit) in isSafeToUnrollAndJam()
760 Header, Latch, AftBlocks, [&AftBlocks, &SubLoop](Instruction *I) { in isSafeToUnrollAndJam()
/external/llvm/lib/Transforms/Scalar/
DLoopRotation.cpp554 BasicBlock *Latch = L->getLoopLatch(); in simplifyLoopLatch() local
555 if (!Latch || Latch->hasAddressTaken()) in simplifyLoopLatch()
558 BranchInst *Jmp = dyn_cast<BranchInst>(Latch->getTerminator()); in simplifyLoopLatch()
562 BasicBlock *LastExit = Latch->getSinglePredecessor(); in simplifyLoopLatch()
570 if (!shouldSpeculateInstrs(Latch->begin(), Jmp->getIterator(), L)) in simplifyLoopLatch()
573 DEBUG(dbgs() << "Folding loop latch " << Latch->getName() << " into " in simplifyLoopLatch()
577 LastExit->getInstList().splice(BI->getIterator(), Latch->getInstList(), in simplifyLoopLatch()
578 Latch->begin(), Jmp->getIterator()); in simplifyLoopLatch()
580 unsigned FallThruPath = BI->getSuccessor(0) == Latch ? 0 : 1; in simplifyLoopLatch()
586 Latch->replaceSuccessorsPhiUsesWith(LastExit); in simplifyLoopLatch()
[all …]
DInductiveRangeCheckElimination.cpp414 BasicBlock *Latch; member
428 : Tag(""), Header(nullptr), Latch(nullptr), LatchBr(nullptr), in LoopStructure()
436 Result.Latch = cast<BasicBlock>(Map(Latch)); in map()
627 BasicBlock *Latch = L.getLoopLatch(); in parseLoopStructure() local
628 if (!L.isLoopExiting(Latch)) { in parseLoopStructure()
640 BranchInst *LatchBr = dyn_cast<BranchInst>(Latch->getTerminator()); in parseLoopStructure()
662 const SCEV *LatchCount = SE.getExitCount(&L, Latch); in parseLoopStructure()
814 Result.Latch = Latch; in parseLoopStructure()
1023 auto BBInsertLocation = std::next(Function::iterator(LS.Latch)); in changeIterationSpaceEnd()
1079 NewPHI->addIncoming(PN->getIncomingValueForBlock(LS.Latch), in changeIterationSpaceEnd()
[all …]
/external/llvm/lib/Target/Hexagon/
DHexagonHardwareLoops.cpp373 if (MachineBasicBlock *Latch = L->getLoopLatch()) { in getExitingBlock() local
374 if (L->isLoopExiting(Latch)) in getExitingBlock()
375 return Latch; in getExitingBlock()
389 MachineBasicBlock *Latch = L->getLoopLatch(); in findInductionRegister() local
391 if (!Header || !Preheader || !Latch || !ExitingBlock) in findInductionRegister()
415 if (Phi->getOperand(i+1).getMBB() != Latch) in findInductionRegister()
573 MachineBasicBlock *Latch = L->getLoopLatch(); in getLoopTripCount() local
578 else if (MBB == Latch) in getLoopTripCount()
595 if (ExitingBlock != Latch && (TB == Latch || FB == Latch)) { in getLoopTripCount()
598 bool NotAnalyzed = TII->analyzeBranch(*Latch, LTB, LFB, LCond, false); in getLoopTripCount()
[all …]
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/Hexagon/
DHexagonHardwareLoops.cpp409 MachineBasicBlock *Latch = L->getLoopLatch(); in findInductionRegister() local
411 if (!Header || !Preheader || !Latch || !ExitingBlock) in findInductionRegister()
436 if (Phi->getOperand(i+1).getMBB() != Latch) in findInductionRegister()
606 MachineBasicBlock *Latch = L->getLoopLatch(); in getLoopTripCount() local
611 else if (MBB == Latch) in getLoopTripCount()
628 if (ExitingBlock != Latch && (TB == Latch || FB == Latch)) { in getLoopTripCount()
631 bool NotAnalyzed = TII->analyzeBranch(*Latch, LTB, LFB, LCond, false); in getLoopTripCount()
634 if (TB == Latch) in getLoopTripCount()
1611 MachineBasicBlock *Latch = L->getLoopLatch(); in fixupInductionVariable() local
1614 if (!(Header && Latch && ExitingBlock)) in fixupInductionVariable()
[all …]
/external/swiftshader/third_party/llvm-7.0/llvm/lib/CodeGen/
DMachineLoopInfo.cpp82 if (MachineBasicBlock *Latch = getLoopLatch()) { in findLoopControlBlock() local
83 if (isLoopExiting(Latch)) in findLoopControlBlock()
84 return Latch; in findLoopControlBlock()
/external/swiftshader/third_party/llvm-7.0/llvm/include/llvm/Support/
DParallel.h49 class Latch {
55 explicit Latch(uint32_t Count = 0) : Count(Count) {} in Count()
56 ~Latch() { sync(); } in ~Latch()
76 Latch L;
/external/swiftshader/third_party/LLVM/lib/Analysis/
DProfileEstimatorPass.cpp203 BasicBlock *Latch = BBLoop->getLoopLatch(); in recurseBasicBlock() local
204 if (Latch) { in recurseBasicBlock()
205 Edge edge = getEdge(Latch,0); in recurseBasicBlock()
208 edge = getEdge(Latch, BB); in recurseBasicBlock()
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Transforms/Scalar/
DLoopUnrollAndJamPass.cpp265 BasicBlock *Latch = L->getLoopLatch(); in tryToUnrollAndJamLoop() local
270 if (Latch != Exit || SubLoopLatch != SubLoopExit) in tryToUnrollAndJamLoop()
333 unsigned OuterTripCount = SE.getSmallConstantTripCount(L, Latch); in tryToUnrollAndJamLoop()
334 unsigned OuterTripMultiple = SE.getSmallConstantTripMultiple(L, Latch); in tryToUnrollAndJamLoop()
DInductiveRangeCheckElimination.cpp486 BasicBlock *Latch = nullptr; member
516 Result.Latch = cast<BasicBlock>(Map(Latch)); in map()
832 BasicBlock *Latch = L.getLoopLatch(); in parseLoopStructure() local
833 assert(Latch && "Simplified loops only have one latch!"); in parseLoopStructure()
835 if (Latch->getTerminator()->getMetadata(ClonedLoopTag)) { in parseLoopStructure()
840 if (!L.isLoopExiting(Latch)) { in parseLoopStructure()
852 BranchInst *LatchBr = dyn_cast<BranchInst>(Latch->getTerminator()); in parseLoopStructure()
876 const SCEV *LatchCount = SE.getExitCount(&L, Latch); in parseLoopStructure()
1111 Result.Latch = Latch; in parseLoopStructure()
1328 BasicBlock *BBInsertLocation = LS.Latch->getNextNode(); in changeIterationSpaceEnd()
[all …]
/external/honggfuzz/examples/apache-httpd/corpus_http2/
Dcf39ad89990a73307b83f967a672eab2.00000079.honggfuzz.cov5 If-None-Latch:oce:`�ge
Dbd22d5afb6d4fa368658fd47e5e4025a.00000097.honggfuzz.cov5 If-None-Latch:oce:`ive
D7e6a863426c4faa68658fd56e442648a.00000097.honggfuzz.cov5 If-None-Latch:oce:`ive
/external/honggfuzz/examples/apache-httpd/corpus_http1/
Dcf39ad89990a73307b83f967a672eab2.00000079.honggfuzz.cov5 If-None-Latch:oce:`�ge
D7e6a863426c4faa68658fd56e442648a.00000097.honggfuzz.cov5 If-None-Latch:oce:`ive
Dbd22d5afb6d4fa368658fd47e5e4025a.00000097.honggfuzz.cov5 If-None-Latch:oce:`ive
/external/llvm/include/llvm/Analysis/
DLoopInfoImpl.h163 BlockT *Latch = nullptr; in getLoopLatch() local
167 if (Latch) return nullptr; in getLoopLatch()
168 Latch = N; in getLoopLatch()
172 return Latch; in getLoopLatch()
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Analysis/
DLoopInfo.cpp216 if (BasicBlock *Latch = getLoopLatch()) { in getLoopID() local
217 LoopID = Latch->getTerminator()->getMetadata(LLVMContext::MD_loop); in getLoopID()
255 if (BasicBlock *Latch = getLoopLatch()) { in setLoopID() local
256 Latch->getTerminator()->setMetadata(LLVMContext::MD_loop, LoopID); in setLoopID()

123