/external/llvm-project/llvm/lib/CodeGen/ |
D | MachineLoopUtils.cpp | 39 MachineBasicBlock *NewBB = MF.CreateMachineBasicBlock(Loop->getBasicBlock()); in PeelSingleBlockLoop() local 41 MF.insert(Loop->getIterator(), NewBB); in PeelSingleBlockLoop() 43 MF.insert(std::next(Loop->getIterator()), NewBB); in PeelSingleBlockLoop() 46 auto InsertPt = NewBB->end(); in PeelSingleBlockLoop() 49 NewBB->insert(InsertPt, NewMI); in PeelSingleBlockLoop() 74 for (auto I = NewBB->getFirstNonPHI(); I != NewBB->end(); ++I) in PeelSingleBlockLoop() 79 for (auto I = NewBB->begin(); I->isPHI(); ++I) { in PeelSingleBlockLoop() 107 Preheader->replaceSuccessor(Loop, NewBB); in PeelSingleBlockLoop() 108 NewBB->addSuccessor(Loop); in PeelSingleBlockLoop() 109 Loop->replacePhiUsesWith(Preheader, NewBB); in PeelSingleBlockLoop() [all …]
|
D | BranchRelaxation.cpp | 208 MachineBasicBlock *NewBB = in createNewBlockAfter() local 210 MF->insert(++BB.getIterator(), NewBB); in createNewBlockAfter() 213 BlockInfo.insert(BlockInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); in createNewBlockAfter() 215 return NewBB; in createNewBlockAfter() 226 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local 228 MF->insert(++OrigBB->getIterator(), NewBB); in splitBlockBeforeInstr() 231 NewBB->splice(NewBB->end(), OrigBB, MI.getIterator(), OrigBB->end()); in splitBlockBeforeInstr() 237 TII->insertUnconditionalBranch(*OrigBB, NewBB, DebugLoc()); in splitBlockBeforeInstr() 240 BlockInfo.insert(BlockInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); in splitBlockBeforeInstr() 242 NewBB->transferSuccessors(OrigBB); in splitBlockBeforeInstr() [all …]
|
D | ModuloSchedule.cpp | 203 MachineBasicBlock *NewBB = MF.CreateMachineBasicBlock(BB->getBasicBlock()); in generateProlog() local 204 PrologBBs.push_back(NewBB); in generateProlog() 205 MF.insert(BB->getIterator(), NewBB); in generateProlog() 206 NewBB->transferSuccessors(PredBB); in generateProlog() 207 PredBB->addSuccessor(NewBB); in generateProlog() 208 PredBB = NewBB; in generateProlog() 222 NewBB->push_back(NewMI); in generateProlog() 227 rewritePhiValues(NewBB, i, VRMap, InstrMap); in generateProlog() 230 NewBB->dump(); in generateProlog() 277 MachineBasicBlock *NewBB = MF.CreateMachineBasicBlock(); in generateEpilog() local [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/CodeGen/ |
D | MachineLoopUtils.cpp | 39 MachineBasicBlock *NewBB = MF.CreateMachineBasicBlock(Loop->getBasicBlock()); in PeelSingleBlockLoop() local 41 MF.insert(Loop->getIterator(), NewBB); in PeelSingleBlockLoop() 43 MF.insert(std::next(Loop->getIterator()), NewBB); in PeelSingleBlockLoop() 47 auto InsertPt = NewBB->end(); in PeelSingleBlockLoop() 50 NewBB->insert(InsertPt, NewMI); in PeelSingleBlockLoop() 75 for (auto I = NewBB->getFirstNonPHI(); I != NewBB->end(); ++I) in PeelSingleBlockLoop() 80 for (auto I = NewBB->begin(); I->isPHI(); ++I) { in PeelSingleBlockLoop() 108 Preheader->replaceSuccessor(Loop, NewBB); in PeelSingleBlockLoop() 109 NewBB->addSuccessor(Loop); in PeelSingleBlockLoop() 110 Loop->replacePhiUsesWith(Preheader, NewBB); in PeelSingleBlockLoop() [all …]
|
D | BranchRelaxation.cpp | 213 MachineBasicBlock *NewBB = in createNewBlockAfter() local 215 MF->insert(++BB.getIterator(), NewBB); in createNewBlockAfter() 218 BlockInfo.insert(BlockInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); in createNewBlockAfter() 220 return NewBB; in createNewBlockAfter() 231 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local 233 MF->insert(++OrigBB->getIterator(), NewBB); in splitBlockBeforeInstr() 236 NewBB->splice(NewBB->end(), OrigBB, MI.getIterator(), OrigBB->end()); in splitBlockBeforeInstr() 242 TII->insertUnconditionalBranch(*OrigBB, NewBB, DebugLoc()); in splitBlockBeforeInstr() 245 BlockInfo.insert(BlockInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); in splitBlockBeforeInstr() 247 NewBB->transferSuccessors(OrigBB); in splitBlockBeforeInstr() [all …]
|
D | ModuloSchedule.cpp | 204 MachineBasicBlock *NewBB = MF.CreateMachineBasicBlock(BB->getBasicBlock()); in generateProlog() local 205 PrologBBs.push_back(NewBB); in generateProlog() 206 MF.insert(BB->getIterator(), NewBB); in generateProlog() 207 NewBB->transferSuccessors(PredBB); in generateProlog() 208 PredBB->addSuccessor(NewBB); in generateProlog() 209 PredBB = NewBB; in generateProlog() 223 NewBB->push_back(NewMI); in generateProlog() 228 rewritePhiValues(NewBB, i, VRMap, InstrMap); in generateProlog() 231 NewBB->dump(); in generateProlog() 278 MachineBasicBlock *NewBB = MF.CreateMachineBasicBlock(); in generateEpilog() local [all …]
|
/external/llvm/lib/Transforms/Utils/ |
D | BreakCriticalEdges.cpp | 131 BasicBlock *NewBB = BasicBlock::Create(TI->getContext(), in SplitCriticalEdge() local 134 BranchInst *NewBI = BranchInst::Create(DestBB, NewBB); in SplitCriticalEdge() 138 TI->setSuccessor(SuccNum, NewBB); in SplitCriticalEdge() 143 F.getBasicBlockList().insert(++FBBI, NewBB); in SplitCriticalEdge() 162 PN->setIncomingBlock(BBIdx, NewBB); in SplitCriticalEdge() 177 TI->setSuccessor(i, NewBB); in SplitCriticalEdge() 185 return NewBB; in SplitCriticalEdge() 198 if (PN->getIncomingBlock(i) != NewBB) in SplitCriticalEdge() 204 if (P != NewBB) in SplitCriticalEdge() 219 DomTreeNode *NewBBNode = DT->addNewBlock(NewBB, TIBB); in SplitCriticalEdge() [all …]
|
D | CloneFunction.cpp | 43 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "", F); in CloneBasicBlock() local 44 if (BB->hasName()) NewBB->setName(BB->getName()+NameSuffix); in CloneBasicBlock() 54 NewBB->getInstList().push_back(NewInst); in CloneBasicBlock() 72 return NewBB; in CloneBasicBlock() 255 BasicBlock *NewBB; in CloneBlock() local 256 BBEntry = NewBB = BasicBlock::Create(BB->getContext()); in CloneBlock() 257 if (BB->hasName()) NewBB->setName(BB->getName()+NameSuffix); in CloneBlock() 271 VMap[OldBBAddr] = BlockAddress::get(NewFunc, NewBB); in CloneBlock() 310 NewBB->getInstList().push_back(NewInst); in CloneBlock() 342 VMap[OldTI] = BranchInst::Create(Dest, NewBB); in CloneBlock() [all …]
|
D | BasicBlockUtils.cpp | 278 static void UpdateAnalysisInformation(BasicBlock *OldBB, BasicBlock *NewBB, in UpdateAnalysisInformation() argument 284 DT->splitBlock(NewBB); in UpdateAnalysisInformation() 340 InnermostPredLoop->addBasicBlockToLoop(NewBB, *LI); in UpdateAnalysisInformation() 342 L->addBasicBlockToLoop(NewBB, *LI); in UpdateAnalysisInformation() 344 L->moveToHeader(NewBB); in UpdateAnalysisInformation() 350 static void UpdatePHINodes(BasicBlock *OrigBB, BasicBlock *NewBB, in UpdatePHINodes() argument 390 PN->addIncoming(InVal, NewBB); in UpdatePHINodes() 412 PN->addIncoming(NewPHI, NewBB); in UpdatePHINodes() 436 BasicBlock *NewBB = BasicBlock::Create( in SplitBlockPredecessors() local 440 BranchInst *BI = BranchInst::Create(BB, NewBB); in SplitBlockPredecessors() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Utils/ |
D | CloneFunction.cpp | 45 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "", F); in CloneBasicBlock() local 47 NewBB->setName(BB->getName() + NameSuffix); in CloneBasicBlock() 60 NewBB->getInstList().push_back(NewInst); in CloneBasicBlock() 78 return NewBB; in CloneBasicBlock() 310 BasicBlock *NewBB; in CloneBlock() local 311 BBEntry = NewBB = BasicBlock::Create(BB->getContext()); in CloneBlock() 312 if (BB->hasName()) NewBB->setName(BB->getName()+NameSuffix); in CloneBlock() 326 VMap[OldBBAddr] = BlockAddress::get(NewFunc, NewBB); in CloneBlock() 366 NewBB->getInstList().push_back(NewInst); in CloneBlock() 398 VMap[OldTI] = BranchInst::Create(Dest, NewBB); in CloneBlock() [all …]
|
D | BreakCriticalEdges.cpp | 162 BasicBlock *NewBB = BasicBlock::Create(TI->getContext(), in SplitCriticalEdge() local 165 BranchInst *NewBI = BranchInst::Create(DestBB, NewBB); in SplitCriticalEdge() 169 TI->setSuccessor(SuccNum, NewBB); in SplitCriticalEdge() 174 F.getBasicBlockList().insert(++FBBI, NewBB); in SplitCriticalEdge() 193 PN->setIncomingBlock(BBIdx, NewBB); in SplitCriticalEdge() 208 TI->setSuccessor(i, NewBB); in SplitCriticalEdge() 219 DestBB, NewBB, {TIBB}, Options.MergeIdenticalEdges); in SplitCriticalEdge() 222 return NewBB; in SplitCriticalEdge() 235 Updates.push_back({DominatorTree::Insert, TIBB, NewBB}); in SplitCriticalEdge() 236 Updates.push_back({DominatorTree::Insert, NewBB, DestBB}); in SplitCriticalEdge() [all …]
|
D | BasicBlockUtils.cpp | 552 static void UpdateAnalysisInformation(BasicBlock *OldBB, BasicBlock *NewBB, in UpdateAnalysisInformation() argument 560 assert(NewBB == &NewBB->getParent()->getEntryBlock()); in UpdateAnalysisInformation() 561 DT->setNewRoot(NewBB); in UpdateAnalysisInformation() 564 DT->splitBlock(NewBB); in UpdateAnalysisInformation() 570 MSSAU->wireOldPredecessorsToNewImmediatePredecessor(OldBB, NewBB, Preds); in UpdateAnalysisInformation() 633 InnermostPredLoop->addBasicBlockToLoop(NewBB, *LI); in UpdateAnalysisInformation() 635 L->addBasicBlockToLoop(NewBB, *LI); in UpdateAnalysisInformation() 637 L->moveToHeader(NewBB); in UpdateAnalysisInformation() 643 static void UpdatePHINodes(BasicBlock *OrigBB, BasicBlock *NewBB, in UpdatePHINodes() argument 683 PN->addIncoming(InVal, NewBB); in UpdatePHINodes() [all …]
|
/external/llvm-project/llvm/lib/Transforms/Utils/ |
D | CloneFunction.cpp | 45 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "", F); in CloneBasicBlock() local 47 NewBB->setName(BB->getName() + NameSuffix); in CloneBasicBlock() 60 NewBB->getInstList().push_back(NewInst); in CloneBasicBlock() 75 return NewBB; in CloneBasicBlock() 314 BasicBlock *NewBB; in CloneBlock() local 315 BBEntry = NewBB = BasicBlock::Create(BB->getContext()); in CloneBlock() 316 if (BB->hasName()) NewBB->setName(BB->getName()+NameSuffix); in CloneBlock() 330 VMap[OldBBAddr] = BlockAddress::get(NewFunc, NewBB); in CloneBlock() 370 NewBB->getInstList().push_back(NewInst); in CloneBlock() 402 VMap[OldTI] = BranchInst::Create(Dest, NewBB); in CloneBlock() [all …]
|
D | BreakCriticalEdges.cpp | 199 BasicBlock *NewBB = BasicBlock::Create(TI->getContext(), in SplitCriticalEdge() local 202 BranchInst *NewBI = BranchInst::Create(DestBB, NewBB); in SplitCriticalEdge() 208 F.getBasicBlockList().insert(++FBBI, NewBB); in SplitCriticalEdge() 211 TI->setSuccessor(SuccNum, NewBB); in SplitCriticalEdge() 230 PN->setIncomingBlock(BBIdx, NewBB); in SplitCriticalEdge() 245 TI->setSuccessor(i, NewBB); in SplitCriticalEdge() 255 DestBB, NewBB, {TIBB}, Options.MergeIdenticalEdges); in SplitCriticalEdge() 258 return NewBB; in SplitCriticalEdge() 271 Updates.push_back({DominatorTree::Insert, TIBB, NewBB}); in SplitCriticalEdge() 272 Updates.push_back({DominatorTree::Insert, NewBB, DestBB}); in SplitCriticalEdge() [all …]
|
/external/llvm-project/llvm/lib/Target/AMDGPU/ |
D | SIFixSGPRCopies.cpp | 635 MachineBasicBlock *NewBB = TII->moveToVALU(MI, MDT); in runOnMachineFunction() local 636 if (NewBB && NewBB != MBB) { in runOnMachineFunction() 637 MBB = NewBB; in runOnMachineFunction() 642 assert((!NewBB || NewBB == I->getParent()) && in runOnMachineFunction() 658 MachineBasicBlock *NewBB = TII->moveToVALU(MI, MDT); in runOnMachineFunction() local 659 if (NewBB && NewBB != MBB) { in runOnMachineFunction() 660 MBB = NewBB; in runOnMachineFunction() 665 assert((!NewBB || NewBB == I->getParent()) && in runOnMachineFunction() 674 MachineBasicBlock *NewBB = processPHINode(MI); in runOnMachineFunction() local 675 if (NewBB && NewBB != MBB) { in runOnMachineFunction() [all …]
|
/external/llvm-project/llvm/include/llvm/CodeGen/ |
D | MachineDominators.h | 53 MachineBasicBlock *NewBB; member 202 void splitBlock(MachineBasicBlock* NewBB) { in splitBlock() argument 204 DT->splitBlock(NewBB); in splitBlock() 234 MachineBasicBlock *NewBB) { in recordSplitCriticalEdge() argument 235 bool Inserted = NewBBs.insert(NewBB).second; in recordSplitCriticalEdge() 239 CriticalEdgesToSplit.push_back({FromBB, ToBB, NewBB}); in recordSplitCriticalEdge()
|
/external/llvm/include/llvm/CodeGen/ |
D | MachineDominators.h | 47 MachineBasicBlock *NewBB; member 205 inline void splitBlock(MachineBasicBlock* NewBB) { in splitBlock() argument 207 DT->splitBlock(NewBB); in splitBlock() 237 MachineBasicBlock *NewBB) { in recordSplitCriticalEdge() argument 238 bool Inserted = NewBBs.insert(NewBB).second; in recordSplitCriticalEdge() 242 CriticalEdgesToSplit.push_back({FromBB, ToBB, NewBB}); in recordSplitCriticalEdge()
|
/external/llvm-project/llvm/lib/Target/MSP430/ |
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()
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Target/MSP430/ |
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()
|
/external/llvm/lib/Target/AArch64/ |
D | AArch64BranchRelaxation.cpp | 228 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local 230 MF->insert(++OrigBB->getIterator(), NewBB); in splitBlockBeforeInstr() 233 NewBB->splice(NewBB->end(), OrigBB, MI, OrigBB->end()); in splitBlockBeforeInstr() 239 BuildMI(OrigBB, DebugLoc(), TII->get(AArch64::B)).addMBB(NewBB); in splitBlockBeforeInstr() 242 BlockInfo.insert(BlockInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); in splitBlockBeforeInstr() 253 computeBlockSize(*NewBB); in splitBlockBeforeInstr() 260 return NewBB; in splitBlockBeforeInstr() 420 MachineBasicBlock *NewBB = splitBlockBeforeInstr(MI); in fixupConditionalBranch() local 430 MBB->replaceSuccessor(FBB, NewBB); in fixupConditionalBranch() 431 NewBB->addSuccessor(FBB); in fixupConditionalBranch()
|
/external/swiftshader/third_party/llvm-10.0/llvm/include/llvm/CodeGen/ |
D | MachineDominators.h | 54 MachineBasicBlock *NewBB; member 212 void splitBlock(MachineBasicBlock* NewBB) { in splitBlock() argument 214 DT->splitBlock(NewBB); in splitBlock() 244 MachineBasicBlock *NewBB) { in recordSplitCriticalEdge() argument 245 bool Inserted = NewBBs.insert(NewBB).second; in recordSplitCriticalEdge() 249 CriticalEdgesToSplit.push_back({FromBB, ToBB, NewBB}); in recordSplitCriticalEdge()
|
/external/llvm-project/llvm/lib/Transforms/Scalar/ |
D | JumpThreading.cpp | 2007 BasicBlock *BB, BasicBlock *NewBB, in updateSSA() argument 2040 SSAUpdate.AddAvailableValue(NewBB, ValueMapping[&I]); in updateSSA() 2053 BasicBlock::iterator BE, BasicBlock *NewBB, in cloneInstructions() argument 2064 PHINode *NewPN = PHINode::Create(PN->getType(), 1, PN->getName(), NewBB); in cloneInstructions() 2075 NewBB->getInstList().push_back(New); in cloneInstructions() 2238 BasicBlock *NewBB = in threadThroughTwoBasicBlocks() local 2241 NewBB->moveAfter(PredBB); in threadThroughTwoBasicBlocks() 2247 BFI->setBlockFreq(NewBB, NewBBFreq.getFrequency()); in threadThroughTwoBasicBlocks() 2254 cloneInstructions(PredBB->begin(), PredBB->end(), NewBB, PredPredBB); in threadThroughTwoBasicBlocks() 2258 BPI->copyEdgeProbabilities(PredBB, NewBB); in threadThroughTwoBasicBlocks() [all …]
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Vectorize/ |
D | VPlan.cpp | 119 BasicBlock *NewBB = BasicBlock::Create(PrevBB->getContext(), getName(), in createEmptyBasicBlock() local 121 LLVM_DEBUG(dbgs() << "LV: created " << NewBB->getName() << '\n'); in createEmptyBasicBlock() 149 BranchInst::Create(NewBB, PredBB); in createEmptyBasicBlock() 156 PredBBTerminator->setSuccessor(idx, NewBB); in createEmptyBasicBlock() 159 return NewBB; in createEmptyBasicBlock() 167 BasicBlock *NewBB = State->CFG.PrevBB; // Reuse it if possible. in execute() local 182 NewBB = createEmptyBasicBlock(State->CFG); in execute() 183 State->Builder.SetInsertPoint(NewBB); in execute() 189 L->addBasicBlockToLoop(NewBB, *State->LI); in execute() 190 State->CFG.PrevBB = NewBB; in execute() [all …]
|
/external/llvm/include/llvm/Support/ |
D | GenericDomTree.h | 255 typename GraphT::NodeType *NewBB) { in Split() argument 256 assert(std::distance(GraphT::child_begin(NewBB), in Split() 257 GraphT::child_end(NewBB)) == 1 && in Split() 259 typename GraphT::NodeType *NewBBSucc = *GraphT::child_begin(NewBB); in Split() 264 PI = InvTraits::child_begin(NewBB), in Split() 265 PE = InvTraits::child_end(NewBB); in Split() 277 if (ND != NewBB && !DT.dominates(NewBBSucc, ND) && in Split() 306 DomTreeNodeBase<NodeT> *NewBBNode = DT.addNewBlock(NewBB, NewBBIDom); in Split() 575 void changeImmediateDominator(NodeT *BB, NodeT *NewBB) { in changeImmediateDominator() argument 576 changeImmediateDominator(getNode(BB), getNode(NewBB)); in changeImmediateDominator() [all …]
|
/external/llvm-project/llvm/lib/Target/ARM/ |
D | ARMConstantIslandPass.cpp | 250 void updateForInsertedWaterBlock(MachineBasicBlock *NewBB); 871 void ARMConstantIslands::updateForInsertedWaterBlock(MachineBasicBlock *NewBB) { in updateForInsertedWaterBlock() argument 873 NewBB->getParent()->RenumberBlocks(NewBB); in updateForInsertedWaterBlock() 877 BBUtils->insert(NewBB->getNumber(), BasicBlockInfo()); in updateForInsertedWaterBlock() 881 water_iterator IP = llvm::lower_bound(WaterList, NewBB, CompareMBBNumbers); in updateForInsertedWaterBlock() 882 WaterList.insert(IP, NewBB); in updateForInsertedWaterBlock() 899 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local 902 MF->insert(MBBI, NewBB); in splitBlockBeforeInstr() 905 NewBB->splice(NewBB->end(), OrigBB, MI, OrigBB->end()); in splitBlockBeforeInstr() 913 BuildMI(OrigBB, DebugLoc(), TII->get(Opc)).addMBB(NewBB); in splitBlockBeforeInstr() [all …]
|