/external/llvm/lib/Transforms/Utils/ |
D | BreakCriticalEdges.cpp | 149 BasicBlock *NewBB = BasicBlock::Create(TI->getContext(), in SplitCriticalEdge() local 152 BranchInst *NewBI = BranchInst::Create(DestBB, NewBB); in SplitCriticalEdge() 156 TI->setSuccessor(SuccNum, NewBB); in SplitCriticalEdge() 161 F.getBasicBlockList().insert(++FBBI, NewBB); in SplitCriticalEdge() 180 PN->setIncomingBlock(BBIdx, NewBB); in SplitCriticalEdge() 195 TI->setSuccessor(i, NewBB); in SplitCriticalEdge() 204 return NewBB; in SplitCriticalEdge() 217 if (PN->getIncomingBlock(i) != NewBB) in SplitCriticalEdge() 223 if (P != NewBB) in SplitCriticalEdge() 238 DomTreeNode *NewBBNode = DT->addNewBlock(NewBB, TIBB); in SplitCriticalEdge() [all …]
|
D | CloneFunction.cpp | 42 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "", F); in CloneBasicBlock() local 43 if (BB->hasName()) NewBB->setName(BB->getName()+NameSuffix); in CloneBasicBlock() 53 NewBB->getInstList().push_back(NewInst); in CloneBasicBlock() 71 return NewBB; in CloneBasicBlock() 303 BasicBlock *NewBB; in CloneBlock() local 304 BBEntry = NewBB = BasicBlock::Create(BB->getContext()); in CloneBlock() 305 if (BB->hasName()) NewBB->setName(BB->getName()+NameSuffix); in CloneBlock() 319 VMap[OldBBAddr] = BlockAddress::get(NewFunc, NewBB); in CloneBlock() 331 = Director->handleInstruction(VMap, II, NewBB); in CloneBlock() 374 NewBB->getInstList().push_back(NewInst); in CloneBlock() [all …]
|
D | LoopUnrollRuntime.cpp | 166 BasicBlock *NewBB = CloneBasicBlock(*BB, VMap, ".prol", F); in CloneLoopBlocks() local 167 NewBlocks.push_back(NewBB); in CloneLoopBlocks() 170 NewLoop->addBasicBlockToLoop(NewBB, *LI); in CloneLoopBlocks() 172 ParentLoop->addBasicBlockToLoop(NewBB, *LI); in CloneLoopBlocks() 174 VMap[*BB] = NewBB; in CloneLoopBlocks() 178 InsertTop->getTerminator()->setSuccessor(0, NewBB); in CloneLoopBlocks() 186 BranchInst *LatchBR = cast<BranchInst>(NewBB->getTerminator()); in CloneLoopBlocks() 189 BranchInst::Create(InsertBot, NewBB); in CloneLoopBlocks() 199 BranchInst::Create(FirstLoopBB, InsertBot, IdxCmp, NewBB); in CloneLoopBlocks() 201 NewIdx->addIncoming(IdxSub, NewBB); in CloneLoopBlocks()
|
D | BasicBlockUtils.cpp | 312 static void UpdateAnalysisInformation(BasicBlock *OldBB, BasicBlock *NewBB, in UpdateAnalysisInformation() argument 318 DT->splitBlock(NewBB); in UpdateAnalysisInformation() 379 InnermostPredLoop->addBasicBlockToLoop(NewBB, *LI); in UpdateAnalysisInformation() 381 L->addBasicBlockToLoop(NewBB, *LI); in UpdateAnalysisInformation() 383 L->moveToHeader(NewBB); in UpdateAnalysisInformation() 389 static void UpdatePHINodes(BasicBlock *OrigBB, BasicBlock *NewBB, in UpdatePHINodes() argument 429 PN->addIncoming(InVal, NewBB); in UpdatePHINodes() 453 PN->addIncoming(NewPHI, NewBB); in UpdatePHINodes() 489 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), BB->getName()+Suffix, in SplitBlockPredecessors() local 493 BranchInst *BI = BranchInst::Create(BB, NewBB); in SplitBlockPredecessors() [all …]
|
D | LoopSimplify.cpp | 77 static void placeSplitBlockCarefully(BasicBlock *NewBB, in placeSplitBlockCarefully() argument 81 Function::iterator BBI = NewBB; --BBI; in placeSplitBlockCarefully() 96 if (++BBI != NewBB->getParent()->end() && in placeSplitBlockCarefully() 108 NewBB->moveAfter(FoundBB); in placeSplitBlockCarefully() 294 BasicBlock *NewBB = SplitBlockPredecessors(Header, OuterLoopPreds, ".outer", in separateNestedLoop() local 299 placeSplitBlockCarefully(NewBB, OuterLoopPreds, L); in separateNestedLoop()
|
D | CodeExtractor.cpp | 215 BasicBlock *NewBB = Header->splitBasicBlock(AfterPHIs, in severSplitPHINodes() local 222 Blocks.insert(NewBB); in severSplitPHINodes() 223 Header = NewBB; in severSplitPHINodes() 228 DT->splitBlock(NewBB); in severSplitPHINodes() 239 TI->replaceUsesOfWith(OldPred, NewBB); in severSplitPHINodes() 249 PN->getName()+".ce", NewBB->begin()); in severSplitPHINodes()
|
D | LowerSwitch.cpp | 160 static void fixPhis(BasicBlock *SuccBB, BasicBlock *OrigBB, BasicBlock *NewBB, in fixPhis() argument 171 PN->setIncomingBlock(Idx, NewBB); in fixPhis()
|
D | SimplifyCFG.cpp | 2778 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "switch.edge", in TryToSimplifyUncondBranchWithICmpInIt() local 2795 SI->addCase(Cst, NewBB); in TryToSimplifyUncondBranchWithICmpInIt() 2798 Builder.SetInsertPoint(NewBB); in TryToSimplifyUncondBranchWithICmpInIt() 2801 PHIUse->addIncoming(NewCst, NewBB); in TryToSimplifyUncondBranchWithICmpInIt() 2860 BasicBlock *NewBB = BB->splitBasicBlock(BI, "switch.early.test"); in SimplifyBranchOnICmpChain() local 2866 Builder.CreateCondBr(ExtraCase, EdgeBB, NewBB); in SimplifyBranchOnICmpChain() 2868 Builder.CreateCondBr(ExtraCase, NewBB, EdgeBB); in SimplifyBranchOnICmpChain() 2874 AddPredecessorToBlock(EdgeBB, BB, NewBB); in SimplifyBranchOnICmpChain() 2878 BB = NewBB; in SimplifyBranchOnICmpChain()
|
/external/llvm/lib/CodeGen/ |
D | WinEHPrepare.cpp | 182 BasicBlock *NewBB) override; 186 BasicBlock *NewBB) = 0; 189 BasicBlock *NewBB) = 0; 192 BasicBlock *NewBB) = 0; 195 BasicBlock *NewBB) = 0; 198 BasicBlock *NewBB) = 0; 201 BasicBlock *NewBB) = 0; 224 BasicBlock *NewBB) override; 226 BasicBlock *NewBB) override; 229 BasicBlock *NewBB) override; [all …]
|
D | MachineDominators.cpp | 84 if (PredBB == Edge.NewBB) in applySplitCriticalEdges() 116 MachineDomTreeNode *NewDTNode = DT->addNewBlock(Edge.NewBB, Edge.FromBB); in applySplitCriticalEdges()
|
D | StackProtector.cpp | 436 BasicBlock *NewBB = BB->splitBasicBlock(RI, "SP_return"); in InsertStackProtectors() local 440 DT->addNewBlock(NewBB, BB); in InsertStackProtectors() 449 NewBB->moveAfter(BB); in InsertStackProtectors() 462 B.CreateCondBr(Cmp, NewBB, FailBB, Weights); in InsertStackProtectors()
|
D | ShadowStackGCLowering.cpp | 162 BasicBlock *NewBB = in Next() local 167 NewBB->getInstList().remove(CI); in Next() 175 InvokeInst::Create(CI->getCalledValue(), NewBB, CleanupBB, Args, in Next()
|
/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() 235 MachineBasicBlock *NewBB) { in recordSplitCriticalEdge() argument 236 bool Inserted = NewBBs.insert(NewBB).second; in recordSplitCriticalEdge() 240 CriticalEdgesToSplit.push_back({FromBB, ToBB, NewBB}); in recordSplitCriticalEdge()
|
/external/llvm/lib/Target/AArch64/ |
D | AArch64BranchRelaxation.cpp | 217 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local 221 MF->insert(MBBI, NewBB); in splitBlockBeforeInstr() 224 NewBB->splice(NewBB->end(), OrigBB, MI, OrigBB->end()); in splitBlockBeforeInstr() 230 BuildMI(OrigBB, DebugLoc(), TII->get(AArch64::B)).addMBB(NewBB); in splitBlockBeforeInstr() 233 BlockInfo.insert(BlockInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); in splitBlockBeforeInstr() 244 computeBlockSize(*NewBB); in splitBlockBeforeInstr() 251 return NewBB; in splitBlockBeforeInstr() 411 MachineBasicBlock *NewBB = splitBlockBeforeInstr(MI); in fixupConditionalBranch() local 421 MBB->replaceSuccessor(FBB, NewBB); in fixupConditionalBranch() 422 NewBB->addSuccessor(FBB); in fixupConditionalBranch()
|
D | AArch64PromoteConstant.cpp | 372 BasicBlock *NewBB = NewPt->getParent(); in tryAndMerge() local 381 if (NewBB == CurBB) { in tryAndMerge() 393 BasicBlock *CommonDominator = DT.findNearestCommonDominator(NewBB, CurBB); in tryAndMerge() 398 if (CommonDominator != NewBB) { in tryAndMerge()
|
/external/llvm/lib/Target/ARM/ |
D | ARMConstantIslandPass.cpp | 284 void updateForInsertedWaterBlock(MachineBasicBlock *NewBB); 855 void ARMConstantIslands::updateForInsertedWaterBlock(MachineBasicBlock *NewBB) { in updateForInsertedWaterBlock() argument 857 NewBB->getParent()->RenumberBlocks(NewBB); in updateForInsertedWaterBlock() 861 BBInfo.insert(BBInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); in updateForInsertedWaterBlock() 866 std::lower_bound(WaterList.begin(), WaterList.end(), NewBB, in updateForInsertedWaterBlock() 868 WaterList.insert(IP, NewBB); in updateForInsertedWaterBlock() 879 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local 882 MF->insert(MBBI, NewBB); in splitBlockBeforeInstr() 885 NewBB->splice(NewBB->end(), OrigBB, MI, OrigBB->end()); in splitBlockBeforeInstr() 893 BuildMI(OrigBB, DebugLoc(), TII->get(Opc)).addMBB(NewBB); in splitBlockBeforeInstr() [all …]
|
/external/llvm/include/llvm/Support/ |
D | GenericDomTree.h | 254 typename GraphT::NodeType *NewBB) { in Split() argument 255 assert(std::distance(GraphT::child_begin(NewBB), in Split() 256 GraphT::child_end(NewBB)) == 1 && in Split() 258 typename GraphT::NodeType *NewBBSucc = *GraphT::child_begin(NewBB); in Split() 263 PI = InvTraits::child_begin(NewBB), in Split() 264 PE = InvTraits::child_end(NewBB); in Split() 276 if (ND != NewBB && !DT.dominates(NewBBSucc, ND) && in Split() 305 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/lib/Target/Mips/ |
D | MipsConstantIslandPass.cpp | 393 void updateForInsertedWaterBlock(MachineBasicBlock *NewBB); 852 (MachineBasicBlock *NewBB) { in updateForInsertedWaterBlock() argument 854 NewBB->getParent()->RenumberBlocks(NewBB); in updateForInsertedWaterBlock() 858 BBInfo.insert(BBInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); in updateForInsertedWaterBlock() 863 std::lower_bound(WaterList.begin(), WaterList.end(), NewBB, in updateForInsertedWaterBlock() 865 WaterList.insert(IP, NewBB); in updateForInsertedWaterBlock() 880 MachineBasicBlock *NewBB = in splitBlockBeforeInstr() local 883 MF->insert(MBBI, NewBB); in splitBlockBeforeInstr() 886 NewBB->splice(NewBB->end(), OrigBB, MI, OrigBB->end()); in splitBlockBeforeInstr() 892 BuildMI(OrigBB, DebugLoc(), TII->get(Mips::Bimm16)).addMBB(NewBB); in splitBlockBeforeInstr() [all …]
|
/external/llvm/lib/Transforms/Scalar/ |
D | JumpThreading.cpp | 1436 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), in ThreadEdge() local 1439 NewBB->moveAfter(PredBB); in ThreadEdge() 1450 NewBB->getInstList().push_back(New); in ThreadEdge() 1464 BranchInst *NewBI =BranchInst::Create(SuccBB, NewBB); in ThreadEdge() 1469 AddPHINodeEntriesForMappedBlock(SuccBB, BB, NewBB, ValueMapping); in ThreadEdge() 1502 SSAUpdate.AddAvailableValue(NewBB, ValueMapping[I]); in ThreadEdge() 1517 PredTerm->setSuccessor(i, NewBB); in ThreadEdge() 1523 SimplifyInstructionsInBlock(NewBB, TLI); in ThreadEdge() 1728 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "select.unfold", in TryToUnfoldSelect() local 1732 NewBB->getInstList().insert(NewBB->end(), PredTerm); in TryToUnfoldSelect() [all …]
|
D | PlaceSafepoints.cpp | 605 BasicBlock *NewBB = SplitEdge(Term->getParent(), Header, nullptr); in runOnFunction() local 606 SplitBackedges.insert(NewBB); in runOnFunction() 609 for (BasicBlock *NewBB : SplitBackedges) { in runOnFunction() 610 InsertSafepointPoll(DT, NewBB->getTerminator(), ParsePoints); in runOnFunction()
|
D | LoopUnswitch.cpp | 824 BasicBlock *NewBB = CloneBasicBlock(LoopBlocks[i], VMap, ".us", F); in UnswitchNontrivialCondition() local 826 NewBlocks.push_back(NewBB); in UnswitchNontrivialCondition() 827 VMap[LoopBlocks[i]] = NewBB; // Keep the BB mapping. in UnswitchNontrivialCondition() 828 LPM->cloneBasicBlockSimpleAnalysis(LoopBlocks[i], NewBB, L); in UnswitchNontrivialCondition()
|
/external/llvm/include/llvm/Analysis/ |
D | LoopInfoImpl.h | 187 addBasicBlockToLoop(BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LIB) { in addBasicBlockToLoop() argument 190 assert(NewBB && "Cannot add a null basic block to the loop!"); in addBasicBlockToLoop() 191 assert(!LIB[NewBB] && "BasicBlock already in the loop!"); in addBasicBlockToLoop() 196 LIB.BBMap[NewBB] = L; in addBasicBlockToLoop() 200 L->addBlockEntry(NewBB); in addBasicBlockToLoop()
|
D | RegionInfoImpl.h | 890 void RegionInfoBase<Tr>::splitBlock(BlockT *NewBB, BlockT *OldBB) { in splitBlock() argument 893 setRegionFor(NewBB, R); in splitBlock() 896 R->replaceEntry(NewBB); in splitBlock()
|
D | RegionInfo.h | 803 void splitBlock(BlockT *NewBB, BlockT *OldBB);
|
/external/llvm/include/llvm/Transforms/Utils/ |
D | Cloning.h | 157 BasicBlock *NewBB) = 0;
|