| /llvm-project-15.0.7/llvm/unittests/Analysis/ |
| H A D | BranchProbabilityInfoTest.cpp | 63 auto *ExitBB = &F->back(); in TEST_F() local 64 auto *EntryBB = BasicBlock::Create(C, "entry", F, /*insertBefore=*/ExitBB); in TEST_F() 67 BasicBlock::Create(C, "preexit", F, /*insertBefore=*/ExitBB); in TEST_F() 73 auto *Switch = SwitchInst::Create(Undef, ExitBB, NumCases, EntryBB); in TEST_F() 83 EXPECT_TRUE(BPI.isEdgeHot(EntryBB, ExitBB)); in TEST_F()
|
| H A D | ScalarEvolutionTest.cpp | 135 BasicBlock *ExitBB = BasicBlock::Create(Context, "exit", F); in TEST_F() local 139 ReturnInst::Create(Context, nullptr, ExitBB); in TEST_F() 335 BasicBlock *ExitBB = BasicBlock::Create(Context, "bb2", F); in TEST_F() local 339 Acc[0] = BinaryOperator::CreateAdd(Acc[0], Acc[1], "", ExitBB); in TEST_F() 340 Acc[1] = BinaryOperator::CreateAdd(Acc[2], Acc[3], "", ExitBB); in TEST_F() 341 Acc[2] = BinaryOperator::CreateAdd(Acc[4], Acc[5], "", ExitBB); in TEST_F() 347 ReturnInst::Create(Context, nullptr, ExitBB); in TEST_F() 924 BasicBlock *ExitBB = BasicBlock::Create(Context, "exit", F); in TEST_F() local 941 ReturnInst::Create(Context, nullptr, ExitBB); in TEST_F() 981 BasicBlock *ExitBB = BasicBlock::Create(Context, "exit", F); in TEST_F() local [all …]
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Scalar/ |
| H A D | SimpleLoopUnswitch.cpp | 197 for (Instruction &I : ExitBB) { in areLoopExitPHIsLoopInvariant() 361 for (auto *ExitBB : Exits) in hoistLoopToNewParent() local 834 if (pred_empty(ExitBB)) { in unswitchTrivialSwitch() 846 SplitExitBB = SplitBlock(ExitBB, &ExitBB->front(), &DT, &LI, MSSAU); in unswitchTrivialSwitch() 1138 if (SkipBlock(ExitBB)) in buildClonedLoopBlocks() 1146 auto *MergeBB = SplitBlock(ExitBB, &ExitBB->front(), &DT, &LI, MSSAU); in buildClonedLoopBlocks() 1151 MergeBB->takeName(ExitBB); in buildClonedLoopBlocks() 1163 llvm::make_range(ExitBB->begin(), std::prev(ExitBB->end())), in buildClonedLoopBlocks() 1356 for (auto *ExitBB : ExitBlocks) in buildClonedLoops() local 1516 Worklist.push_back(ExitBB); in buildClonedLoops() [all …]
|
| /llvm-project-15.0.7/polly/lib/CodeGen/ |
| H A D | LoopGenerators.cpp | 85 DominatorTree &DT, BasicBlock *&ExitBB, in createLoop() argument 126 ExitBB = SplitBlock(BeforeBB, &*Builder.GetInsertPoint(), &DT, &LI); in createLoop() 127 ExitBB->setName("polly.loop_exit"); in createLoop() 139 Builder.CreateCondBr(LoopGuard, PreHeaderBB, ExitBB); in createLoop() 161 BranchInst *B = Builder.CreateCondBr(LoopCondition, HeaderBB, ExitBB); in createLoop() 167 DT.changeImmediateDominator(ExitBB, GuardBB); in createLoop() 169 DT.changeImmediateDominator(ExitBB, HeaderBB); in createLoop()
|
| H A D | LoopGeneratorsGOMP.cpp | 116 BasicBlock *ExitBB = BasicBlock::Create(Context, "polly.par.exit", SubFn); in createSubFn() local 123 DT.addNewBlock(ExitBB, HeaderBB); in createSubFn() 143 Builder.CreateCondBr(HasNextSchedule, PreHeaderBB, ExitBB); in createSubFn() 165 Builder.SetInsertPoint(ExitBB); in createSubFn()
|
| H A D | LoopGeneratorsKMP.cpp | 143 BasicBlock *ExitBB = BasicBlock::Create(Context, "polly.par.exit", SubFn); in createSubFn() local 150 DT.addNewBlock(ExitBB, HeaderBB); in createSubFn() 217 Builder.CreateCondBr(HasIteration, PreHeaderBB, ExitBB); in createSubFn() 224 Builder.CreateCondBr(HasIteration, PreHeaderBB, ExitBB); in createSubFn() 256 Builder.CreateCondBr(HasIteration, PreHeaderBB, ExitBB); in createSubFn() 285 Builder.CreateCondBr(HasWork, PreHeaderBB, ExitBB); in createSubFn() 287 Builder.CreateBr(ExitBB); in createSubFn() 305 Builder.SetInsertPoint(ExitBB); in createSubFn()
|
| H A D | Utils.cpp | 117 BasicBlock *ExitBB = S.getExit(); in executeScopConditionally() local 120 splitEdge(ExitingBB, ExitBB, ".merge_new_and_old", &DT, &LI, &RI); in executeScopConditionally()
|
| H A D | BlockGenerators.cpp | 811 BasicBlock *ExitBB = S.getExit(); in createScalarInitialization() local 851 if (!S.hasSingleExitEdge() && PHI->getBasicBlockIndex(ExitBB) >= 0) in createScalarInitialization() 860 BasicBlock *ExitBB = S.getExitingBlock(); in createScalarFinalization() local 866 if (OptExitBB == ExitBB) in createScalarFinalization() 892 MergePHI->addIncoming(EscapeInst, ExitBB); in createScalarFinalization() 933 auto *ExitBB = S.getExitingBlock(); in createExitPHINodeMerges() local 937 if (OptExitBB == ExitBB) in createExitPHINodeMerges() 971 MergePHI->addIncoming(OriginalValue, ExitBB); in createExitPHINodeMerges()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Utils/ |
| H A D | LCSSA.cpp | 154 for (BasicBlock *ExitBB : ExitBlocks) { in formLCSSAForInstructions() 155 if (!DT.dominates(DomNode, DT.getNode(ExitBB))) in formLCSSAForInstructions() 159 if (SSAUpdate.HasValueForBlock(ExitBB)) in formLCSSAForInstructions() 161 Builder.SetInsertPoint(&ExitBB->front()); in formLCSSAForInstructions() 162 PHINode *PN = Builder.CreatePHI(I->getType(), PredCache.size(ExitBB), in formLCSSAForInstructions() 172 for (BasicBlock *Pred : PredCache.get(ExitBB)) { in formLCSSAForInstructions() 187 SSAUpdate.AddAvailableValue(ExitBB, PN); in formLCSSAForInstructions() 197 if (auto *OtherLoop = LI.getLoopFor(ExitBB)) in formLCSSAForInstructions()
|
| H A D | LowerMemIntrinsics.cpp | 417 BasicBlock *ExitBB = InsertBefore->getParent(); in createMemMoveLoop() local 418 ExitBB->setName("memmove_done"); in createMemMoveLoop() 445 ExitBB, LoopBB); in createMemMoveLoop() 448 BranchInst::Create(ExitBB, LoopBB, CompareN, ThenTerm); in createMemMoveLoop() 453 BasicBlock::Create(F->getContext(), "copy_forward_loop", F, ExitBB); in createMemMoveLoop() 464 ExitBB, FwdLoopBB); in createMemMoveLoop() 468 BranchInst::Create(ExitBB, FwdLoopBB, CompareN, ElseTerm); in createMemMoveLoop()
|
| H A D | CodeExtractor.cpp | 748 for (BasicBlock *ExitBB : Exits) { in severSplitPHINodesOfExits() 751 for (PHINode &PN : ExitBB->phis()) { in severSplitPHINodesOfExits() 767 NewBB = BasicBlock::Create(ExitBB->getContext(), in severSplitPHINodesOfExits() 768 ExitBB->getName() + ".split", in severSplitPHINodesOfExits() 769 ExitBB->getParent(), ExitBB); in severSplitPHINodesOfExits() 770 SmallVector<BasicBlock *, 4> Preds(predecessors(ExitBB)); in severSplitPHINodesOfExits() 773 PredBB->getTerminator()->replaceUsesOfWith(ExitBB, NewBB); in severSplitPHINodesOfExits() 774 BranchInst::Create(ExitBB, NewBB); in severSplitPHINodesOfExits() 1812 for (BasicBlock *ExitBB : ExitBlocks) in extractCodeRegion() 1813 for (PHINode &PN : ExitBB->phis()) { in extractCodeRegion()
|
| H A D | LoopUnrollRuntime.cpp | 976 auto *ExitBB = RemainderLatch->getSingleSuccessor(); in UnrollRuntimeLoopRemainder() local 977 assert(ExitBB && "required after breaking cond br backedge"); in UnrollRuntimeLoopRemainder() 979 MergeBlockIntoPredecessor(ExitBB, &DTU, LI); in UnrollRuntimeLoopRemainder()
|
| H A D | LoopUtils.cpp | 720 BasicBlock *ExitBB = BI->getSuccessor(ExitIdx); in breakLoopBackedge() local 726 auto *NewBI = Builder.CreateBr(ExitBB); in breakLoopBackedge() 1277 for (BasicBlock *ExitBB : ExitBlocks) { in rewriteLoopExitValues() 1280 PHINode *PN = dyn_cast<PHINode>(ExitBB->begin()); in rewriteLoopExitValues() 1286 BasicBlock::iterator BBI = ExitBB->begin(); in rewriteLoopExitValues()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/IPO/ |
| H A D | CrossDSOCFI.cpp | 123 BasicBlock *ExitBB = BasicBlock::Create(Ctx, "exit", F); in buildCFICheck() local 131 IRBFail.CreateBr(ExitBB); in buildCFICheck() 133 IRBuilder<> IRBExit(ExitBB); in buildCFICheck() 147 BranchInst *BI = IRBTest.CreateCondBr(Test, ExitBB, TrapBB); in buildCFICheck()
|
| H A D | HotColdSplitting.cpp | 280 for (BasicBlock *ExitBB : SuccsOutsideRegion) { in getOutliningPenalty() 281 for (PHINode &PN : ExitBB->phis()) { in getOutliningPenalty()
|
| /llvm-project-15.0.7/llvm/unittests/Linker/ |
| H A D | LinkModulesTest.cpp | 38 ExitBB = BasicBlock::Create(Ctx, "exit", F); in SetUp() 71 BasicBlock *ExitBB; member in __anon596f68b70111::LinkModuleTest 91 Builder.CreateBr(ExitBB); in TEST_F() 94 Builder.CreateBr(ExitBB); in TEST_F() 96 Builder.SetInsertPoint(ExitBB); in TEST_F()
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/ |
| H A D | AtomicExpandPass.cpp | 1100 BasicBlock *ExitBB = in insertRMWLLSCLoop() local 1120 Builder.CreateCondBr(TryAgain, LoopBB, ExitBB); in insertRMWLLSCLoop() 1122 Builder.SetInsertPoint(ExitBB, ExitBB->begin()); in insertRMWLLSCLoop() 1250 auto FailureBB = BasicBlock::Create(Ctx, "cmpxchg.failure", F, ExitBB); in expandAtomicCmpXchg() 1331 Builder.CreateBr(ExitBB); in expandAtomicCmpXchg() 1354 Builder.CreateBr(ExitBB); in expandAtomicCmpXchg() 1360 Builder.SetInsertPoint(ExitBB, ExitBB->begin()); in expandAtomicCmpXchg() 1373 Builder.SetInsertPoint(ExitBB, std::next(Success->getIterator())); in expandAtomicCmpXchg() 1465 BasicBlock *ExitBB = in insertRMWCmpXchgLoop() local 1496 Builder.CreateCondBr(Success, ExitBB, LoopBB); in insertRMWCmpXchgLoop() [all …]
|
| H A D | Analysis.cpp | 523 const BasicBlock *ExitBB = Call.getParent(); in isInTailCallPosition() local 524 const Instruction *Term = ExitBB->getTerminator(); in isInTailCallPosition() 544 for (BasicBlock::const_iterator BBI = std::prev(ExitBB->end(), 2);; --BBI) { in isInTailCallPosition() 563 const Function *F = ExitBB->getParent(); in isInTailCallPosition()
|
| /llvm-project-15.0.7/llvm/unittests/IR/ |
| H A D | UserTest.cpp | 70 BasicBlock &ExitBB = F->back(); in TEST() local 71 PHINode &P = cast<PHINode>(ExitBB.front()); in TEST()
|
| /llvm-project-15.0.7/llvm/lib/Frontend/OpenMP/ |
| H A D | OMPIRBuilder.cpp | 1105 OI.ExitBB = PRegExitBB; in createParallel() 1322 OI.ExitBB = TaskExitBB; in createTask() 2795 BasicBlock *ExitBB = P.second; in tileLoops() local 2803 BodyEntered = ExitBB; in tileLoops() 3400 assert(SplitPos->getParent() == ExitBB && in EmitOMPInlinedRegion() 3439 return IRBuilder<>::InsertPoint(ExitBB, ExitBB->getFirstInsertionPt()); in emitCommonDirectiveEntry() 4090 BasicBlock *ExitBB = in emitAtomicUpdate() local 4144 Builder.SetInsertPoint(ExitBB); in emitAtomicUpdate() 4259 Builder.CreateBr(ExitBB); in createAtomicCompare() 4264 Builder.SetInsertPoint(ExitBB); in createAtomicCompare() [all …]
|
| /llvm-project-15.0.7/clang/tools/clang-linker-wrapper/ |
| H A D | OffloadWrapper.cpp | 425 auto *ExitBB = BasicBlock::Create(C, "while.end", RegGlobalsFn); in createRegisterGlobalsFunction() local 428 Builder.CreateCondBr(EntryCmp, EntryBB, ExitBB); in createRegisterGlobalsFunction() 509 Builder.CreateCondBr(Cmp, ExitBB, EntryBB); in createRegisterGlobalsFunction() 510 Builder.SetInsertPoint(ExitBB); in createRegisterGlobalsFunction()
|
| /llvm-project-15.0.7/clang/lib/CodeGen/ |
| H A D | CGAtomic.cpp | 1877 auto *ExitBB = CGF.createBasicBlock("atomic_exit"); in EmitAtomicUpdateLibcall() local 1893 CGF.Builder.CreateCondBr(Res, ExitBB, ContBB); in EmitAtomicUpdateLibcall() 1894 CGF.EmitBlock(ExitBB, /*IsFinished=*/true); in EmitAtomicUpdateLibcall() 1906 auto *ExitBB = CGF.createBasicBlock("atomic_exit"); in EmitAtomicUpdateOp() local 1925 CGF.Builder.CreateCondBr(Res.second, ExitBB, ContBB); in EmitAtomicUpdateOp() 1926 CGF.EmitBlock(ExitBB, /*IsFinished=*/true); in EmitAtomicUpdateOp() 1963 auto *ExitBB = CGF.createBasicBlock("atomic_exit"); in EmitAtomicUpdateLibcall() local 1976 CGF.Builder.CreateCondBr(Res, ExitBB, ContBB); in EmitAtomicUpdateLibcall() 1977 CGF.EmitBlock(ExitBB, /*IsFinished=*/true); in EmitAtomicUpdateLibcall() 1988 auto *ExitBB = CGF.createBasicBlock("atomic_exit"); in EmitAtomicUpdateOp() local [all …]
|
| H A D | CGOpenMPRuntimeGPU.cpp | 1640 llvm::BasicBlock *ExitBB = CGF.createBasicBlock("omp.critical.exit"); in emitCriticalRegion() local 1665 CGF.Builder.CreateCondBr(CmpLoopBound, TestBB, ExitBB); in emitCriticalRegion() 1698 CGF.EmitBlock(ExitBB, /*IsFinished=*/true); in emitCriticalRegion() 1816 ThenBB, ExitBB); in shuffleAndStore() 1832 CGF.EmitBlock(ExitBB); in shuffleAndStore() 2186 llvm::BasicBlock *ExitBB = nullptr; in emitInterWarpCopyFunction() local 2192 ExitBB = CGF.createBasicBlock("exit"); in emitInterWarpCopyFunction() 2200 Bld.CreateCondBr(Cmp, BodyBB, ExitBB); in emitInterWarpCopyFunction() 2318 CGF.EmitBlock(ExitBB); in emitInterWarpCopyFunction() 3357 CGF.Builder.CreateCondBr(Cond, ThenBB, ExitBB); in emitReduction() [all …]
|
| /llvm-project-15.0.7/polly/lib/Support/ |
| H A D | ScopHelper.cpp | 106 BasicBlock *ExitBB = R->getExit(); in simplifyRegionExit() local 118 for (BasicBlock *P : predecessors(ExitBB)) in simplifyRegionExit() 127 SplitBlockPredecessors(ExitBB, Preds, ".region_exiting", DT, LI); in simplifyRegionExit() 139 R->replaceExit(ExitBB); in simplifyRegionExit()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Vectorize/ |
| H A D | VPlan.cpp | 280 PrevBB->getParent(), CFG.ExitBB); in createEmptyBasicBlock() 329 NewBB = State->CFG.ExitBB; in execute() 673 State->CFG.ExitBB = State->CFG.PrevBB->getSingleSuccessor(); in execute() 741 State->CFG.ExitBB); in execute()
|