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

/external/llvm/lib/Transforms/Utils/
H A DBreakCriticalEdges.cpp158 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 DLoopUnrollRuntime.cpp156 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 DCloneFunction.cpp42 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 DBasicBlockUtils.cpp307 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 DCodeExtractor.cpp215 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 DLoopSimplify.cpp74 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 DSimplifyCFG.cpp2727 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 DAArch64BranchRelaxation.cpp216 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 DAArch64PromoteConstant.cpp378 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 DGenericDomTree.h230 // 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 DARMConstantIslandPass.cpp283 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 DMipsConstantIslandPass.cpp395 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 DMachineDominators.h159 inline void splitBlock(MachineBasicBlock* NewBB) { argument
160 DT->splitBlock(NewBB);
/external/llvm/lib/MC/MCAnalysis/
H A DMCModule.cpp119 MCBasicBlock *NewBB = &BB->getParent()->createBlock(*NewTA); local
120 BB->splitBasicBlock(NewBB);
/external/llvm/lib/CodeGen/
H A DStackProtector.cpp441 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 DShadowStackGC.cpp166 BasicBlock *NewBB = local
171 NewBB->getInstList().remove(CI);
179 NewBB, CleanupBB,
/external/llvm/lib/Transforms/Scalar/
H A DJumpThreading.cpp1400 // 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 DLoopUnswitch.cpp814 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 DLoopStrengthReduce.cpp4731 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 DLoopInfoImpl.h180 /// 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 DRegionInfo.h743 /// @param NewBB The basic block that was created before OldBB.
745 void splitBlock(BasicBlock* NewBB, BasicBlock *OldBB);
H A DLoopInfo.h251 /// 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 DRegionInfo.cpp837 void RegionInfo::splitBlock(BasicBlock* NewBB, BasicBlock *OldBB) argument
841 setRegionFor(NewBB, R);
844 R->replaceEntry(NewBB);
/external/llvm/lib/Transforms/Instrumentation/
H A DDataFlowSanitizer.cpp1369 BasicBlock *NewBB = local
1371 Next = NewBB->begin();
/external/llvm/lib/IR/
H A DConstants.cpp1439 BasicBlock *NewBB = getBasicBlock(); local
1444 NewBB = cast<BasicBlock>(To);
1449 getContext().pImpl->BlockAddresses[std::make_pair(NewF, NewBB)];
1459 setOperand(1, NewBB);

Completed in 4886 milliseconds