Lines Matching refs:PredBB

119       for (MachineBasicBlock *PredBB : Preds) {  in VerifyPHIs()
123 if (PHIBB == PredBB) { in VerifyPHIs()
132 << printMBBReference(*PredBB) << '\n'; in VerifyPHIs()
357 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in processPHI() argument
362 unsigned SrcOpIdx = getPHISrcRegOpIdx(MI, PredBB); in processPHI()
374 addSSAUpdateEntry(DefReg, NewDef, PredBB); in processPHI()
391 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in duplicateInstruction() argument
396 BuildMI(*PredBB, PredBB->end(), PredBB->findDebugLoc(PredBB->begin()), in duplicateInstruction()
402 MachineInstr &NewMI = TII->duplicate(*PredBB, PredBB->end(), *MI); in duplicateInstruction()
417 addSSAUpdateEntry(Reg, NewReg, PredBB); in duplicateInstruction()
461 BuildMI(*PredBB, NewMI, NewMI.getDebugLoc(), in duplicateInstruction()
724 for (MachineBasicBlock *PredBB : BB.predecessors()) { in canCompletelyDuplicateBB()
725 if (PredBB->succ_size() > 1) in canCompletelyDuplicateBB()
730 if (TII->analyzeBranch(*PredBB, PredTBB, PredFBB, PredCond)) in canCompletelyDuplicateBB()
746 for (MachineBasicBlock *PredBB : Preds) { in duplicateSimpleBB()
747 if (PredBB->hasEHPadSuccessor() || PredBB->mayHaveInlineAsmBr()) in duplicateSimpleBB()
750 if (bothUsedInPHI(*PredBB, Succs)) in duplicateSimpleBB()
755 if (TII->analyzeBranch(*PredBB, PredTBB, PredFBB, PredCond)) in duplicateSimpleBB()
759 LLVM_DEBUG(dbgs() << "\nTail-duplicating into PredBB: " << *PredBB in duplicateSimpleBB()
763 MachineBasicBlock *NextBB = PredBB->getNextNode(); in duplicateSimpleBB()
793 auto DL = PredBB->findBranchDebugLoc(); in duplicateSimpleBB()
794 TII->removeBranch(*PredBB); in duplicateSimpleBB()
796 if (!PredBB->isSuccessor(NewTarget)) in duplicateSimpleBB()
797 PredBB->replaceSuccessor(TailBB, NewTarget); in duplicateSimpleBB()
799 PredBB->removeSuccessor(TailBB, true); in duplicateSimpleBB()
800 assert(PredBB->succ_size() <= 1); in duplicateSimpleBB()
804 TII->insertBranch(*PredBB, PredTBB, PredFBB, PredCond, DL); in duplicateSimpleBB()
806 TDBBs.push_back(PredBB); in duplicateSimpleBB()
812 MachineBasicBlock *PredBB) { in canTailDuplicate() argument
814 if (PredBB->succ_size() > 1) in canTailDuplicate()
819 if (TII->analyzeBranch(*PredBB, PredTBB, PredFBB, PredCond)) in canTailDuplicate()
871 for (MachineBasicBlock *PredBB : Preds) { in tailDuplicate()
872 assert(TailBB != PredBB && in tailDuplicate()
875 if (!canTailDuplicate(TailBB, PredBB)) in tailDuplicate()
884 IsLayoutSuccessor = (ForcedLayoutPred == PredBB); in tailDuplicate()
885 else if (PredBB->isLayoutSuccessor(TailBB) && PredBB->canFallThrough()) in tailDuplicate()
891 LLVM_DEBUG(dbgs() << "\nTail-duplicating into PredBB: " << *PredBB in tailDuplicate()
894 TDBBs.push_back(PredBB); in tailDuplicate()
897 TII->removeBranch(*PredBB); in tailDuplicate()
906 processPHI(&MI, TailBB, PredBB, LocalVRMap, CopyInfos, UsedByPhi, true); in tailDuplicate()
910 duplicateInstruction(&MI, TailBB, PredBB, LocalVRMap, UsedByPhi); in tailDuplicate()
913 appendCopies(PredBB, CopyInfos, Copies); in tailDuplicate()
918 PredBB->removeSuccessor(PredBB->succ_begin()); in tailDuplicate()
919 assert(PredBB->succ_empty() && in tailDuplicate()
922 PredBB->addSuccessor(Succ, MBPI->getEdgeProbability(TailBB, Succ)); in tailDuplicate()
926 PredBB->updateTerminator(TailBB->getNextNode()); in tailDuplicate()
1029 for (MachineBasicBlock *PredBB : Preds) { in tailDuplicate()
1030 if (is_contained(TDBBs, PredBB)) in tailDuplicate()
1034 if (PredBB->succ_size() != 1) in tailDuplicate()
1043 processPHI(&MI, TailBB, PredBB, LocalVRMap, CopyInfos, UsedByPhi, false); in tailDuplicate()
1045 appendCopies(PredBB, CopyInfos, Copies); in tailDuplicate()