Home
last modified time | relevance | path

Searched refs:getTerminator (Results 1 – 25 of 253) sorted by relevance

1234567891011

/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DFlattenCFG.cpp149 BranchInst *PBI = dyn_cast<BranchInst>(Pred->getTerminator()); in FlattenParallelAndOr()
221 BranchInst *BPS = dyn_cast<BranchInst>(PS->getTerminator()); in FlattenParallelAndOr()
232 Instruction *TBB = LastCondBlock->getTerminator(); in FlattenParallelAndOr()
235 BranchInst *PBI1 = dyn_cast<BranchInst>(PS1->getTerminator()); in FlattenParallelAndOr()
236 BranchInst *PBI2 = dyn_cast<BranchInst>(PS2->getTerminator()); in FlattenParallelAndOr()
241 (PS1->getTerminator()->getSuccessor(0) != PS2)) { in FlattenParallelAndOr()
244 (PS2->getTerminator()->getSuccessor(0) != PS1)) in FlattenParallelAndOr()
252 auto *BI = cast<BranchInst>(CurrBlock->getTerminator()); in FlattenParallelAndOr()
289 PBI = cast<BranchInst>(FirstCondBlock->getTerminator()); in FlattenParallelAndOr()
322 Instruction *PTI2 = Head2->getTerminator(); in CompareIfRegionBlock()
[all …]
H A DLoopUnrollRuntime.cpp167 Instruction *InsertPt = PrologExit->getTerminator(); in ConnectProlog()
184 if (hasBranchWeightMD(*Latch->getTerminator())) { in ConnectProlog()
304 Instruction *InsertPt = NewExit->getTerminator(); in ConnectEpilog()
314 if (hasBranchWeightMD(*Latch->getTerminator())) { in ConnectEpilog()
368 InsertTop->getTerminator()->setSuccessor(0, NewBB); in CloneLoopBlocks()
384 VMap.erase((*BB)->getTerminator()); in CloneLoopBlocks()
602 BranchInst *LatchBR = cast<BranchInst>(Latch->getTerminator()); in UnrollRuntimeLoopRemainder()
716 auto *NewExitTerminator = NewExit->getTerminator(); in UnrollRuntimeLoopRemainder()
764 PreHeaderBR = cast<BranchInst>(PreHeader->getTerminator()); in UnrollRuntimeLoopRemainder()
798 if (hasBranchWeightMD(*Latch->getTerminator())) { in UnrollRuntimeLoopRemainder()
[all …]
H A DBasicBlockUtils.cpp196 Instruction *PTI = PredBB->getTerminator(); in MergeBlockIntoPredecessor()
275 Instruction *STI = BB->getTerminator(); in MergeBlockIntoPredecessor()
755 Instruction *LatchTerm = BB->getTerminator(); in SplitEdge()
871 setUnwindEdgeTo(BB->getTerminator(), NewBB); in ehAwareSplitEdge()
1007 Instruction *TI = BB.getTerminator(); in SplitAllCriticalEdges()
1606 return ThenBlock->getTerminator(); in SplitBlockAndInsertIfThen()
1619 return ElseBlock->getTerminator(); in SplitBlockAndInsertIfElse()
1633 *ThenTerm = ThenBlock->getTerminator(); in SplitBlockAndInsertIfThenElse()
1634 *ElseTerm = ElseBlock->getTerminator(); in SplitBlockAndInsertIfThenElse()
1736 LoopBody->getTerminator()->eraseFromParent(); in SplitBlockAndInsertSimpleForLoop()
[all …]
H A DUnifyFunctionExitNodes.cpp28 if (isa<UnreachableInst>(I.getTerminator())) in unifyUnreachableBlocks()
50 if (isa<ReturnInst>(I.getTerminator())) in unifyReturnBlocks()
79 PN->addIncoming(BB->getTerminator()->getOperand(0), BB); in unifyReturnBlocks()
H A DBreakCriticalEdges.cpp158 return isa<IndirectBrInst>(Pred->getTerminator()); in SplitKnownCriticalEdge()
319 Instruction *PredTerm = PredBB->getTerminator(); in findIBRPredecessor()
347 auto *IBI = dyn_cast<IndirectBrInst>(BB.getTerminator()); in SplitIndirectBrCriticalEdges()
379 EdgeProbabilities.reserve(Target->getTerminator()->getNumSuccessors()); in SplitIndirectBrCriticalEdges()
380 for (unsigned I = 0, E = Target->getTerminator()->getNumSuccessors(); in SplitIndirectBrCriticalEdges()
408 Src->getTerminator()->replaceUsesOfWith(Target, DirectSucc); in SplitIndirectBrCriticalEdges()
430 assert(&*End == Target->getTerminator() && in SplitIndirectBrCriticalEdges()
H A DLoopSimplify.cpp130 if (isa<IndirectBrInst>(P->getTerminator())) in InsertPreheaderForLoop()
259 if (isa<IndirectBrInst>(PN->getIncomingBlock(i)->getTerminator())) in separateNestedLoop()
378 if (isa<IndirectBrInst>(P->getTerminator())) in insertUniqueBackedgeBlock()
453 Instruction *TI = BB->getTerminator(); in insertUniqueBackedgeBlock()
459 BEBlock->getTerminator()->setMetadata(LLVMContext::MD_loop, LoopMD); in insertUniqueBackedgeBlock()
508 Instruction *TI = P->getTerminator(); in simplifyOneLoop()
524 if (BranchInst *BI = dyn_cast<BranchInst>(ExitingBlock->getTerminator())) in simplifyOneLoop()
636 BranchInst *BI = dyn_cast<BranchInst>(ExitingBlock->getTerminator()); in simplifyOneLoop()
651 Preheader ? Preheader->getTerminator() : nullptr, MSSAU, SE)) { in simplifyOneLoop()
884 if (isa<IndirectBrInst>(Pred->getTerminator())) {
[all …]
H A DLoopVersioning.cpp67 MemRuntimeCheck = addRuntimeChecks(RuntimeCheckBB->getTerminator(), in versionLoop()
73 Exp.expandCodeForPredicate(&Preds, RuntimeCheckBB->getTerminator()); in versionLoop()
79 Builder.SetInsertPoint(RuntimeCheckBB->getTerminator()); in versionLoop()
95 SplitBlock(RuntimeCheckBB, RuntimeCheckBB->getTerminator(), DT, LI, in versionLoop()
109 Instruction *OrigTerm = RuntimeCheckBB->getTerminator(); in versionLoop()
H A DLoopPeel.cpp289 return !isa<UnreachableInst>(BB->getTerminator()); in peelToTurnInvariantLoadsDerefencebale()
328 return LoadUsers.contains(Exiting->getTerminator()); in peelToTurnInvariantLoadsDerefencebale()
458 auto *BI = dyn_cast<BranchInst>(BB->getTerminator()); in countToEliminateCompares()
481 BranchInst *LatchBR = dyn_cast<BranchInst>(Latch->getTerminator()); in violatesLegacyMultiExitLoopCheck()
662 Instruction *Term = ExitingBlock->getTerminator(); in initBranchWeights()
771 InsertTop->getTerminator()->setSuccessor(0, cast<BasicBlock>(VMap[Header])); in cloneLoopBlocks()
779 auto *LatchTerm = cast<Instruction>(NewLatch->getTerminator()); in cloneLoopBlocks()
962 SplitBlock(InsertTop, InsertTop->getTerminator(), &DT, LI); in peelLoop()
964 SplitBlock(InsertBot, InsertBot->getTerminator(), &DT, LI); in peelLoop()
971 cast<Instruction>(cast<BasicBlock>(Latch)->getTerminator()); in peelLoop()
[all …]
H A DLoopUnrollAndJam.cpp89 Instruction *TI = BB->getTerminator(); in partitionLoopBlocks()
297 BranchInst *BI = dyn_cast<BranchInst>(LatchBlock->getTerminator()); in UnrollAndJamLoop()
302 SubLoop->getLoopLatch()->getTerminator()->getSuccessor(0)); in UnrollAndJamLoop()
332 Header, LatchBlock, ForeBlocksLast[0]->getTerminator(), AftBlocks); in UnrollAndJamLoop()
487 cast<BranchInst>(ForeBlocksLast.back()->getTerminator()); in UnrollAndJamLoop()
505 cast<BranchInst>(ForeBlocksLast[It - 1]->getTerminator()); in UnrollAndJamLoop()
512 cast<BranchInst>(SubLoopBlocksLast.back()->getTerminator()); in UnrollAndJamLoop()
524 cast<BranchInst>(SubLoopBlocksLast[It - 1]->getTerminator()); in UnrollAndJamLoop()
536 BranchInst *AftTerm = cast<BranchInst>(AftBlocksLast.back()->getTerminator()); in UnrollAndJamLoop()
552 cast<BranchInst>(AftBlocksLast[It - 1]->getTerminator()); in UnrollAndJamLoop()
H A DLoopRotationUtils.cpp215 BranchInst *BI = dyn_cast<BranchInst>(Header->getTerminator()); in profitableToRotateLoopExitingLatch()
241 BranchInst *BI = dyn_cast<BranchInst>(Latch->getTerminator()); in canRotateDeoptimizingLatchExit()
416 BranchInst *BI = dyn_cast<BranchInst>(OrigHeader->getTerminator()); in rotateLoop()
538 Instruction *LoopEntryBranch = OrigPreheader->getTerminator(); in rotateLoop()
567 OrigPreheader->getTerminator()->getDbgValueRange()) in rotateLoop()
815 BranchInst *PHBI = cast<BranchInst>(OrigPreheader->getTerminator()); in rotateLoop()
846 isa<IndirectBrInst>(ExitPred->getTerminator())) in rotateLoop()
991 BranchInst *Jmp = dyn_cast<BranchInst>(Latch->getTerminator()); in simplifyLoopLatch()
999 BranchInst *BI = dyn_cast<BranchInst>(LastExit->getTerminator()); in simplifyLoopLatch()
/freebsd-14.2/contrib/llvm-project/llvm/tools/llvm-stress/
H A Dllvm-stress.cpp345 Value *V = new LoadInst(Ty, Ptr, "L", BB->getTerminator()); in Act()
365 new StoreInst(Val, Ptr, BB->getTerminator()); in Act()
387 Instruction* Term = BB->getTerminator(); in Act()
485 "E", BB->getTerminator()); in Act()
517 BB->getTerminator()); in Act()
533 "I", BB->getTerminator()); in Act()
559 new BitCastInst(V, DestTy, "PC", BB->getTerminator())); in Act()
568 new BitCastInst(V, DestTy, "BC", BB->getTerminator())); in Act()
663 BB->getTerminator()); in Act()
719 Instr->moveBefore(Curr->getTerminator()); in IntroduceControlFlow()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUUnifyDivergentExitNodes.cpp128 if (!UA.isUniform(Top->getTerminator())) in isUniformlyReached()
167 PN->addIncoming(BB->getTerminator()->getOperand(0), BB); in unifyReturnBlockSet()
170 BB->getTerminator()->eraseFromParent(); in unifyReturnBlockSet()
195 !isa<BranchInst>(PDT.getRoot()->getTerminator()))) in run()
219 if (isa<ReturnInst>(BB->getTerminator())) { in run()
222 } else if (isa<UnreachableInst>(BB->getTerminator())) { in run()
225 } else if (BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator())) { in run()
261 BB->getTerminator()->eraseFromParent(); in run()
282 BB->getTerminator()->eraseFromParent(); in run()
296 UnreachableBlock->getTerminator()->eraseFromParent(); in run()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DJumpThreading.cpp454 if (BB->getTerminator() == StopAt) { in getJumpThreadDuplicationCost()
931 Instruction *BBTerm = BB->getTerminator(); in getBestDestForJumpOnUndef()
987 Instruction *Terminator = BB->getTerminator(); in processBlock()
1029 Instruction *BBTerm = BB->getTerminator(); in processBlock()
1403 if (isa<IndirectBrInst>(P->getTerminator())) in simplifyPartiallyRedundantLoad()
1424 UnavailablePred->getTerminator()); in simplifyPartiallyRedundantLoad()
1657 Instruction *Term = BB->getTerminator(); in processThreadableEdges()
1723 MostPopularDest = BB->getTerminator()-> in processThreadableEdges()
2199 if (isa<IndirectBrInst>(P->getTerminator())) in maybethreadThroughTwoBasicBlocks()
2514 const Instruction *TI = BB->getTerminator(); in doesBlockHaveProfileData()
[all …]
H A DCallSiteSplitting.cpp131 auto *BI = dyn_cast<BranchInst>(From->getTerminator()); in recordCondition()
143 Conditions.push_back({Cmp, From->getTerminator()->getSuccessor(0) == To in recordCondition()
196 if (Preds.size() != 2 || isa<IndirectBrInst>(Preds[0]->getTerminator()) || in canSplitCallSite()
197 isa<IndirectBrInst>(Preds[1]->getTerminator())) in canSplitCallSite()
251 Instruction *TI = SplitBB->getTerminator(); in copyMustTailReturn()
332 cast<CallBase>(&*std::prev(SplitBlock->getTerminator()->getIterator())); in splitCallSite()
366 BB->getTerminator()->eraseFromParent(); in splitCallSite()
509 auto IE = BB.getTerminator()->getIterator(); in doCallSiteSplitting()
514 while (II != IE && &*II != BB.getTerminator()) { in doCallSiteSplitting()
H A DIndVarSimplify.cpp454 auto *TermInst = IncomingBB->getTerminator(); in rewriteFirstIterationLoopExitValues()
691 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in isLoopExitTestBasedOn()
930 ExitingBB->getTerminator()); in genLoopLimit()
1091 BasicBlock::iterator I(Preheader->getTerminator()); in sinkUnusedInvariants()
1240 Rewriter.setInsertPoint(Preheader->getTerminator()); in createInvariantCond()
1246 IRBuilder<> Builder(Preheader->getTerminator()); in createInvariantCond()
1261 auto *BI = cast<BranchInst>(ExitingBB->getTerminator()); in createReplacement()
1634 auto *BI = cast<BranchInst>(ExitingBB->getTerminator()); in optimizeLoopExits()
1847 IRBuilder<> B(L->getLoopPreheader()->getTerminator()); in predicateLoopExits()
1852 auto *BI = cast<BranchInst>(ExitingBB->getTerminator()); in predicateLoopExits()
[all …]
H A DLoopInterchange.cpp558 dyn_cast<BranchInst>(OuterLoopHeader->getTerminator()); in tightlyNested()
633 dyn_cast<BranchInst>(InnerLoopLatch->getTerminator()); in isLoopStructureUnderstood()
777 !isa<BranchInst>(InnerLoopLatch->getTerminator()) || in currentLimitations()
1377 I.moveBeforePreserving(OuterLoopHeader->getTerminator()); in transform()
1395 FromBB->getTerminator()->getIterator()); in moveBBContents()
1408 moveBBContents(BB2, BB1->getTerminator()); in swapBBContents()
1412 I->insertBefore(BB2->getTerminator()); in swapBBContents()
1574 dyn_cast<BranchInst>(OuterLoopLatch->getTerminator()); in adjustLoopBranches()
1576 dyn_cast<BranchInst>(InnerLoopLatch->getTerminator()); in adjustLoopBranches()
1578 dyn_cast<BranchInst>(OuterLoopHeader->getTerminator()); in adjustLoopBranches()
[all …]
H A DLoopIdiomRecognize.cpp1020 IRBuilder<> Builder(Preheader->getTerminator()); in processLoopStridedStore()
1254 IRBuilder<> Builder(Preheader->getTerminator()); in processLoopStoreOfLoopLoad()
1880 if (!PH || &PH->front() != PH->getTerminator()) in recognizePopcount()
2024 auto *LbBr = cast<BranchInst>(Body->getTerminator()); in transformLoopToCountable()
2226 if (!match(LoopHeaderBB->getTerminator(), in detectShiftUntilBitTestIdiom()
2379 IRBuilder<> Builder(LoopPreheaderBB->getTerminator()); in recognizeShiftUntilBitTest()
2501 Builder.SetInsertPoint(LoopHeaderBB->getTerminator()); in recognizeShiftUntilBitTest()
2510 LoopHeaderBB->getTerminator()->eraseFromParent(); in recognizeShiftUntilBitTest()
2585 if (!match(LoopHeaderBB->getTerminator(), in detectShiftUntilZeroIdiom()
2752 IRBuilder<> Builder(LoopPreheaderBB->getTerminator()); in recognizeShiftUntilZero()
[all …]
H A DLoopFuse.cpp827 WorkList.emplace_back(Pred->getTerminator()); in peelFusionCandidate()
1192 if (&I == FC1Preheader->getTerminator()) in collectMovablePreheaderInsts()
1477 FC0.Preheader->getTerminator()->getIterator()); in movePreheaderInsts()
1633 FC0.ExitingBlock->getTerminator()->replaceUsesOfWith(FC1.Preheader, in performFusion()
1644 FC0.ExitingBlock->getTerminator()->replaceUsesOfWith(FC0.ExitBlock, in performFusion()
1648 FC0.ExitBlock->getTerminator()->eraseFromParent(); in performFusion()
1656 FC1.Preheader->getTerminator()->eraseFromParent(); in performFusion()
1871 FC0ExitBlockSuccessor->getTerminator()->eraseFromParent(); in fuseGuardedLoops()
1917 FC0.ExitingBlock->getTerminator()->replaceUsesOfWith(FC0.ExitBlock, in fuseGuardedLoops()
1933 FC0.ExitBlock->getTerminator()->eraseFromParent(); in fuseGuardedLoops()
[all …]
H A DDivRemPairs.cpp290 if (PredBB && !isa<CatchSwitchInst>(PredBB->getTerminator()) && in optimizeDivRem()
291 isGuaranteedToTransferExecutionToSuccessor(PredBB->getTerminator()) && in optimizeDivRem()
298 DivInst->moveBefore(PredBB->getTerminator()); in optimizeDivRem()
301 RemInst->moveBefore(PredBB->getTerminator()); in optimizeDivRem()
H A DLoopPredication.cpp487 return Preheader->getTerminator(); in findInsertPt()
498 !Expander.isSafeToExpandAt(Op, Preheader->getTerminator())) in findInsertPt()
500 return Preheader->getTerminator(); in findInsertPt()
817 auto *BI = dyn_cast<BranchInst>(LoopLatch->getTerminator()); in parseLoopLatchICmp()
893 auto *LatchTerm = LatchBlock->getTerminator(); in isLoopProfitableToPredicate()
918 auto *Term = ExitingBlock->getTerminator(); in isLoopProfitableToPredicate()
994 if (auto *BI = dyn_cast<BranchInst>(Pred->getTerminator())) in FindWidenableTerminatorAboveLoop()
1080 auto *BI = dyn_cast<BranchInst>(ExitingBB->getTerminator()); in predicateLoopExits()
1125 auto *BI = dyn_cast<BranchInst>(ExitingBB->getTerminator()); in predicateLoopExits()
1232 isGuardAsWidenableBranch(BB->getTerminator())) in runOnLoop()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/
H A DHardwareLoops.cpp407 if (!isa<BranchInst>(Pred->getTerminator())) in CanGenerateTest()
410 auto *BI = cast<BranchInst>(Pred->getTerminator()); in CanGenerateTest()
469 cast<BranchInst>(BB->getTerminator())->isUnconditional()) { in InitLoopCount()
473 if (!SCEVE.isSafeToExpandAt(ExitCount, Predecessor->getTerminator())) in InitLoopCount()
479 if (!SCEVE.isSafeToExpandAt(ExitCount, BB->getTerminator())) { in InitLoopCount()
486 BB->getTerminator()); in InitLoopCount()
505 IRBuilder<> Builder(BeginBB->getTerminator()); in InsertIterationSetup()
518 assert((isa<BranchInst>(BeginBB->getTerminator()) && in InsertIterationSetup()
519 cast<BranchInst>(BeginBB->getTerminator())->isConditional()) && in InsertIterationSetup()
524 auto *LoopGuard = cast<BranchInst>(BeginBB->getTerminator()); in InsertIterationSetup()
H A DMachineLoopInfo.cpp105 if (DebugLoc DL = PHeadBB->getTerminator()->getDebugLoc()) in getStartLoc()
112 return HeadBB->getTerminator()->getDebugLoc(); in getStartLoc()
162 if (const auto *TI = BB->getTerminator()) in getLoopID()
174 const auto *TI = BB->getTerminator(); in getLoopID()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86LowerAMXIntrinsics.cpp182 B.SetInsertPoint(ColBody->getTerminator()); in createTileLoadStoreLoops()
193 B.SetInsertPoint(RowLoopHeader->getTerminator()); in createTileLoadStoreLoops()
201 B.SetInsertPoint(ColLoopHeader->getTerminator()); in createTileLoadStoreLoops()
210 B.SetInsertPoint(ColBody->getTerminator()); in createTileLoadStoreLoops()
226 B.SetInsertPoint(ColBody->getTerminator()); in createTileLoadStoreLoops()
287 B.SetInsertPoint(ColBody->getTerminator()); in createTileDPLoops()
320 B.SetInsertPoint(RowLoopHeader->getTerminator()); in createTileDPLoops()
337 B.SetInsertPoint(ColLoopHeader->getTerminator()); in createTileDPLoops()
350 B.SetInsertPoint(InnerLoopHeader->getTerminator()); in createTileDPLoops()
354 B.SetInsertPoint(InnerBody->getTerminator()); in createTileDPLoops()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Analysis/
H A DBranchProbabilityInfo.cpp380 const Instruction *TI = BB->getTerminator(); in calcMetadataWeights()
516 const BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator()); in calcPointerHeuristics()
566 const BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator()); in computeUnlikelySuccessors()
780 if (isa<UnreachableInst>(BB->getTerminator()) || in getInitialEstimatedBlockWeight()
877 assert(BB->getTerminator()->getNumSuccessors() > 1 && in calcEstimatedHeuristics()
965 const BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator()); in calcZeroHeuristics()
1031 const BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator()); in calcFloatingPointHeuristics()
1134 assert(Src->getTerminator()->getNumSuccessors() == Probs.size()); in setEdgeProbability()
1162 unsigned NumSuccessors = Src->getTerminator()->getNumSuccessors(); in copyEdgeProbabilities()
1179 assert(Src->getTerminator()->getNumSuccessors() == 2); in swapSuccEdgesProbabilities()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/IPO/
H A DHotColdSplitting.cpp107 const Instruction *I = BB.getTerminator(); in blockEndsInUnreachable()
115 BranchInst *CondBr = dyn_cast<BranchInst>(BB->getTerminator()); in analyzeProfMetadata()
139 if (BB.isEHPad() || isa<ResumeInst>(BB.getTerminator())) in unlikelyExecuted()
154 dyn_cast_or_null<CallInst>(BB.getTerminator()->getPrevNode())) in unlikelyExecuted()
173 auto Term = BB.getTerminator(); in mayExtractBlock()
277 if (&I != BB->getTerminator()) in getOutliningBenefit()
303 NoBlocksReturn &= isa<UnreachableInst>(BB->getTerminator()); in getOutliningPenalty()

1234567891011