Lines Matching defs:OrigBB
244 BranchRelaxation::createNewBlockAfter(MachineBasicBlock &OrigBB) {
245 return createNewBlockAfter(OrigBB, OrigBB.getBasicBlock());
253 // Create a new MBB for the code after the OrigBB.
257 // Place the new block in the same section as OrigBB
274 MachineBasicBlock *OrigBB = MI.getParent();
276 // Create a new MBB for the code after the OrigBB.
278 MF->CreateMachineBasicBlock(OrigBB->getBasicBlock());
279 MF->insert(++OrigBB->getIterator(), NewBB);
281 // Place the new block in the same section as OrigBB.
282 NewBB->setSectionID(OrigBB->getSectionID());
283 NewBB->setIsEndSection(OrigBB->isEndSection());
284 OrigBB->setIsEndSection(false);
287 NewBB->splice(NewBB->end(), OrigBB, MI.getIterator(), OrigBB->end());
289 // Add an unconditional branch from OrigBB to NewBB.
293 TII->insertUnconditionalBranch(*OrigBB, NewBB, DebugLoc());
298 NewBB->transferSuccessors(OrigBB);
299 OrigBB->addSuccessor(NewBB);
300 OrigBB->addSuccessor(DestBB);
304 OrigBB->updateTerminator(NewBB);
306 // Figure out how large the OrigBB is. As the first half of the original
311 BlockInfo[OrigBB->getNumber()].Size = computeBlockSize(*OrigBB);
318 adjustBlockOffsets(*OrigBB);