Home
last modified time | relevance | path

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

12345678910>>...15

/llvm-project-15.0.7/llvm/unittests/IR/
H A DCFGBuilder.cpp43 if (isa<UnreachableInst>(From->getTerminator())) in ConnectBlocks()
44 From->getTerminator()->eraseFromParent(); in ConnectBlocks()
45 if (!From->getTerminator()) { in ConnectBlocks()
51 SwitchInst *SI = cast<SwitchInst>(From->getTerminator()); in ConnectBlocks()
62 SwitchInst *SI = cast<SwitchInst>(From->getTerminator()); in DisconnectBlocks()
174 EXPECT_TRUE(isa<SwitchInst>(B.getOrAddBlock("a")->getTerminator())); in TEST()
176 EXPECT_TRUE(isa<SwitchInst>(B.getOrAddBlock("d")->getTerminator())); in TEST()
202 EXPECT_TRUE(isa<SwitchInst>(B.getOrAddBlock("a")->getTerminator())); in TEST()
204 EXPECT_TRUE(isa<SwitchInst>(B.getOrAddBlock("d")->getTerminator())); in TEST()
225 EXPECT_TRUE(isa<SwitchInst>(B.getOrAddBlock("a")->getTerminator())); in TEST()
[all …]
/llvm-project-15.0.7/llvm/unittests/Analysis/
H A DDomTreeUpdaterTest.cpp91 EXPECT_EQ(BB0->getTerminator()->getNumSuccessors(), 3u); in TEST()
99 EXPECT_EQ(BB0->getTerminator()->getNumSuccessors(), 2u); in TEST()
103 ASSERT_FALSE(isa<UnreachableInst>(BB3->getTerminator())); in TEST()
195 NewEntry->getTerminator()->eraseFromParent(); in TEST()
272 BB0->getTerminator()->eraseFromParent(); in TEST()
370 BB0->getTerminator()->eraseFromParent(); in TEST()
404 BB0->getTerminator()->eraseFromParent(); in TEST()
489 BB0->getTerminator()->eraseFromParent(); in TEST()
573 NewEntry->getTerminator()->eraseFromParent(); in TEST()
759 BB0->getTerminator()->eraseFromParent(); in TEST()
[all …]
H A DProfileSummaryInfoTest.cpp143 BasicBlock *BB1 = BB0.getTerminator()->getSuccessor(0); in TEST_F()
203 BasicBlock *BB1 = BB0.getTerminator()->getSuccessor(0); in TEST_F()
204 BasicBlock *BB2 = BB0.getTerminator()->getSuccessor(1); in TEST_F()
270 BasicBlock *BB1 = BB0.getTerminator()->getSuccessor(0); in TEST_F()
271 BasicBlock *BB2 = BB0.getTerminator()->getSuccessor(1); in TEST_F()
299 BasicBlock *BB1 = BB0.getTerminator()->getSuccessor(0); in TEST_F()
300 BasicBlock *BB2 = BB0.getTerminator()->getSuccessor(1); in TEST_F()
370 BasicBlock *BB1 = BB0.getTerminator()->getSuccessor(0); in TEST_F()
371 BasicBlock *BB2 = BB0.getTerminator()->getSuccessor(1); in TEST_F()
H A DValueTrackingTest.cpp974 EXPECT_EQ(isGuaranteedNotToBePoison(A, nullptr, BB.getTerminator(), &DT), in TEST_F()
1544 A, M->getDataLayout(), /* Depth */ 0, &AC, F->front().getTerminator()); in TEST_F()
1581 F->front().getTerminator()); in TEST_F()
1597 F->front().getTerminator()); in TEST_F()
1602 F->front().getTerminator()); in TEST_F()
1652 F->front().getTerminator()); in TEST_F()
1657 F->front().getTerminator()); in TEST_F()
1679 F->front().getTerminator()); in TEST_F()
1684 F->front().getTerminator()); in TEST_F()
1712 F->front().getTerminator()); in TEST_F()
[all …]
/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DFlattenCFG.cpp151 BranchInst *PBI = dyn_cast<BranchInst>(Pred->getTerminator()); in FlattenParallelAndOr()
223 BranchInst *BPS = dyn_cast<BranchInst>(PS->getTerminator()); in FlattenParallelAndOr()
234 Instruction *TBB = LastCondBlock->getTerminator(); in FlattenParallelAndOr()
237 BranchInst *PBI1 = dyn_cast<BranchInst>(PS1->getTerminator()); in FlattenParallelAndOr()
238 BranchInst *PBI2 = dyn_cast<BranchInst>(PS2->getTerminator()); in FlattenParallelAndOr()
243 (PS1->getTerminator()->getSuccessor(0) != PS2)) { in FlattenParallelAndOr()
246 (PS2->getTerminator()->getSuccessor(0) != PS1)) in FlattenParallelAndOr()
254 auto *BI = cast<BranchInst>(CurrBlock->getTerminator()); in FlattenParallelAndOr()
292 PBI = cast<BranchInst>(FirstCondBlock->getTerminator()); in FlattenParallelAndOr()
325 Instruction *PTI2 = Head2->getTerminator(); in CompareIfRegionBlock()
[all …]
H A DLoopUnrollRuntime.cpp155 Instruction *InsertPt = PrologExit->getTerminator(); in ConnectProlog()
285 Instruction *InsertPt = NewExit->getTerminator(); in ConnectEpilog()
342 InsertTop->getTerminator()->setSuccessor(0, NewBB); in CloneLoopBlocks()
358 VMap.erase((*BB)->getTerminator()); in CloneLoopBlocks()
473 cast<BranchInst>(OrigLoop->getLoopLatch()->getTerminator()); in updateLatchBranchWeightsForRemainderLoop()
483 auto *RemainderLatchBR = cast<BranchInst>(Latch->getTerminator()); in updateLatchBranchWeightsForRemainderLoop()
582 BranchInst *LatchBR = cast<BranchInst>(Latch->getTerminator()); in UnrollRuntimeLoopRemainder()
696 auto *NewExitTerminator = NewExit->getTerminator(); in UnrollRuntimeLoopRemainder()
744 PreHeaderBR = cast<BranchInst>(PreHeader->getTerminator()); in UnrollRuntimeLoopRemainder()
914 IRBuilder<> B2(NewPreHeader->getTerminator()); in UnrollRuntimeLoopRemainder()
[all …]
H A DBasicBlockUtils.cpp88 isa<UnreachableInst>(BB->getTerminator()) && in detachDeadBlocks()
193 Instruction *PTI = PredBB->getTerminator(); in MergeBlockIntoPredecessor()
261 Instruction *STI = BB->getTerminator(); in MergeBlockIntoPredecessor()
505 isa<UnreachableInst>(BB->getTerminator())) in IsBlockFollowedByDeoptOrUnreachable()
522 Instruction *LatchTerm = BB->getTerminator(); in SplitEdge()
638 setUnwindEdgeTo(BB->getTerminator(), NewBB); in ehAwareSplitEdge()
772 Instruction *TI = BB.getTerminator(); in SplitAllCriticalEdges()
1320 Instruction *UncondBranch = Pred->getTerminator(); in FoldReturnIntoUncondBranch()
1393 Instruction *HeadOldTerm = Head->getTerminator(); in SplitBlockAndInsertIfThenImpl()
1408 CheckTerm = ThenBlock->getTerminator(); in SplitBlockAndInsertIfThenImpl()
[all …]
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 DUnifyFunctionExitNodes.cpp52 if (isa<UnreachableInst>(I.getTerminator())) in unifyUnreachableBlocks()
74 if (isa<ReturnInst>(I.getTerminator())) in unifyReturnBlocks()
103 PN->addIncoming(BB->getTerminator()->getOperand(0), BB); in unifyReturnBlocks()
H A DLoopPeel.cpp91 if (!isa<BranchInst>(Latch->getTerminator())) in canPeel()
174 return !isa<UnreachableInst>(BB->getTerminator()); in peelToTurnInvariantLoadsDerefencebale()
213 return LoadUsers.contains(Exiting->getTerminator()); in peelToTurnInvariantLoadsDerefencebale()
234 auto *BI = dyn_cast<BranchInst>(BB->getTerminator()); in countToEliminateCompares()
340 BranchInst *LatchBR = dyn_cast<BranchInst>(Latch->getTerminator()); in violatesLegacyMultiExitLoopCheck()
636 InsertTop->getTerminator()->setSuccessor(0, cast<BasicBlock>(VMap[Header])); in cloneLoopBlocks()
644 BranchInst *LatchBR = cast<BranchInst>(NewLatch->getTerminator()); in cloneLoopBlocks()
825 SplitBlock(InsertTop, InsertTop->getTerminator(), &DT, LI); in peelLoop()
827 SplitBlock(InsertBot, InsertBot->getTerminator(), &DT, LI); in peelLoop()
838 cast<BranchInst>(cast<BasicBlock>(Latch)->getTerminator()); in peelLoop()
[all …]
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()
454 Instruction *TI = BackedgeBlocks[i]->getTerminator(); in insertUniqueBackedgeBlock()
460 BEBlock->getTerminator()->setMetadata(LoopMDKind, LoopMD); in insertUniqueBackedgeBlock()
509 Instruction *TI = P->getTerminator(); in simplifyOneLoop()
525 if (BranchInst *BI = dyn_cast<BranchInst>(ExitingBlock->getTerminator())) in simplifyOneLoop()
637 BranchInst *BI = dyn_cast<BranchInst>(ExitingBlock->getTerminator()); in simplifyOneLoop()
652 Preheader ? Preheader->getTerminator() : nullptr, MSSAU)) { in simplifyOneLoop()
889 if (isa<IndirectBrInst>(Pred->getTerminator())) {
[all …]
H A DLoopRotationUtils.cpp186 BranchInst *BI = dyn_cast<BranchInst>(Header->getTerminator()); in profitableToRotateLoopExitingLatch()
212 BranchInst *BI = dyn_cast<BranchInst>(Latch->getTerminator()); in canRotateDeoptimizingLatchExit()
270 BranchInst *BI = dyn_cast<BranchInst>(OrigHeader->getTerminator()); in rotateLoop()
385 Instruction *LoopEntryBranch = OrigPreheader->getTerminator(); in rotateLoop()
599 BranchInst *PHBI = cast<BranchInst>(OrigPreheader->getTerminator()); in rotateLoop()
625 isa<IndirectBrInst>(ExitPred->getTerminator())) in rotateLoop()
770 BranchInst *Jmp = dyn_cast<BranchInst>(Latch->getTerminator()); in simplifyLoopLatch()
778 BranchInst *BI = dyn_cast<BranchInst>(LastExit->getTerminator()); in simplifyLoopLatch()
H A DLoopVersioning.cpp66 MemRuntimeCheck = addRuntimeChecks(RuntimeCheckBB->getTerminator(), in versionLoop()
72 Exp.expandCodeForPredicate(&Preds, RuntimeCheckBB->getTerminator()); in versionLoop()
78 Builder.SetInsertPoint(RuntimeCheckBB->getTerminator()); in versionLoop()
94 SplitBlock(RuntimeCheckBB, RuntimeCheckBB->getTerminator(), DT, LI, in versionLoop()
108 Instruction *OrigTerm = RuntimeCheckBB->getTerminator(); in versionLoop()
/llvm-project-15.0.7/llvm/unittests/Transforms/Utils/
H A DBasicBlockUtilsTest.cpp273 Instruction *LatchTerm = SrcBlock->getTerminator(); in TEST()
471 BasicBlock *SplitBB = BB1->getTerminator()->getSuccessor(0); in TEST()
472 ASSERT_EQ(2u, SplitBB->getTerminator()->getNumSuccessors()); in TEST()
478 ASSERT_EQ(2u, BB0->getTerminator()->getNumSuccessors()); in TEST()
479 EXPECT_EQ(BB0->getTerminator()->getSuccessor(1), in TEST()
513 BasicBlock *SplitBB = BB1->getTerminator()->getSuccessor(0); in TEST()
514 ASSERT_EQ(2u, SplitBB->getTerminator()->getNumSuccessors()); in TEST()
521 ASSERT_EQ(2u, BB0->getTerminator()->getNumSuccessors()); in TEST()
525 ASSERT_EQ(1u, BB2->getTerminator()->getNumSuccessors()); in TEST()
527 EXPECT_EQ(BB2->getTerminator()->getSuccessor(0), in TEST()
[all …]
/llvm-project-15.0.7/llvm/tools/llvm-stress/
H A Dllvm-stress.cpp341 Value *V = new LoadInst(Ty, Ptr, "L", BB->getTerminator()); in Act()
363 new StoreInst(Val, Ptr, BB->getTerminator()); in Act()
385 Instruction* Term = BB->getTerminator(); in Act()
486 "E", BB->getTerminator()); in Act()
514 BB->getTerminator()); in Act()
533 "I", BB->getTerminator()); in Act()
561 new BitCastInst(V, DestTy, "PC", BB->getTerminator())); in Act()
570 new BitCastInst(V, DestTy, "BC", BB->getTerminator())); in Act()
667 BB->getTerminator()); in Act()
723 Instr->moveBefore(Curr->getTerminator()); in IntroduceControlFlow()
[all …]
/llvm-project-15.0.7/llvm/lib/Target/AMDGPU/
H A DAMDGPUUnifyDivergentExitNodes.cpp124 if (!DA.isUniform(Top->getTerminator())) in isUniformlyReached()
163 PN->addIncoming(BB->getTerminator()->getOperand(0), BB); in unifyReturnBlockSet()
166 BB->getTerminator()->eraseFromParent(); in unifyReturnBlockSet()
210 if (isa<ReturnInst>(BB->getTerminator())) { in runOnFunction()
213 } else if (isa<UnreachableInst>(BB->getTerminator())) { in runOnFunction()
216 } else if (BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator())) { in runOnFunction()
252 BB->getTerminator()->eraseFromParent(); in runOnFunction()
273 BB->getTerminator()->eraseFromParent(); in runOnFunction()
287 UnreachableBlock->getTerminator()->eraseFromParent(); in runOnFunction()
/llvm-project-15.0.7/llvm/examples/IRTransforms/
H A DSimplifyCFG.cpp145 BranchInst *BI = dyn_cast<BranchInst>(BB.getTerminator()); in eliminateCondBranches_v1()
181 BranchInst *BI = dyn_cast<BranchInst>(BB.getTerminator()); in eliminateCondBranches_v2()
231 if (!match(BB.getTerminator(), in eliminateCondBranches_v3()
247 BranchInst *NewBranch = BranchInst::Create(TakenSucc, BB.getTerminator()); in eliminateCondBranches_v3()
248 BB.getTerminator()->eraseFromParent(); in eliminateCondBranches_v3()
290 I.moveBefore(Pred->getTerminator()); in mergeIntoSinglePredecessor_v1()
294 Pred->getTerminator()->eraseFromParent(); in mergeIntoSinglePredecessor_v1()
341 I.moveBefore(Pred->getTerminator()); in mergeIntoSinglePredecessor_v2()
345 Pred->getTerminator()->eraseFromParent(); in mergeIntoSinglePredecessor_v2()
/llvm-project-15.0.7/llvm/lib/Transforms/Scalar/
H A DJumpThreading.cpp527 if (BB->getTerminator() == StopAt) { in getJumpThreadDuplicationCost()
994 Instruction *BBTerm = BB->getTerminator(); in getBestDestForJumpOnUndef()
1050 Instruction *Terminator = BB->getTerminator(); in processBlock()
1092 Instruction *BBTerm = BB->getTerminator(); in processBlock()
1462 if (isa<IndirectBrInst>(P->getTerminator())) in simplifyPartiallyRedundantLoad()
1483 UnavailablePred->getTerminator()); in simplifyPartiallyRedundantLoad()
1715 Instruction *Term = BB->getTerminator(); in processThreadableEdges()
1781 MostPopularDest = BB->getTerminator()-> in processThreadableEdges()
2173 if (isa<IndirectBrInst>(P->getTerminator())) in maybethreadThroughTwoBasicBlocks()
2473 const Instruction *TI = BB->getTerminator(); in doesBlockHaveProfileData()
[all …]
H A DCallSiteSplitting.cpp133 auto *BI = dyn_cast<BranchInst>(From->getTerminator()); in recordCondition()
145 Conditions.push_back({Cmp, From->getTerminator()->getSuccessor(0) == To in recordCondition()
198 if (Preds.size() != 2 || isa<IndirectBrInst>(Preds[0]->getTerminator()) || in canSplitCallSite()
199 isa<IndirectBrInst>(Preds[1]->getTerminator())) in canSplitCallSite()
253 Instruction *TI = SplitBB->getTerminator(); in copyMustTailReturn()
334 cast<CallBase>(&*std::prev(SplitBlock->getTerminator()->getIterator())); in splitCallSite()
368 Splits[i]->getTerminator()->eraseFromParent(); in splitCallSite()
509 auto IE = BB.getTerminator()->getIterator(); in doCallSiteSplitting()
514 while (II != IE && &*II != BB.getTerminator()) { in doCallSiteSplitting()
H A DIndVarSimplify.cpp467 auto *TermInst = IncomingBB->getTerminator(); in rewriteFirstIterationLoopExitValues()
704 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in isLoopExitTestBasedOn()
723 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in needsLFTR()
1118 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in linearFunctionTestReplace()
1214 BasicBlock::iterator I(Preheader->getTerminator()); in sinkUnusedInvariants()
1301 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in foldExit()
1349 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in replaceWithInvariantCond()
1634 auto *BI = cast<BranchInst>(ExitingBB->getTerminator()); in optimizeLoopExits()
1850 IRBuilder<> B(L->getLoopPreheader()->getTerminator()); in predicateLoopExits()
1855 auto *BI = cast<BranchInst>(ExitingBB->getTerminator()); in predicateLoopExits()
[all …]
/llvm-project-15.0.7/polly/lib/CodeGen/
H A DCodeGeneration.cpp78 auto *OrigTerminator = Block.getTerminator(); in markBlockUnreachable()
212 Builder.SetInsertPoint(EnteringBB->getTerminator()); in generateCode()
238 P.insertRegionStart(SplitBlock->getTerminator()); in generateCode()
241 P.insertRegionEnd(MergeBlock->getTerminator()); in generateCode()
249 Builder.SetInsertPoint(SplitBlock->getTerminator()); in generateCode()
254 auto *SplitBBTerm = Builder.GetInsertBlock()->getTerminator(); in generateCode()
273 Builder.GetInsertBlock()->getTerminator()->setOperand(0, RTC); in generateCode()
281 Builder.SetInsertPoint(StartBlock->getTerminator()); in generateCode()
/llvm-project-15.0.7/mlir/lib/Conversion/SCFToControlFlow/
H A DSCFToControlFlow.cpp315 Operation *terminator = lastBodyBlock->getTerminator(); in matchAndRewrite()
381 Operation *thenTerminator = thenRegion.back().getTerminator(); in matchAndRewrite()
395 Operation *elseTerminator = elseRegion.back().getTerminator(); in matchAndRewrite()
427 if (auto terminator = dyn_cast<scf::YieldOp>(block.getTerminator())) { in matchAndRewrite()
496 yieldOperands.push_back(reduceBlock.getTerminator()->getOperand(0)); in matchAndRewrite()
497 rewriter.eraseOp(reduceBlock.getTerminator()); in matchAndRewrite()
503 rewriter.eraseOp(parallelOp.getBody()->getTerminator()); in matchAndRewrite()
508 rewriter.mergeBlockBefore(parallelOp.getBody(), newBody->getTerminator(), in matchAndRewrite()
549 auto condOp = cast<ConditionOp>(beforeLast->getTerminator()); in matchAndRewrite()
555 auto yieldOp = cast<scf::YieldOp>(afterLast->getTerminator()); in matchAndRewrite()
[all …]
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DHardwareLoops.cpp345 if (!isa<BranchInst>(Pred->getTerminator())) in CanGenerateTest()
348 auto *BI = cast<BranchInst>(Pred->getTerminator()); in CanGenerateTest()
406 cast<BranchInst>(BB->getTerminator())->isUnconditional()) { in InitLoopCount()
410 if (!SCEVE.isSafeToExpandAt(ExitCount, Predecessor->getTerminator())) in InitLoopCount()
416 if (!SCEVE.isSafeToExpandAt(ExitCount, BB->getTerminator())) { in InitLoopCount()
423 BB->getTerminator()); in InitLoopCount()
442 IRBuilder<> Builder(BeginBB->getTerminator()); in InsertIterationSetup()
455 assert((isa<BranchInst>(BeginBB->getTerminator()) && in InsertIterationSetup()
456 cast<BranchInst>(BeginBB->getTerminator())->isConditional()) && in InsertIterationSetup()
461 auto *LoopGuard = cast<BranchInst>(BeginBB->getTerminator()); in InsertIterationSetup()
/llvm-project-15.0.7/llvm/lib/Target/X86/
H A DX86LowerAMXIntrinsics.cpp183 B.SetInsertPoint(ColBody->getTerminator()); in createTileLoadStoreLoops()
196 B.SetInsertPoint(RowLoopHeader->getTerminator()); in createTileLoadStoreLoops()
204 B.SetInsertPoint(ColLoopHeader->getTerminator()); in createTileLoadStoreLoops()
213 B.SetInsertPoint(ColBody->getTerminator()); in createTileLoadStoreLoops()
229 B.SetInsertPoint(ColBody->getTerminator()); in createTileLoadStoreLoops()
290 B.SetInsertPoint(ColBody->getTerminator()); in createTileDPLoops()
323 B.SetInsertPoint(RowLoopHeader->getTerminator()); in createTileDPLoops()
340 B.SetInsertPoint(ColLoopHeader->getTerminator()); in createTileDPLoops()
353 B.SetInsertPoint(InnerLoopHeader->getTerminator()); in createTileDPLoops()
357 B.SetInsertPoint(InnerBody->getTerminator()); in createTileDPLoops()
[all …]
/llvm-project-15.0.7/llvm/lib/IR/
H A DBasicBlock.cpp360 auto *Term = getTerminator(); in isLegalToHoistInto()
383 assert(getTerminator() && "Can't use splitBasicBlock on degenerate BB!"); in splitBasicBlock()
410 assert(getTerminator() && in splitBasicBlockBefore()
432 Instruction *TI = Pred->getTerminator(); in splitBasicBlockBefore()
456 Instruction *TI = getTerminator(); in replaceSuccessorsPhiUsesWith()
478 const Instruction *TI = getTerminator(); in getIrrLoopHeaderWeight()

12345678910>>...15