Searched refs:ExitBlock (Results 1 - 25 of 31) sorted by relevance

12

/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopDeletion.cpp45 BasicBlock *ExitBlock, bool &Changed,
54 for (PHINode &P : ExitBlock->phis()) {
158 BasicBlock *ExitBlock = L->getUniqueExitBlock(); local
160 if (ExitBlock && isLoopNeverExecuted(L)) {
163 for (PHINode &P : ExitBlock->phis()) {
181 if (!ExitBlock) {
187 if (!isLoopDead(L, SE, ExitingBlocks, ExitBlock, Changed, Preheader)) {
43 isLoopDead(Loop *L, ScalarEvolution &SE, SmallVectorImpl<BasicBlock *> &ExitingBlocks, BasicBlock *ExitBlock, bool &Changed, BasicBlock *Preheader) argument
H A DLoopFuse.cpp143 BasicBlock *ExitBlock; member in struct:__anon2696::FusionCandidate
169 ExitingBlock(L->getExitingBlock()), ExitBlock(L->getExitBlock()),
214 return Preheader && Header && ExitingBlock && ExitBlock && Latch && L &&
226 assert(ExitBlock == L->getExitBlock() && "Exit block is out of sync");
272 << "\tExitBB: " << (ExitBlock ? ExitBlock->getName() : "nullptr")
293 if (!ExitBlock)
1042 return FC0.ExitBlock == FC1.getEntryBlock();
1106 assert(FC.ExitBlock && "Expecting a valid exit block");
1107 return FC.ExitBlock
[all...]
H A DLoopUnswitch.cpp251 BasicBlock *ExitBlock, Instruction *TI);
1001 BasicBlock *ExitBlock,
1026 assert(!L->contains(ExitBlock) && "Exit block is in the loop?");
1028 SplitBlock(ExitBlock, &ExitBlock->front(), DT, LI, MSSAU.get());
1220 BasicBlock *ExitBlock = ExitBlocks[i]; local
1221 SmallVector<BasicBlock *, 4> Preds(pred_begin(ExitBlock),
1222 pred_end(ExitBlock));
1226 SplitBlockPredecessors(ExitBlock, Preds, ".us-lcssa", DT, LI, MSSAU.get(),
1000 UnswitchTrivialCondition(Loop *L, Value *Cond, Constant *Val, BasicBlock *ExitBlock, Instruction *TI) argument
H A DLoopSimplifyCFG.cpp267 for (auto *ExitBlock : ExitBlocks)
268 if (!LiveExitBlocks.count(ExitBlock) &&
269 UniqueDeadExits.insert(ExitBlock).second)
270 DeadExitBlocks.push_back(ExitBlock);
H A DLICM.cpp159 Instruction &I, BasicBlock &ExitBlock, PHINode &PN, const LoopInfo *LI,
423 for (BasicBlock *ExitBlock : ExitBlocks) {
424 InsertPts.push_back(&*ExitBlock->getFirstInsertionPt());
1366 Instruction &I, BasicBlock &ExitBlock, PHINode &PN, const LoopInfo *LI,
1386 const ColorVector &CV = BlockColors.find(&ExitBlock)->second;
1399 ExitBlock.getInstList().insert(ExitBlock.getFirstInsertionPt(), New);
1431 OInst->getName() + ".lcssa", &ExitBlock.front());
1472 BasicBlock *ExitBlock = TPN->getParent(); local
1474 auto It = SunkCopies.find(ExitBlock);
1365 CloneInstructionInExitBlock( Instruction &I, BasicBlock &ExitBlock, PHINode &PN, const LoopInfo *LI, const LoopSafetyInfo *SafetyInfo, MemorySSAUpdater *MSSAU) argument
1808 BasicBlock *ExitBlock = LoopExitBlocks[i]; variable
[all...]
H A DIndVarSimplify.cpp861 BasicBlock *ExitBlock = ExitBlocks[0];
862 BasicBlock::iterator BI = ExitBlock->begin();
2594 BasicBlock *ExitBlock = L->getExitBlock(); local
2595 if (!ExitBlock) return false;
2601 BasicBlock::iterator InsertPt = ExitBlock->getFirstInsertionPt();
2671 ToMove->moveBefore(*ExitBlock, InsertPt);
2887 BasicBlock *ExitBlock =
2889 if (!ExitBlock->phis().empty())
H A DLoopDistribute.cpp448 BasicBlock *ExitBlock = L->getExitBlock(); local
449 assert(ExitBlock && "No single exit block");
473 Part->getVMap()[ExitBlock] = TopPH;
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DCodeExtractor.h185 BasicBlock *&ExitBlock) const;
207 Instruction *Addr, BasicBlock *ExitBlock) const;
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Analysis/
H A DSyncDependenceAnalysis.cpp319 for (const auto *ExitBlock : ReachedLoopExits) {
320 auto ItExitDef = DefMap.find(ExitBlock);
324 JoinBlocks->insert(ExitBlock);
H A DMustExecute.cpp113 /// Return true if we can prove that the given ExitBlock is not reached on the
115 /// be executed before the ExitBlock is executed in any dynamic execution trace.
116 static bool CanProveNotTakenFirstIteration(const BasicBlock *ExitBlock, argument
119 auto *CondExitBlock = ExitBlock->getSinglePredecessor();
127 // If condition is constant and false leads to ExitBlock then we always
130 return BI->getSuccessor(Cond->getZExtValue() ? 1 : 0) == ExitBlock;
141 auto DL = ExitBlock->getModule()->getDataLayout();
150 if (ExitBlock == BI->getSuccessor(0))
152 assert(ExitBlock == BI->getSuccessor(1) && "implied by above");
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/IPO/
H A DPartialInlining.cpp186 BasicBlock *EntryBlock, BasicBlock *ExitBlock,
189 ExitBlock(ExitBlock), ReturnBlock(ReturnBlock) {}
192 BasicBlock *ExitBlock; member in struct:__anon2600::FunctionOutliningMultiRegionInfo::OutlineRegionInfo
422 BasicBlock *ExitBlock = nullptr;
426 if (ExitBlock) {
436 ExitBlock = Block;
440 return ExitBlock;
506 BasicBlock *ExitBlock = nullptr; local
508 if (!(ExitBlock
185 OutlineRegionInfo(ArrayRef<BasicBlock *> Region, BasicBlock *EntryBlock, BasicBlock *ExitBlock, BasicBlock *ReturnBlock) argument
[all...]
/freebsd-11-stable/contrib/llvm-project/clang/lib/CodeGen/
H A DCGCUDANV.cpp622 llvm::BasicBlock *ExitBlock = local
643 CtorBuilder.CreateCondBr(EQZero, IfBlock, ExitBlock);
652 CtorBuilder.CreateBr(ExitBlock);
655 CtorBuilder.SetInsertPoint(ExitBlock);
781 llvm::BasicBlock *ExitBlock = local
785 DtorBuilder.CreateCondBr(NEZero, IfBlock, ExitBlock);
790 DtorBuilder.CreateBr(ExitBlock);
792 DtorBuilder.SetInsertPoint(ExitBlock);
H A DCGDeclCXX.cpp681 llvm::BasicBlock *ExitBlock = nullptr; local
689 ExitBlock = createBasicBlock("exit");
690 EmitCXXGuardedInitBranch(Uninit, InitBlock, ExitBlock,
720 if (ExitBlock) {
721 Builder.CreateBr(ExitBlock);
722 EmitBlock(ExitBlock);
H A DCGStmt.cpp762 llvm::BasicBlock *ExitBlock = LoopExit.getBlock(); local
764 ExitBlock = createBasicBlock("while.exit");
766 BoolCondVal, LoopBody, ExitBlock,
769 if (ExitBlock != LoopExit.getBlock()) {
770 EmitBlock(ExitBlock);
908 llvm::BasicBlock *ExitBlock = LoopExit.getBlock(); local
912 ExitBlock = createBasicBlock("for.cond.cleanup");
921 BoolCondVal, ForBody, ExitBlock,
924 if (ExitBlock != LoopExit.getBlock()) {
925 EmitBlock(ExitBlock);
991 llvm::BasicBlock *ExitBlock = LoopExit.getBlock(); local
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DLoopUtils.cpp525 auto *ExitBlock = L->getUniqueExitBlock(); local
526 assert(ExitBlock && "Should have a unique exit block!");
558 Builder.CreateCondBr(Builder.getFalse(), L->getHeader(), ExitBlock);
564 for (PHINode &P : ExitBlock->phis()) {
587 Builder.CreateBr(ExitBlock);
595 DTU.applyUpdates({{DominatorTree::Insert, Preheader, ExitBlock},
642 DIBuilder DIB(*ExitBlock->getModule());
643 Instruction *InsertDbgValueBefore = ExitBlock->getFirstNonPHI();
H A DCodeExtractor.cpp445 BasicBlock *ExitBlock) const {
480 if (Info.HoistLifeEnd && !ExitBlock)
488 BasicBlock *&ExitBlock) const {
490 ExitBlock = getCommonExitBlock(Blocks);
521 LifetimeMarkerInfo MarkerInfo = getLifetimeMarkers(CEAC, AI, ExitBlock);
535 LifetimeMarkerInfo LMI = getLifetimeMarkers(CEAC, Bitcast, ExitBlock);
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/
H A DInstrProfiling.cpp197 BasicBlock *ExitBlock = ExitBlocks[i]; variable
199 // Get LiveIn value into the ExitBlock. If there are multiple
202 Value *LiveInValue = SSA.GetValueInMiddleOfBlock(ExitBlock);
218 auto *TargetLoop = LI.getLoopFor(ExitBlock);
249 for (BasicBlock *ExitBlock : LoopExitBlocks) {
250 if (BlockSet.insert(ExitBlock).second) {
251 ExitBlocks.push_back(ExitBlock);
252 InsertPts.push_back(&*ExitBlock->getFirstInsertionPt());
H A DControlHeightReduction.cpp379 BasicBlock *ExitBlock,
1579 BasicBlock *EntryBlock, BasicBlock *ExitBlock,
1602 !(isa<PHINode>(UI) && UI->getParent() == ExitBlock)) {
1619 // ExitBlock. Replace I with the new phi in UI unless UI is another
1620 // phi at ExitBlock.
1621 unsigned PredCount = std::distance(pred_begin(ExitBlock),
1622 pred_end(ExitBlock));
1624 &ExitBlock->front());
1625 for (BasicBlock *Pred : predecessors(ExitBlock)) {
1708 BasicBlock *ExitBlock local
1578 insertTrivialPHIs(CHRScope *Scope, BasicBlock *EntryBlock, BasicBlock *ExitBlock, DenseSet<PHINode *> &TrivialPHIs) argument
1768 cloneScopeBlocks(CHRScope *Scope, BasicBlock *PreEntryBlock, BasicBlock *ExitBlock, Region *LastRegion, ValueToValueMapTy &VMap) argument
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Remarks/
H A DBitstreamRemarkSerializer.cpp230 Bitstream.ExitBlock();
265 Bitstream.ExitBlock();
315 Bitstream.ExitBlock();
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Bitcode/Writer/
H A DBitcodeWriter.cpp785 Stream.ExitBlock();
807 Stream.ExitBlock();
967 Stream.ExitBlock();
2132 Stream.ExitBlock();
2143 Stream.ExitBlock();
2189 Stream.ExitBlock();
2213 Stream.ExitBlock();
2240 Stream.ExitBlock();
2258 Stream.ExitBlock();
2533 Stream.ExitBlock();
[all...]
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlan.h1203 /// Set \p ExitBlock as the exit VPBlockBase of this VPRegionBlock. \p
1204 /// ExitBlock must have no successors.
1205 void setExit(VPBlockBase *ExitBlock) {
1206 assert(ExitBlock->getSuccessors().empty() &&
1208 Exit = ExitBlock;
1209 ExitBlock->setParent(this);
/freebsd-11-stable/contrib/llvm-project/clang/lib/Frontend/
H A DSerializedDiagnosticPrinter.cpp510 Stream.ExitBlock();
520 Stream.ExitBlock();
668 State->Stream.ExitBlock();
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Bitstream/
H A DBitstreamWriter.h228 void ExitBlock() { function in class:llvm::BitstreamWriter
/freebsd-11-stable/contrib/llvm-project/clang/lib/Serialization/
H A DGlobalModuleIndex.cpp507 Stream.ExitBlock();
848 Stream.ExitBlock();
H A DASTWriter.cpp938 Stream.ExitBlock();
1057 Stream.ExitBlock();
1318 Stream.ExitBlock();
1358 Stream.ExitBlock();
1489 Stream.ExitBlock();
1998 Stream.ExitBlock();
2278 Stream.ExitBlock();
2374 Stream.ExitBlock();
2693 Stream.ExitBlock();
2903 auto _ = llvm::make_scope_exit([this] { Stream.ExitBlock(); });
[all...]

Completed in 234 milliseconds

12