Home
last modified time | relevance | path

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

12345678910>>...18

/llvm-project/llvm/unittests/IR/
H A DCFGBuilder.cpp44 if (isa<UnreachableInst>(From->getTerminator())) in ConnectBlocks()
45 From->getTerminator()->eraseFromParent(); in ConnectBlocks()
46 if (!From->getTerminator()) { in ConnectBlocks()
52 SwitchInst *SI = cast<SwitchInst>(From->getTerminator()); in ConnectBlocks()
63 SwitchInst *SI = cast<SwitchInst>(From->getTerminator()); in DisconnectBlocks()
174 EXPECT_TRUE(isa<SwitchInst>(B.getOrAddBlock("entry")->getTerminator())); in TEST()
175 EXPECT_TRUE(isa<SwitchInst>(B.getOrAddBlock("a")->getTerminator())); in TEST()
176 EXPECT_TRUE(isa<UnreachableInst>(B.getOrAddBlock("b")->getTerminator())); in TEST()
177 EXPECT_TRUE(isa<SwitchInst>(B.getOrAddBlock("d")->getTerminator())); in TEST()
179 auto *DSwitch = cast<SwitchInst>(B.getOrAddBlock("d")->getTerminator()); in TEST()
[all …]
/llvm-project/llvm/unittests/Analysis/
H A DDomTreeUpdaterTest.cpp72 SwitchInst *SI = dyn_cast<SwitchInst>(BB0->getTerminator()); in TEST()
92 EXPECT_EQ(BB0->getTerminator()->getNumSuccessors(), 3u); in TEST()
100 EXPECT_EQ(BB0->getTerminator()->getNumSuccessors(), 2u); in TEST()
104 ASSERT_FALSE(isa<UnreachableInst>(BB3->getTerminator())); in TEST()
195 EXPECT_EQ(NewEntry->getTerminator()->getNumSuccessors(), 1u); in TEST()
196 NewEntry->getTerminator()->eraseFromParent(); in TEST()
198 EXPECT_EQ(BB0->getTerminator()->getNumSuccessors(), 1u); in TEST()
208 ASSERT_FALSE(isa<UnreachableInst>(BB0->getTerminator())); in TEST()
272 EXPECT_EQ(BB0->getTerminator()->getNumSuccessors(), 4u); in TEST()
273 BB0->getTerminator() 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()
/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()
279 BranchInst *PBI = cast<BranchInst>(FirstCondBlock->getTerminator()); in FlattenParallelAndOr()
289 PBI = cast<BranchInst>(FirstCondBlock->getTerminator()); in FlattenParallelAndOr()
[all …]
H A DLoopUnrollRuntime.cpp166 Instruction *InsertPt = PrologExit->getTerminator(); in ConnectProlog()
183 if (hasBranchWeightMD(*Latch->getTerminator())) { in ConnectProlog()
303 Instruction *InsertPt = NewExit->getTerminator(); in ConnectEpilog()
313 if (hasBranchWeightMD(*Latch->getTerminator())) { in ConnectEpilog()
367 InsertTop->getTerminator()->setSuccessor(0, NewBB); in CloneLoopBlocks()
383 VMap.erase((*BB)->getTerminator()); in CloneLoopBlocks()
388 BranchInst *LatchBR = cast<BranchInst>(NewBB->getTerminator()); in CloneLoopBlocks()
603 BranchInst *LatchBR = cast<BranchInst>(Latch->getTerminator()); in UnrollRuntimeLoopRemainder()
674 BranchInst *PreHeaderBR = cast<BranchInst>(PreHeader->getTerminator()); in UnrollRuntimeLoopRemainder()
710 NewPreHeader = SplitBlock(PreHeader, PreHeader->getTerminator(), D in UnrollRuntimeLoopRemainder()
[all...]
H A DBasicBlockUtils.cpp90 isa<UnreachableInst>(BB->getTerminator()) && in detachDeadBlocks()
196 Instruction *PTI = PredBB->getTerminator(); in MergeBlockIntoPredecessor()
212 BranchInst *BB_JmpI = dyn_cast<BranchInst>(BB->getTerminator()); in MergeBlockIntoPredecessor()
275 Instruction *STI = BB->getTerminator(); in MergeBlockIntoPredecessor()
308 MSSAU->getMemorySSA()->getMemoryAccess(PredBB->getTerminator()))) in MergeBlockIntoPredecessor()
749 if (isa<UnreachableInst>(BB->getTerminator()) || in IsBlockFollowedByDeoptOrUnreachable()
767 Instruction *LatchTerm = BB->getTerminator(); in SplitEdge()
795 assert(BB->getTerminator()->getNumSuccessors() == 1 && in SplitEdge()
797 return SplitBlock(BB, BB->getTerminator(), DT, LI, MSSAU, BBName); in SplitEdge()
874 return isa<IndirectBrInst>(Pred->getTerminator()); in ehAwareSplitEdge()
[all...]
H A DBreakCriticalEdges.cpp158 return isa<IndirectBrInst>(Pred->getTerminator()); in SplitKnownCriticalEdge()
319 Instruction *PredTerm = PredBB->getTerminator(); in findIBRPredecessor()
347 if (isa<IndirectBrInst>(BB.getTerminator())) in SplitIndirectBrCriticalEdges()
376 EdgeProbabilities.reserve(Target->getTerminator()->getNumSuccessors()); in SplitIndirectBrCriticalEdges()
377 for (unsigned I = 0, E = Target->getTerminator()->getNumSuccessors(); in SplitIndirectBrCriticalEdges()
405 Src->getTerminator()->replaceUsesOfWith(Target, DirectSucc); in SplitIndirectBrCriticalEdges()
427 assert(&*End == Target->getTerminator() && in SplitIndirectBrCriticalEdges()
H A DUnifyFunctionExitNodes.cpp27 if (isa<UnreachableInst>(I.getTerminator())) in unifyUnreachableBlocks()
49 if (isa<ReturnInst>(I.getTerminator())) in unifyReturnBlocks()
78 PN->addIncoming(BB->getTerminator()->getOperand(0), BB); in unifyReturnBlocks()
H A DLoopSimplify.cpp127 if (isa<IndirectBrInst>(P->getTerminator())) in InsertPreheaderForLoop()
256 if (isa<IndirectBrInst>(PN->getIncomingBlock(i)->getTerminator())) in separateNestedLoop()
375 if (isa<IndirectBrInst>(P->getTerminator())) in insertUniqueBackedgeBlock()
450 Instruction *TI = BB->getTerminator(); in insertUniqueBackedgeBlock()
456 BEBlock->getTerminator()->setMetadata(LLVMContext::MD_loop, LoopMD); in insertUniqueBackedgeBlock()
505 Instruction *TI = P->getTerminator(); in simplifyOneLoop()
521 if (BranchInst *BI = dyn_cast<BranchInst>(ExitingBlock->getTerminator())) in simplifyOneLoop()
632 BranchInst *BI = dyn_cast<BranchInst>(ExitingBlock->getTerminator()); in simplifyOneLoop()
647 Preheader ? Preheader->getTerminator() : nullptr, MSSAU, SE)) { in simplifyOneLoop()
878 if (isa<IndirectBrInst>(Pred->getTerminator())) {
[all...]
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()
H A DLoopPeel.cpp287 return !isa<UnreachableInst>(BB->getTerminator()); in peelToTurnInvariantLoadsDerefencebale()
326 return LoadUsers.contains(Exiting->getTerminator()); in peelToTurnInvariantLoadsDerefencebale()
496 auto *BI = dyn_cast<BranchInst>(BB->getTerminator()); in countToEliminateCompares()
519 BranchInst *LatchBR = dyn_cast<BranchInst>(Latch->getTerminator()); in violatesLegacyMultiExitLoopCheck()
700 Instruction *Term = ExitingBlock->getTerminator(); in initBranchWeights()
809 InsertTop->getTerminator()->setSuccessor(0, cast<BasicBlock>(VMap[Header])); in cloneLoopBlocks()
817 auto *LatchTerm = cast<Instruction>(NewLatch->getTerminator()); in cloneLoopBlocks()
1000 SplitBlock(InsertTop, InsertTop->getTerminator(), &DT, LI); in peelLoop()
1002 SplitBlock(InsertBot, InsertBot->getTerminator(), &DT, LI); in peelLoop()
1009 cast<Instruction>(cast<BasicBlock>(Latch)->getTerminator()); in peelLoop()
[all...]
/llvm-project/llvm/tools/llvm-stress/
H A Dllvm-stress.cpp333 Value *V = new LoadInst(Ty, Ptr, "L", BB->getTerminator()->getIterator());
353 new StoreInst(Val, Ptr, BB->getTerminator()->getIterator());
375 Instruction* Term = BB->getTerminator(); in Act()
473 BB->getTerminator()->getIterator()); in Act()
505 BB->getTerminator()->getIterator()); in Act()
520 BB->getTerminator()->getIterator());
546 new BitCastInst(V, DestTy, "PC", BB->getTerminator()->getIterator())); in Act()
555 new BitCastInst(V, DestTy, "BC", BB->getTerminator()->getIterator())); in Act()
562 new TruncInst(V, DestTy, "Tr", BB->getTerminator()->getIterator())); in Act()
567 V, DestTy, "ZE", BB->getTerminator() in Act()
[all...]
/llvm-project/llvm/unittests/Transforms/Utils/
H A DBasicBlockUtilsTest.cpp273 Instruction *LatchTerm = SrcBlock->getTerminator(); in TEST()
293 EXPECT_EQ(NewBB, SrcBlock->getTerminator()->getSuccessor(SuccNum)); 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()
522 BasicBlock *BB2Clone = BB0->getTerminator()->getSuccessor(1); in TEST()
[all …]
/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUUnifyDivergentExitNodes.cpp127 if (!UA.isUniform(Top->getTerminator())) in isUniformlyReached()
166 PN->addIncoming(BB->getTerminator()->getOperand(0), BB); in unifyReturnBlockSet()
169 BB->getTerminator()->eraseFromParent(); in unifyReturnBlockSet()
194 !isa<BranchInst>(PDT.getRoot()->getTerminator()))) in run()
218 if (isa<ReturnInst>(BB->getTerminator())) { in run()
221 } else if (isa<UnreachableInst>(BB->getTerminator())) { in run()
224 } else if (BranchInst *BI = dyn_cast<BranchInst>(BB->getTerminator())) { in run()
260 BB->getTerminator()->eraseFromParent(); in run()
281 BB->getTerminator()->eraseFromParent(); in run()
295 UnreachableBlock->getTerminator() in run()
[all...]
/llvm-project/llvm/examples/IRTransforms/
H A DSimplifyCFG.cpp143 BranchInst *BI = dyn_cast<BranchInst>(BB.getTerminator()); in eliminateCondBranches_v1()
179 BranchInst *BI = dyn_cast<BranchInst>(BB.getTerminator()); in eliminateCondBranches_v2()
229 if (!match(BB.getTerminator(), in eliminateCondBranches_v3()
246 BranchInst::Create(TakenSucc, BB.getTerminator()->getIterator()); in eliminateCondBranches_v3()
247 BB.getTerminator()->eraseFromParent(); in eliminateCondBranches_v3()
289 I.moveBefore(Pred->getTerminator()->getIterator()); in mergeIntoSinglePredecessor_v1()
293 Pred->getTerminator()->eraseFromParent(); in mergeIntoSinglePredecessor_v1()
340 I.moveBefore(Pred->getTerminator()->getIterator()); in mergeIntoSinglePredecessor_v2()
344 Pred->getTerminator()->eraseFromParent(); in mergeIntoSinglePredecessor_v2()
/llvm-project/polly/lib/CodeGen/
H A DCodeGeneration.cpp80 auto *OrigTerminator = Block.getTerminator(); in markBlockUnreachable()
214 Builder.SetInsertPoint(EnteringBB->getTerminator()); in generateCode()
249 P.insertRegionStart(SplitBlock->getTerminator()); in generateCode()
252 P.insertRegionEnd(MergeBlock->getTerminator()); in generateCode()
260 Builder.SetInsertPoint(SplitBlock->getTerminator()); in generateCode()
265 auto *SplitBBTerm = Builder.GetInsertBlock()->getTerminator(); in generateCode()
284 Builder.GetInsertBlock()->getTerminator()->setOperand(0, RTC); in generateCode()
292 Builder.SetInsertPoint(StartBlock->getTerminator()); in generateCode()
/llvm-project/llvm/lib/Transforms/Scalar/
H A DJumpThreading.cpp148 BranchInst *CondBr = dyn_cast<BranchInst>(BB->getTerminator());
171 BranchInst *PredBr = dyn_cast<BranchInst>(PredBB->getTerminator()); in updatePredecessorProfileMetadata()
207 BranchInst *PredBr = dyn_cast<BranchInst>(PredBB->getTerminator()); in updatePredecessorProfileMetadata()
343 << "' with terminator: " << *BB.getTerminator() in runImpl()
354 auto *BI = dyn_cast<BranchInst>(BB.getTerminator()); in runImpl()
453 if (BB->getTerminator() == StopAt) { in getJumpThreadDuplicationCost()
919 Instruction *BBTerm = BB->getTerminator(); in getBestDestForJumpOnUndef()
975 Instruction *Terminator = BB->getTerminator(); in processBlock()
1017 Instruction *BBTerm = BB->getTerminator(); in processBlock()
1043 << "' folding terminator: " << *BB->getTerminator() in processBlock()
[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.cpp461 auto *TermInst = IncomingBB->getTerminator(); in rewriteFirstIterationLoopExitValues()
700 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator());
719 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in needsLFTR()
838 Value *Cond = cast<BranchInst>(ExitingBB->getTerminator())->getCondition(); in FindLoopCounter()
882 !mustExecuteUBIfPoisonOnPathTo(Phi, ExitingBB->getTerminator(), DT)) in FindLoopCounter()
939 ExitingBB->getTerminator()); in genLoopLimit()
971 mustExecuteUBIfPoisonOnPathTo(IncVar, ExitingBB->getTerminator(), DT); in linearFunctionTestReplace()
1005 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator()); in linearFunctionTestReplace()
1100 BasicBlock::iterator I(Preheader->getTerminator()); in sinkUnusedInvariants()
1190 BranchInst *BI = cast<BranchInst>(ExitingBB->getTerminator());
[all...]
/llvm-project/mlir/lib/Conversion/SCFToControlFlow/
H A DSCFToControlFlow.cpp342 Operation *terminator = lastBodyBlock->getTerminator(); in matchAndRewrite()
416 Operation *thenTerminator = thenRegion.back().getTerminator(); in matchAndRewrite()
430 Operation *elseTerminator = elseRegion.back().getTerminator(); in matchAndRewrite()
462 if (auto terminator = dyn_cast<scf::YieldOp>(block.getTerminator())) { in matchAndRewrite()
485 auto reductionOp = dyn_cast<ReduceOp>(parallelOp.getBody()->getTerminator()); in matchAndRewrite()
530 cast<ReduceReturnOp>(reductionBody.getTerminator()).getResult()); in matchAndRewrite()
531 rewriter.eraseOp(reductionBody.getTerminator()); in matchAndRewrite()
542 rewriter.inlineBlockBefore(parallelOp.getBody(), newBody->getTerminator(), in matchAndRewrite()
581 auto condOp = cast<ConditionOp>(before->getTerminator()); in matchAndRewrite()
587 auto yieldOp = cast<scf::YieldOp>(after->getTerminator()); in matchAndRewrite()
[all...]
/llvm-project/mlir/examples/transform/Ch4/lib/
H A DMyExtension.cpp146 yieldedMappings, getBody().front().getTerminator()->getOperands(), in apply()
180 if (bodyBlock.getTerminator()->getNumOperands() != getNumResults() - 1) { in verify()
183 << bodyBlock.getTerminator()->getNumOperands(); in verify()
186 llvm::enumerate(bodyBlock.getTerminator()->getOperands().getTypes(), in verify()
/llvm-project/llvm/lib/Target/X86/
H A DX86LowerAMXIntrinsics.cpp117 PHINode::Create(I16Ty, 2, Name + ".iv", Header->getTerminator()->getIterator()); in createLoop()
126 BranchInst *PreheaderBr = cast<BranchInst>(Preheader->getTerminator()); in createLoop()
180 B.SetInsertPoint(ColBody->getTerminator()); in createTileLoadStoreLoops()
191 B.SetInsertPoint(RowLoopHeader->getTerminator()); in createTileLoadStoreLoops()
199 B.SetInsertPoint(ColLoopHeader->getTerminator()); in createTileLoadStoreLoops()
208 B.SetInsertPoint(ColBody->getTerminator()); in createTileLoadStoreLoops()
224 B.SetInsertPoint(ColBody->getTerminator()); in createTileLoadStoreLoops()
285 B.SetInsertPoint(ColBody->getTerminator()); in createTileDPLoops()
318 B.SetInsertPoint(RowLoopHeader->getTerminator()); in createTileDPLoops()
335 B.SetInsertPoint(ColLoopHeader->getTerminator()); in createTileDPLoops()
[all...]
/llvm-project/mlir/lib/Transforms/
H A DRemoveDeadValues.cpp306 Operation *lastReturnOp = funcOp.back().getTerminator(); in cleanRegionBranchOp()
320 Operation *returnOp = block.getTerminator(); in cleanRegionBranchOp()
423 Operation *terminator = region.front().getTerminator(); in cleanRegionBranchOp()
442 region ? region->front().getTerminator() : nullptr; in cleanRegionBranchOp()
502 Operation *terminator = region.front().getTerminator(); in cleanRegionBranchOp()
509 terminatorOperandsToKeep[region.back().getTerminator()] in cleanRegionBranchOp()
551 terminatorOperandsToKeep[region.back().getTerminator()], in cleanRegionBranchOp()
624 Operation *terminator = region.front().getTerminator();
/llvm-project/llvm/lib/CodeGen/
H A DHardwareLoops.cpp406 if (!isa<BranchInst>(Pred->getTerminator())) in CanGenerateTest()
409 auto *BI = cast<BranchInst>(Pred->getTerminator()); in CanGenerateTest()
468 cast<BranchInst>(BB->getTerminator())->isUnconditional()) { in InitLoopCount()
472 if (!SCEVE.isSafeToExpandAt(ExitCount, Predecessor->getTerminator())) in InitLoopCount()
478 if (!SCEVE.isSafeToExpandAt(ExitCount, BB->getTerminator())) { in InitLoopCount()
485 BB->getTerminator()); in InitLoopCount()
504 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()
[all...]
H A DMachineLoopInfo.cpp133 if (DebugLoc DL = PHeadBB->getTerminator()->getDebugLoc()) in findLoopPreheader()
140 return HeadBB->getTerminator()->getDebugLoc(); in findLoopPreheader()
190 if (const auto *TI = BB->getTerminator()) in getLoopID()
202 const auto *TI = BB->getTerminator(); in isLoopInvariantImplicitPhysReg()

12345678910>>...18