/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | BranchRelaxation.cpp | 265 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 D | MachineLoopUtils.cpp | 40 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 D | ModuloSchedule.cpp | 204 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 D | MachineDominators.cpp | 109 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 D | BreakCriticalEdges.cpp | 168 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 D | CloneFunction.cpp | 63 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 D | BasicBlockUtils.cpp | 869 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 D | LoopUnrollRuntime.cpp | 359 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 D | LoopSimplify.cpp | 81 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 D | CodeExtractor.cpp | 702 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 D | LoopPeel.cpp | 729 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 D | MSP430BranchSelector.cpp | 152 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 D | MachineDominators.h | 57 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 D | ModuloSchedule.h | 198 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 D | JumpThreading.cpp | 1952 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 D | DFAJumpThreading.cpp | 930 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 D | GVNHoist.cpp | 606 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 D | CSKYConstantIslandPass.cpp | 621 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 D | ARMConstantIslandPass.cpp | 974 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 D | MipsConstantIslandPass.cpp | 822 (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 D | VPlan.cpp | 417 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 D | GenericDomTree.h | 679 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 D | LoopInfo.h | 470 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 D | JumpThreading.h | 116 void updateSSA(BasicBlock *BB, BasicBlock *NewBB, 120 BasicBlock *NewBB, 172 BasicBlock *NewBB, BasicBlock *SuccBB,
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
H A D | AArch64PromoteConstant.cpp | 412 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()
|