Home
last modified time | relevance | path

Searched refs:NewBB (Results 1 – 25 of 51) sorted by relevance

123

/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DBranchRelaxation.cpp265 return NewBB; in createNewBlockAfter()
277 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local
287 NewBB->splice(NewBB->end(), OrigBB, MI.getIterator(), OrigBB->end()); in splitBlockBeforeInstr()
299 OrigBB->addSuccessor(NewBB); in splitBlockBeforeInstr()
315 BlockInfo[NewBB->getNumber()].Size = computeBlockSize(*NewBB); in splitBlockBeforeInstr()
326 return NewBB; in splitBlockBeforeInstr()
413 NewBB = in fixupConditionalBranch()
440 MF->erase(NewBB); in fixupConditionalBranch()
528 NewBB->addSuccessor(TBB); in fixupConditionalBranch()
603 BlockInfo[NewBB->getNumber()].Size = computeBlockSize(*NewBB); in fixupUnconditionalBranch()
[all …]
H A DMachineLoopUtils.cpp40 MF.insert(Loop->getIterator(), NewBB); in PeelSingleBlockLoop()
45 auto InsertPt = NewBB->end(); in PeelSingleBlockLoop()
48 NewBB->insert(InsertPt, NewMI); in PeelSingleBlockLoop()
77 for (auto I = NewBB->getFirstNonPHI(); I != NewBB->end(); ++I) in PeelSingleBlockLoop()
111 NewBB->addSuccessor(Loop); in PeelSingleBlockLoop()
114 TII->removeBranch(*NewBB); in PeelSingleBlockLoop()
117 Loop->replaceSuccessor(Exit, NewBB); in PeelSingleBlockLoop()
118 Exit->replacePhiUsesWith(Loop, NewBB); in PeelSingleBlockLoop()
119 NewBB->addSuccessor(Exit); in PeelSingleBlockLoop()
129 if (TII->removeBranch(*NewBB) > 0) in PeelSingleBlockLoop()
[all …]
H A DModuloSchedule.cpp204 PrologBBs.push_back(NewBB); in generateProlog()
208 PredBB = NewBB; in generateProlog()
230 NewBB->dump(); in generateProlog()
284 EpilogStart = NewBB; in generateEpilog()
307 PredBB = NewBB; in generateEpilog()
311 NewBB->dump(); in generateEpilog()
549 BuildMI(*NewBB, NewBB->getFirstNonPHI(), DebugLoc(), in generateExistingPhis()
688 BuildMI(*NewBB, NewBB->getFirstNonPHI(), DebugLoc(), in generatePhis()
1604 return NewBB; in peelKernel()
1892 TII->insertBranch(*BB, TBB == Exit ? NewBB : TBB, FBB == Exit ? NewBB : FBB, in CreateLCSSAExitingBlock()
[all …]
H A DMachineDominators.cpp109 if (PredBB == Edge.NewBB) in applySplitCriticalEdges()
141 MachineDomTreeNode *NewDTNode = DT->addNewBlock(Edge.NewBB, Edge.FromBB); in applySplitCriticalEdges()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DBreakCriticalEdges.cpp168 BasicBlock *NewBB = nullptr; in SplitKnownCriticalEdge() local
182 F.insert(++FBBI, NewBB); in SplitKnownCriticalEdge()
185 TI->setSuccessor(SuccNum, NewBB); in SplitKnownCriticalEdge()
204 PN->setIncomingBlock(BBIdx, NewBB); in SplitKnownCriticalEdge()
219 TI->setSuccessor(i, NewBB); in SplitKnownCriticalEdge()
232 return NewBB; in SplitKnownCriticalEdge()
264 DestLoop->addBasicBlockToLoop(NewBB, *LI); in SplitKnownCriticalEdge()
267 TIL->addBasicBlockToLoop(NewBB, *LI); in SplitKnownCriticalEdge()
279 P->addBasicBlockToLoop(NewBB, *LI); in SplitKnownCriticalEdge()
286 assert(!TIL->contains(NewBB) && in SplitKnownCriticalEdge()
[all …]
H A DCloneFunction.cpp63 NewInst->insertBefore(*NewBB, NewBB->end()); in CloneBasicBlock()
84 return NewBB; in CloneBasicBlock()
482 BasicBlock *NewBB; in CloneBlock() local
527 NewInst->insertInto(NewBB, NewBB->end()); in CloneBlock()
628 NewInst->insertInto(NewBB, NewBB->end()); in CloneBlock()
721 if (!NewBB) in CloneAndPruneIntoFromInst()
783 NumPreds = pred_size(NewBB); in CloneAndPruneIntoFromInst()
1057 VMap[BB] = NewBB; in cloneLoopWithPreheader()
1064 DT->addNewBlock(NewBB, NewPH); in cloneLoopWithPreheader()
1066 Blocks.push_back(NewBB); in cloneLoopWithPreheader()
[all …]
H A DBasicBlockUtils.cpp869 auto *NewBB = in ehAwareSplitEdge() local
899 return NewBB; in ehAwareSplitEdge()
966 return NewBB; in ehAwareSplitEdge()
1162 assert(NewBB->isEntryBlock()); in UpdateAnalysisInformation()
1163 DT->setNewRoot(NewBB); in UpdateAnalysisInformation()
1166 DT->splitBlock(NewBB); in UpdateAnalysisInformation()
1239 L->addBasicBlockToLoop(NewBB, *LI); in UpdateAnalysisInformation()
1241 L->moveToHeader(NewBB); in UpdateAnalysisInformation()
1284 PN->addIncoming(InVal, NewBB); in UpdatePHINodes()
1306 PN->addIncoming(NewPHI, NewBB); in UpdatePHINodes()
[all …]
H A DLoopUnrollRuntime.cpp359 BasicBlock *NewBB = CloneBasicBlock(*BB, VMap, "." + suffix, F); in CloneLoopBlocks() local
360 NewBlocks.push_back(NewBB); in CloneLoopBlocks()
362 addClonedBlockToLoopInfo(*BB, NewBB, LI, NewLoops); in CloneLoopBlocks()
364 VMap[*BB] = NewBB; in CloneLoopBlocks()
368 InsertTop->getTerminator()->setSuccessor(0, NewBB); in CloneLoopBlocks()
374 DT->addNewBlock(NewBB, InsertTop); in CloneLoopBlocks()
378 DT->addNewBlock(NewBB, cast<BasicBlock>(VMap[IDomBB])); in CloneLoopBlocks()
389 BranchInst *LatchBR = cast<BranchInst>(NewBB->getTerminator()); in CloneLoopBlocks()
420 NewIdx->addIncoming(IdxNext, NewBB); in CloneLoopBlocks()
H A DLoopSimplify.cpp81 static void placeSplitBlockCarefully(BasicBlock *NewBB, in placeSplitBlockCarefully() argument
85 Function::iterator BBI = --NewBB->getIterator(); in placeSplitBlockCarefully()
100 if (++BBI != NewBB->getParent()->end() && L->contains(&*BBI)) { in placeSplitBlockCarefully()
111 NewBB->moveAfter(FoundBB); in placeSplitBlockCarefully()
272 BasicBlock *NewBB = SplitBlockPredecessors(Header, OuterLoopPreds, ".outer", in separateNestedLoop() local
277 placeSplitBlockCarefully(NewBB, OuterLoopPreds, L); in separateNestedLoop()
316 OuterLoopBlocks.push_back(NewBB); in separateNestedLoop()
H A DCodeExtractor.cpp702 Blocks.insert(NewBB); in severSplitPHINodesOfEntry()
703 Header = NewBB; in severSplitPHINodesOfEntry()
714 TI->replaceUsesOfWith(OldPred, NewBB); in severSplitPHINodesOfEntry()
726 NewPN->insertBefore(NewBB->begin()); in severSplitPHINodesOfEntry()
750 BasicBlock *NewBB = nullptr; in severSplitPHINodesOfExits() local
767 if (!NewBB) { in severSplitPHINodesOfExits()
768 NewBB = BasicBlock::Create(ExitBB->getContext(), in severSplitPHINodesOfExits()
776 BranchInst::Create(ExitBB, NewBB); in severSplitPHINodesOfExits()
777 Blocks.insert(NewBB); in severSplitPHINodesOfExits()
783 NewPN->insertBefore(NewBB->getFirstNonPHIIt()); in severSplitPHINodesOfExits()
[all …]
H A DLoopPeel.cpp729 BasicBlock *NewBB = CloneBasicBlock(*BB, VMap, ".peel", F); in cloneLoopBlocks() local
730 NewBlocks.push_back(NewBB); in cloneLoopBlocks()
736 ParentLoop->addBasicBlockToLoop(NewBB, *LI); in cloneLoopBlocks()
738 VMap[*BB] = NewBB; in cloneLoopBlocks()
743 DT->addNewBlock(NewBB, InsertTop); in cloneLoopBlocks()
747 DT->addNewBlock(NewBB, cast<BasicBlock>(VMap[IDom->getBlock()])); in cloneLoopBlocks()
/freebsd/contrib/llvm-project/llvm/lib/Target/MSP430/
H A DMSP430BranchSelector.cpp152 MachineBasicBlock *NewBB = in expandBranches() local
154 MF->insert(std::next(MBB), NewBB); in expandBranches()
157 NewBB->splice(NewBB->end(), &*MBB, std::next(MI), MBB->end()); in expandBranches()
164 MBB->replaceSuccessor(Succ, NewBB); in expandBranches()
165 NewBB->addSuccessor(Succ); in expandBranches()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DMachineDominators.h57 MachineBasicBlock *NewBB; member
213 void splitBlock(MachineBasicBlock* NewBB) { in splitBlock() argument
215 DT->splitBlock(NewBB); in splitBlock()
245 MachineBasicBlock *NewBB) { in recordSplitCriticalEdge() argument
246 bool Inserted = NewBBs.insert(NewBB).second; in recordSplitCriticalEdge()
250 CriticalEdgesToSplit.push_back({FromBB, ToBB, NewBB}); in recordSplitCriticalEdge()
H A DModuloSchedule.h198 void generateExistingPhis(MachineBasicBlock *NewBB, MachineBasicBlock *BB1,
203 void generatePhis(MachineBasicBlock *NewBB, MachineBasicBlock *BB1,
228 void rewritePhiValues(MachineBasicBlock *NewBB, unsigned StageNum,
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DJumpThreading.cpp1952 BasicBlock *BB, BasicBlock *NewBB, in updateSSA() argument
2097 New->insertInto(NewBB, NewBB->end()); in cloneInstructions()
2120 DPMarker *EndMarker = NewBB->createMarker(NewBB->end()); in cloneInstructions()
2285 BasicBlock *NewBB = in threadThroughTwoBasicBlocks() local
2288 NewBB->moveAfter(PredBB); in threadThroughTwoBasicBlocks()
2337 PredsToFactor.push_back(NewBB); in threadThroughTwoBasicBlocks()
2414 NewBB->moveAfter(PredBB); in threadEdge()
2444 PredTerm->setSuccessor(i, NewBB); in threadEdge()
2452 updateSSA(BB, NewBB, ValueMapping); in threadEdge()
2496 for (auto *NewBB : NewBBs) { in splitBlockPreds() local
[all …]
H A DDFAJumpThreading.cpp930 BasicBlock *NewBB = cloneBlockAndUpdatePredecessor( in createExitPath() local
932 DuplicateMap[BB].push_back({NewBB, NextState}); in createExitPath()
933 BlocksToClean.insert(NewBB); in createExitPath()
934 PrevBB = NewBB; in createExitPath()
1002 BasicBlock *NewBB = CloneBasicBlock( in cloneBlockAndUpdatePredecessor() local
1005 NewBB->moveAfter(BB); in cloneBlockAndUpdatePredecessor()
1008 for (Instruction &I : *NewBB) { in cloneBlockAndUpdatePredecessor()
1021 updatePredecessor(PrevBB, BB, NewBB, DTU); in cloneBlockAndUpdatePredecessor()
1026 for (auto *SuccBB : successors(NewBB)) { in cloneBlockAndUpdatePredecessor()
1031 return NewBB; in cloneBlockAndUpdatePredecessor()
[all …]
H A DGVNHoist.cpp606 const BasicBlock *NewBB = NewPt->getParent(); in hasMemoryUse() local
618 if (BB == NewBB) { in hasMemoryUse()
653 const BasicBlock *NewBB = NewPt->getParent(); in hasEHOrLoadsOnPath() local
655 assert(DT->dominates(NewBB, OldBB) && "invalid path"); in hasEHOrLoadsOnPath()
665 if (BB == NewBB) { in hasEHOrLoadsOnPath()
725 const BasicBlock *NewBB = NewPt->getParent(); in safeToHoistLdSt() local
732 if (DT->properlyDominates(NewBB, DBB)) in safeToHoistLdSt()
736 if (NewBB == DBB && !MSSA->isLiveOnEntryDef(D)) in safeToHoistLdSt()
746 } else if (hasEHOnPath(NewBB, OldBB, NBBsOnAllPaths)) in safeToHoistLdSt()
749 if (UBB == NewBB) { in safeToHoistLdSt()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/CSKY/
H A DCSKYConstantIslandPass.cpp621 MachineBasicBlock *NewBB) { in updateForInsertedWaterBlock() argument
623 NewBB->getParent()->RenumberBlocks(NewBB); in updateForInsertedWaterBlock()
632 WaterList.insert(IP, NewBB); in updateForInsertedWaterBlock()
651 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local
654 MF->insert(MBBI, NewBB); in splitBlockBeforeInstr()
657 NewBB->splice(NewBB->end(), OrigBB, MI, OrigBB->end()); in splitBlockBeforeInstr()
669 NewBB->transferSuccessors(OrigBB); in splitBlockBeforeInstr()
672 OrigBB->addSuccessor(NewBB); in splitBlockBeforeInstr()
677 MF->RenumberBlocks(NewBB); in splitBlockBeforeInstr()
704 computeBlockSize(NewBB); in splitBlockBeforeInstr()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMConstantIslandPass.cpp974 NewBB->getParent()->RenumberBlocks(NewBB); in updateForInsertedWaterBlock()
1000 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local
1003 MF->insert(MBBI, NewBB); in splitBlockBeforeInstr()
1006 NewBB->splice(NewBB->end(), OrigBB, MI, OrigBB->end()); in splitBlockBeforeInstr()
1017 .addMBB(NewBB) in splitBlockBeforeInstr()
1031 NewBB->addLiveIn(L); in splitBlockBeforeInstr()
1068 return NewBB; in splitBlockBeforeInstr()
2454 if (NewBB) in reorderThumb2JumpTables()
2498 MF->insert(MBBI, NewBB); in adjustJTTargetBlockForward()
2520 NewBB->addSuccessor(BB); in adjustJTTargetBlockForward()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/Mips/
H A DMipsConstantIslandPass.cpp822 (MachineBasicBlock *NewBB) { in updateForInsertedWaterBlock() argument
824 NewBB->getParent()->RenumberBlocks(NewBB); in updateForInsertedWaterBlock()
833 WaterList.insert(IP, NewBB); in updateForInsertedWaterBlock()
848 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local
851 MF->insert(MBBI, NewBB); in splitBlockBeforeInstr()
854 NewBB->splice(NewBB->end(), OrigBB, MI, OrigBB->end()); in splitBlockBeforeInstr()
864 NewBB->transferSuccessors(OrigBB); in splitBlockBeforeInstr()
867 OrigBB->addSuccessor(NewBB); in splitBlockBeforeInstr()
872 MF->RenumberBlocks(NewBB); in splitBlockBeforeInstr()
899 computeBlockSize(NewBB); in splitBlockBeforeInstr()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlan.cpp417 auto *Br = BranchInst::Create(NewBB, PredBB); in createEmptyBasicBlock()
420 TermBr->setSuccessor(0, NewBB); in createEmptyBasicBlock()
427 TermBr->setSuccessor(idx, NewBB); in createEmptyBasicBlock()
430 return NewBB; in createEmptyBasicBlock()
447 NewBB = State->CFG.ExitBB; in execute()
448 State->CFG.PrevBB = NewBB; in execute()
476 NewBB = createEmptyBasicBlock(State->CFG); in execute()
477 State->Builder.SetInsertPoint(NewBB); in execute()
485 State->CFG.PrevBB = NewBB; in execute()
492 State->CFG.VPBB2IRBB[this] = NewBB; in execute()
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/Support/
H A DGenericDomTree.h679 void changeImmediateDominator(NodeT *BB, NodeT *NewBB) {
680 changeImmediateDominator(getNode(BB), getNode(NewBB));
717 void splitBlock(NodeT *NewBB) {
719 Split<Inverse<NodeT *>>(NewBB);
721 Split<NodeT *>(NewBB);
850 void Split(typename GraphTraits<N>::NodeRef NewBB) {
853 assert(llvm::hasSingleElement(children<N>(NewBB)) &&
855 NodeRef NewBBSucc = *GraphT::child_begin(NewBB);
857 SmallVector<NodeRef, 4> PredBlocks(inverse_children<N>(NewBB));
863 if (Pred != NewBB && !dominates(NewBBSucc, Pred) &&
[all …]
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DLoopInfo.h470 auto *NewBB = NewLoc->getParent(); in movementPreservesLCSSAForm() local
474 if (OldBB == NewBB) in movementPreservesLCSSAForm()
478 auto *NewLoop = getLoopFor(NewBB); in movementPreservesLCSSAForm()
501 if (UBB != NewBB && getLoopFor(UBB) != NewLoop) in movementPreservesLCSSAForm()
523 if (DefBlock != NewBB && getLoopFor(DefBlock) != NewLoop) in movementPreservesLCSSAForm()
/freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Scalar/
H A DJumpThreading.h116 void updateSSA(BasicBlock *BB, BasicBlock *NewBB,
120 BasicBlock *NewBB,
172 BasicBlock *NewBB, BasicBlock *SuccBB,
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64PromoteConstant.cpp412 BasicBlock *NewBB = NewPt->getParent(); in tryAndMerge() local
421 if (NewBB == CurBB) { in tryAndMerge()
433 BasicBlock *CommonDominator = DT.findNearestCommonDominator(NewBB, CurBB); in tryAndMerge()
438 if (CommonDominator != NewBB) { in tryAndMerge()

123