Lines Matching defs:PredBB
799 const BinaryBasicBlock *PredBB, const MCInst &CondBranch,
801 if (BeenOptimized.count(PredBB))
804 const bool IsForward = BinaryFunction::isForwardBranch(PredBB, BB);
818 PredBB->getBranchStats(BB);
871 for (BinaryBasicBlock *PredBB : BB->predecessors()) {
872 BinaryBasicBlock *CondSucc = PredBB->getConditionalSuccessor(true);
882 bool Result = PredBB->analyzeBranch(TBB, FBB, CondBranch, UncondBranch);
887 PredBB->dump());
898 // It's possible that PredBB is also a successor to BB that may have
902 if (!PredBB->isValid()) {
903 assert(PredBB->isSuccessor(BB) &&
904 "PredBB should be valid if it is not a successor to BB");
911 if (!shouldRewriteBranch(PredBB, *CondBranch, BB, DirectionFlag))
915 BeenOptimized.insert(PredBB);
925 NeedsUncondBranch.emplace_back(PredBB, CondSucc);
926 Count = PredBB->getFallthroughBranchInfo().Count;
930 Count = PredBB->getTakenBranchInfo().Count;
950 PredBB->removeSuccessor(BB);
959 LocalCTCExecCount += PredBB->getKnownExecutionCount();
969 BinaryBasicBlock *PredBB = Entry.first;
976 PredBB->analyzeBranch(TBB, FBB, CondBranch, UncondBranch);
981 BF.getLayout().getBasicBlockAfter(PredBB, false);
986 const BinaryBasicBlock *PredSucc = PredBB->getSuccessor();
993 PredBB->eraseInstruction(PredBB->findInstruction(UncondBranch));
999 PredBB->addInstruction(Branch);