/external/llvm/lib/Transforms/Utils/ |
H A D | BreakCriticalEdges.cpp | 158 BasicBlock *NewBB = BasicBlock::Create(TI->getContext(), 161 BranchInst *NewBI = BranchInst::Create(DestBB, NewBB); 165 TI->setSuccessor(SuccNum, NewBB); 170 F.getBasicBlockList().insert(++FBBI, NewBB); 173 // merge incoming values from NewBB instead of from TIBB. 177 // We no longer enter through TIBB, now we come in through NewBB. 179 // TIBB to come from NewBB. 189 PN->setIncomingBlock(BBIdx, NewBB); 203 // We found another edge to DestBB, go to NewBB instead. 204 TI->setSuccessor(i, NewBB); [all...] |
H A D | LoopUnrollRuntime.cpp | 156 BasicBlock *NewBB = CloneBasicBlock(*BB, VMap, ".unr", F); local 157 NewBlocks.push_back(NewBB); 160 ParentLoop->addBasicBlockToLoop(NewBB, LI->getBase()); 162 VMap[*BB] = NewBB; 166 InsertTop->getTerminator()->setSuccessor(0, NewBB); 175 NewBB->getInstList().erase(NewPHI); 191 NewBB->getTerminator()->eraseFromParent(); 192 BranchInst::Create(InsertBot, NewBB); 339 BasicBlock *NewBB = BasicBlock::Create(CompareBB->getContext(), "unr.cmp", local 343 ParentLoop->addBasicBlockToLoop(NewBB, L [all...] |
H A D | CloneFunction.cpp | 42 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "", F); local 43 if (BB->hasName()) NewBB->setName(BB->getName()+NameSuffix); 53 NewBB->getInstList().push_back(NewInst); 71 return NewBB; 292 BasicBlock *NewBB; 293 BBEntry = NewBB = BasicBlock::Create(BB->getContext()); 294 if (BB->hasName()) NewBB->setName(BB->getName()+NameSuffix); 308 VMap[OldBBAddr] = BlockAddress::get(NewFunc, NewBB); 344 NewBB->getInstList().push_back(NewInst); 370 VMap[OldTI] = BranchInst::Create(Dest, NewBB); 456 BasicBlock *NewBB = cast_or_null<BasicBlock>(V); local 482 BasicBlock *NewBB = cast<BasicBlock>(VMap[OldBB]); local [all...] |
H A D | BasicBlockUtils.cpp | 307 static void UpdateAnalysisInformation(BasicBlock *OldBB, BasicBlock *NewBB, argument 345 DTWP->getDomTree().splitBlock(NewBB); 373 InnermostPredLoop->addBasicBlockToLoop(NewBB, LI->getBase()); 375 L->addBasicBlockToLoop(NewBB, LI->getBase()); 377 L->moveToHeader(NewBB); 382 /// from NewBB. This also updates AliasAnalysis, if available. 383 static void UpdatePHINodes(BasicBlock *OrigBB, BasicBlock *NewBB, argument 386 // Otherwise, create a new PHI node in NewBB for each PHI node in OrigBB. 424 PN->addIncoming(InVal, NewBB); 430 // Create the new PHI node, insert it into NewBB a 467 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), BB->getName()+Suffix, local [all...] |
H A D | CodeExtractor.cpp | 215 BasicBlock *NewBB = Header->splitBasicBlock(AfterPHIs, local 222 Blocks.insert(NewBB); 223 Header = NewBB; 228 DT->splitBlock(NewBB); 235 // changing them to branch to NewBB instead. 239 TI->replaceUsesOfWith(OldPred, NewBB); 243 // just have to update the PHI nodes now, inserting PHI nodes into NewBB. 249 PN->getName()+".ce", NewBB->begin());
|
H A D | LoopSimplify.cpp | 74 static void placeSplitBlockCarefully(BasicBlock *NewBB, argument 77 // Check to see if NewBB is already well placed. 78 Function::iterator BBI = NewBB; --BBI; 93 if (++BBI != NewBB->getParent()->end() && 105 NewBB->moveAfter(FoundBB); 148 // Make sure that NewBB is put someplace intelligent, which doesn't mess up 289 BasicBlock *NewBB = local 292 // Make sure that NewBB is put someplace intelligent, which doesn't mess up 294 placeSplitBlockCarefully(NewBB, OuterLoopPreds, L);
|
H A D | SimplifyCFG.cpp | 2727 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "switch.edge", local 2744 SI->addCase(Cst, NewBB); 2746 // NewBB branches to the phi block, add the uncond branch and the phi entry. 2747 Builder.SetInsertPoint(NewBB); 2750 PHIUse->addIncoming(NewCst, NewBB); 2814 BasicBlock *NewBB = BB->splitBasicBlock(BI, "switch.early.test"); local 2820 Builder.CreateCondBr(ExtraCase, EdgeBB, NewBB); 2822 Builder.CreateCondBr(ExtraCase, NewBB, EdgeBB); 2828 AddPredecessorToBlock(EdgeBB, BB, NewBB); 2832 BB = NewBB; [all...] |
/external/llvm/lib/Target/AArch64/ |
H A D | AArch64BranchRelaxation.cpp | 216 MachineBasicBlock *NewBB = local 220 MF->insert(MBBI, NewBB); 222 // Splice the instructions starting with MI over to NewBB. 223 NewBB->splice(NewBB->end(), OrigBB, MI, OrigBB->end()); 225 // Add an unconditional branch from OrigBB to NewBB. 229 BuildMI(OrigBB, DebugLoc(), TII->get(AArch64::B)).addMBB(NewBB); 232 BlockInfo.insert(BlockInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); 243 computeBlockSize(*NewBB); 250 return NewBB; 410 MachineBasicBlock *NewBB = splitBlockBeforeInstr(MI); local [all...] |
H A D | AArch64PromoteConstant.cpp | 378 BasicBlock *NewBB = NewPt->getParent(); local 387 if (NewBB == CurBB) { 399 BasicBlock *CommonDominator = DT.findNearestCommonDominator(NewBB, CurBB); 404 if (CommonDominator != NewBB) { 411 // else, CommonDominator is the block of NewBB, hence NewBB is the last
|
/external/llvm/include/llvm/Support/ |
H A D | GenericDomTree.h | 230 // NewBB is split and now it has one successor. Update dominator tree to 234 typename GraphT::NodeType* NewBB) { 235 assert(std::distance(GraphT::child_begin(NewBB), 236 GraphT::child_end(NewBB)) == 1 && 237 "NewBB should have a single successor!"); 238 typename GraphT::NodeType* NewBBSucc = *GraphT::child_begin(NewBB); 243 InvTraits::child_begin(NewBB), 244 PE = InvTraits::child_end(NewBB); PI != PE; ++PI) 254 if (ND != NewBB && !DT.dominates(NewBBSucc, ND) && 261 // Find NewBB' 233 Split(DominatorTreeBase<typename GraphT::NodeType>& DT, typename GraphT::NodeType* NewBB) argument 529 changeImmediateDominator(NodeT *BB, NodeT *NewBB) argument 566 splitBlock(NodeT* NewBB) argument [all...] |
/external/llvm/lib/Target/ARM/ |
H A D | ARMConstantIslandPass.cpp | 283 void updateForInsertedWaterBlock(MachineBasicBlock *NewBB); 853 void ARMConstantIslands::updateForInsertedWaterBlock(MachineBasicBlock *NewBB) { argument 855 NewBB->getParent()->RenumberBlocks(NewBB); 859 BBInfo.insert(BBInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); 864 std::lower_bound(WaterList.begin(), WaterList.end(), NewBB, 866 WaterList.insert(IP, NewBB); 877 MachineBasicBlock *NewBB = local 880 MF->insert(MBBI, NewBB); 882 // Splice the instructions starting with MI over to NewBB 921 WaterList.insert(std::next(IP), NewBB); local [all...] |
/external/llvm/lib/Target/Mips/ |
H A D | MipsConstantIslandPass.cpp | 395 void updateForInsertedWaterBlock(MachineBasicBlock *NewBB); 856 (MachineBasicBlock *NewBB) { 858 NewBB->getParent()->RenumberBlocks(NewBB); 862 BBInfo.insert(BBInfo.begin() + NewBB->getNumber(), BasicBlockInfo()); 867 std::lower_bound(WaterList.begin(), WaterList.end(), NewBB, 869 WaterList.insert(IP, NewBB); 884 MachineBasicBlock *NewBB = local 887 MF->insert(MBBI, NewBB); 889 // Splice the instructions starting with MI over to NewBB 855 updateForInsertedWaterBlock(MachineBasicBlock *NewBB) argument 923 WaterList.insert(std::next(IP), NewBB); local [all...] |
/external/llvm/include/llvm/CodeGen/ |
H A D | MachineDominators.h | 159 inline void splitBlock(MachineBasicBlock* NewBB) { argument 160 DT->splitBlock(NewBB);
|
/external/llvm/lib/MC/MCAnalysis/ |
H A D | MCModule.cpp | 119 MCBasicBlock *NewBB = &BB->getParent()->createBlock(*NewTA); local 120 BB->splitBasicBlock(NewBB);
|
/external/llvm/lib/CodeGen/ |
H A D | StackProtector.cpp | 441 BasicBlock *NewBB = BB->splitBasicBlock(RI, "SP_return"); local 445 DT->addNewBlock(NewBB, BB); 454 NewBB->moveAfter(BB); 461 B.CreateCondBr(Cmp, NewBB, FailBB);
|
H A D | ShadowStackGC.cpp | 166 BasicBlock *NewBB = local 171 NewBB->getInstList().remove(CI); 179 NewBB, CleanupBB,
|
/external/llvm/lib/Transforms/Scalar/ |
H A D | JumpThreading.cpp | 1400 // copy of the block 'NewBB'. If there are PHI nodes in BB, evaluate them to 1404 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), local 1407 NewBB->moveAfter(PredBB); 1413 // Clone the non-phi instructions of BB into NewBB, keeping track of the 1418 NewBB->getInstList().push_back(New); 1430 // We didn't copy the terminator from BB over to NewBB, because there is now 1432 BranchInst *NewBI =BranchInst::Create(SuccBB, NewBB); 1436 // PHI nodes for NewBB now. 1437 AddPHINodeEntriesForMappedBlock(SuccBB, BB, NewBB, ValueMapping); 1470 SSAUpdate.AddAvailableValue(NewBB, ValueMappin 1696 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "select.unfold", local [all...] |
H A D | LoopUnswitch.cpp | 814 BasicBlock *NewBB = CloneBasicBlock(LoopBlocks[i], VMap, ".us", F); local 816 NewBlocks.push_back(NewBB); 817 VMap[LoopBlocks[i]] = NewBB; // Keep the BB mapping. 818 LPM->cloneBasicBlockSimpleAnalysis(LoopBlocks[i], NewBB, L); 829 // Recalculate unswitching quota, inherit simplified switches info for NewBB,
|
H A D | LoopStrengthReduce.cpp | 4731 BasicBlock *NewBB = nullptr; local 4733 NewBB = SplitCriticalEdge(BB, Parent, P, 4739 NewBB = NewBBs[0]; 4741 // If NewBB==NULL, then SplitCriticalEdge refused to split because all 4744 if (NewBB) { 4749 NewBB->moveBefore(PN->getParent()); 4753 BB = NewBB;
|
/external/llvm/include/llvm/Analysis/ |
H A D | LoopInfoImpl.h | 180 /// information. NewBB is set to be a new member of the current loop. 187 addBasicBlockToLoop(BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LIB) { argument 190 assert(NewBB && "Cannot add a null basic block to the loop!"); 191 assert(!LIB[NewBB] && "BasicBlock already in the loop!"); 196 LIB.BBMap[NewBB] = L; 200 L->addBlockEntry(NewBB);
|
H A D | RegionInfo.h | 743 /// @param NewBB The basic block that was created before OldBB. 745 void splitBlock(BasicBlock* NewBB, BasicBlock *OldBB);
|
H A D | LoopInfo.h | 251 /// information. NewBB is set to be a new member of the current loop. 256 void addBasicBlockToLoop(BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LI);
|
/external/llvm/lib/Analysis/ |
H A D | RegionInfo.cpp | 837 void RegionInfo::splitBlock(BasicBlock* NewBB, BasicBlock *OldBB) argument 841 setRegionFor(NewBB, R); 844 R->replaceEntry(NewBB);
|
/external/llvm/lib/Transforms/Instrumentation/ |
H A D | DataFlowSanitizer.cpp | 1369 BasicBlock *NewBB = local 1371 Next = NewBB->begin();
|
/external/llvm/lib/IR/ |
H A D | Constants.cpp | 1439 BasicBlock *NewBB = getBasicBlock(); local 1444 NewBB = cast<BasicBlock>(To); 1449 getContext().pImpl->BlockAddresses[std::make_pair(NewF, NewBB)]; 1459 setOperand(1, NewBB);
|