Searched refs:SplitBB (Results 1 - 6 of 6) sorted by relevance

/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DBreakCriticalEdges.cpp105 /// of preds inside the loop, SplitBB is the new loop exit block, and DestBB is
106 /// the old loop exit, now the successor of SplitBB.
108 BasicBlock *SplitBB,
110 // SplitBB shouldn't have anything non-trivial in it yet.
111 assert((SplitBB->getFirstNonPHI() == SplitBB->getTerminator() ||
112 SplitBB->isLandingPad()) && "SplitBB has non-PHI nodes!");
116 unsigned Idx = PN.getBasicBlockIndex(SplitBB);
122 if (VP->getParent() == SplitBB)
107 createPHIsForSplitLoopExit(ArrayRef<BasicBlock *> Preds, BasicBlock *SplitBB, BasicBlock *DestBB) argument
[all...]
/freebsd-12-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/
H A DPredicateInfo.h164 // If true, SplitBB is the true successor, otherwise it's the false successor.
166 PredicateBranch(Value *Op, BasicBlock *BranchBB, BasicBlock *SplitBB, argument
168 : PredicateWithEdge(PT_Branch, Op, BranchBB, SplitBB, Condition),
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DSimpleLoopUnswitch.cpp712 auto *SplitBB = local
714 rewritePHINodesForExitAndUnswitchedBlocks(*DefaultExitBB, *SplitBB,
717 DefaultExitBB = SplitExitBBMap[DefaultExitBB] = SplitBB;
966 /// after the split block (`SplitBB`) that will be used to select between the
987 Loop &L, BasicBlock *LoopPH, BasicBlock *SplitBB,
2034 BasicBlock *SplitBB = L.getLoopPreheader(); local
2035 BasicBlock *LoopPH = SplitEdge(SplitBB, L.getHeader(), &DT, &LI, MSSAU);
2047 L, LoopPH, SplitBB, ExitBlocks, ParentBB, SuccBB, RetainedSuccBB,
2054 SplitBB->getTerminator()->eraseFromParent();
2058 SplitBB
986 buildClonedLoopBlocks( Loop &L, BasicBlock *LoopPH, BasicBlock *SplitBB, ArrayRef<BasicBlock *> ExitBlocks, BasicBlock *ParentBB, BasicBlock *UnswitchedSuccBB, BasicBlock *ContinueSuccBB, const SmallDenseMap<BasicBlock *, BasicBlock *, 16> &DominatingSucc, ValueToValueMapTy &VMap, SmallVectorImpl<DominatorTree::UpdateType> &DTUpdates, AssumptionCache &AC, DominatorTree &DT, LoopInfo &LI, MemorySSAUpdater *MSSAU) argument
[all...]
H A DCallSiteSplitting.cpp241 /// Insert this sequence right before `SplitBB`'s terminator, which will be
243 static void copyMustTailReturn(BasicBlock *SplitBB, Instruction *CI, argument
245 bool IsVoid = SplitBB->getParent()->getReturnType()->isVoidTy();
255 Instruction *TI = SplitBB->getTerminator();
H A DJumpThreading.cpp2614 BasicBlock *SplitBB = SI->getParent(); local
2621 // NewBB and SplitBB are newly created blocks which require insertion.
2623 Updates.reserve((2 * SplitBB->getTerminator()->getNumSuccessors()) + 3);
2624 Updates.push_back({DominatorTree::Insert, BB, SplitBB});
2626 Updates.push_back({DominatorTree::Insert, NewBB, SplitBB});
2627 // BB's successors were moved to SplitBB, update DTU accordingly.
2628 for (auto *Succ : successors(SplitBB)) {
2630 Updates.push_back({DominatorTree::Insert, SplitBB, Succ});
/freebsd-12-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIISelLowering.cpp3050 MachineBasicBlock *SplitBB local
3053 MF->insert(++MachineFunction::iterator(BB), SplitBB);
3054 SplitBB->splice(SplitBB->begin(), BB, SplitPoint, BB->end());
3056 SplitBB->transferSuccessorsAndUpdatePHIs(BB);
3057 BB->addSuccessor(SplitBB);
3060 return SplitBB;

Completed in 173 milliseconds