Lines Matching defs:DestBB
351 BasicBlock *DestBB = IBI->getDestination(i);
352 if (DTU && DestBB != TheOnlyDest)
353 RemovedSuccessors.insert(DestBB);
357 DestBB->removePredecessor(BB);
771 void llvm::MergeBasicBlockIntoOnlyPred(BasicBlock *DestBB,
775 while (PHINode *PN = dyn_cast<PHINode>(DestBB->begin())) {
783 BasicBlock *PredBB = DestBB->getSinglePredecessor();
789 // PredBB. These dominator edges will be redirected to DestBB.
797 // This predecessor of PredBB may already have DestBB as a successor.
800 Updates.push_back({DominatorTree::Insert, PredOfPredBB, DestBB});
805 Updates.push_back({DominatorTree::Delete, PredBB, DestBB});
808 // Zap anything that took the address of DestBB. Not doing this will give the
810 if (DestBB->hasAddressTaken()) {
811 BlockAddress *BA = BlockAddress::get(DestBB);
819 // Anything that branched to PredBB now branches to DestBB.
820 PredBB->replaceAllUsesWith(DestBB);
822 // Splice all the instructions from PredBB to DestBB.
824 DestBB->splice(DestBB->begin(), PredBB);
827 // If the PredBB is the entry block of the function, move DestBB up to
830 DestBB->moveAfter(PredBB);
845 DTU->recalculate(*(DestBB->getParent()));