Lines Matching refs:PredBB
776 BasicBlock *PredBB = DestBB->getSinglePredecessor(); in MergeBasicBlockIntoOnlyPred() local
777 assert(PredBB && "Block doesn't have a single predecessor!"); in MergeBasicBlockIntoOnlyPred()
779 bool ReplaceEntryBB = PredBB->isEntryBlock(); in MergeBasicBlockIntoOnlyPred()
788 Updates.reserve(Updates.size() + 2 * pred_size(PredBB) + 1); in MergeBasicBlockIntoOnlyPred()
789 for (BasicBlock *PredOfPredBB : predecessors(PredBB)) in MergeBasicBlockIntoOnlyPred()
791 if (PredOfPredBB != PredBB) in MergeBasicBlockIntoOnlyPred()
795 for (BasicBlock *PredOfPredBB : predecessors(PredBB)) in MergeBasicBlockIntoOnlyPred()
797 Updates.push_back({DominatorTree::Delete, PredOfPredBB, PredBB}); in MergeBasicBlockIntoOnlyPred()
798 Updates.push_back({DominatorTree::Delete, PredBB, DestBB}); in MergeBasicBlockIntoOnlyPred()
813 PredBB->replaceAllUsesWith(DestBB); in MergeBasicBlockIntoOnlyPred()
816 PredBB->getTerminator()->eraseFromParent(); in MergeBasicBlockIntoOnlyPred()
817 DestBB->splice(DestBB->begin(), PredBB); in MergeBasicBlockIntoOnlyPred()
818 new UnreachableInst(PredBB->getContext(), PredBB); in MergeBasicBlockIntoOnlyPred()
823 DestBB->moveAfter(PredBB); in MergeBasicBlockIntoOnlyPred()
826 assert(PredBB->size() == 1 && in MergeBasicBlockIntoOnlyPred()
827 isa<UnreachableInst>(PredBB->getTerminator()) && in MergeBasicBlockIntoOnlyPred()
831 DTU->deleteBB(PredBB); in MergeBasicBlockIntoOnlyPred()
843 PredBB->eraseFromParent(); // Nuke BB if DTU is nullptr. in MergeBasicBlockIntoOnlyPred()
1074 BasicBlock *PredBB = OldValPN->getIncomingBlock(i); in redirectValuesFromPredecessorsToPhi() local
1076 if (PredBB == CommonPred) in redirectValuesFromPredecessorsToPhi()
1081 selectIncomingValueForBlock(PredVal, PredBB, IncomingValues); in redirectValuesFromPredecessorsToPhi()
1085 PN->addIncoming(Selected, PredBB); in redirectValuesFromPredecessorsToPhi()
1094 BasicBlock *PredBB = BBPreds[i]; in redirectValuesFromPredecessorsToPhi() local
1096 if (PredBB == CommonPred) in redirectValuesFromPredecessorsToPhi()
1100 selectIncomingValueForBlock(OldVal, PredBB, IncomingValues); in redirectValuesFromPredecessorsToPhi()
1104 PN->addIncoming(Selected, PredBB); in redirectValuesFromPredecessorsToPhi()