Lines Matching refs:MBB
120 bool TailDuplicateAndUpdate(MachineBasicBlock *MBB,
124 void RemoveDeadBlock(MachineBasicBlock *MBB);
164 MachineBasicBlock *MBB = &*I;
165 SmallSetVector<MachineBasicBlock*, 8> Preds(MBB->pred_begin(),
166 MBB->pred_end());
167 MachineBasicBlock::iterator MI = MBB->begin();
168 while (MI != MBB->end()) {
183 dbgs() << "Malformed PHI in BB#" << MBB->getNumber() << ": " << *MI;
193 dbgs() << "Warning: malformed PHI in BB#" << MBB->getNumber()
200 dbgs() << "Malformed PHI in BB#" << MBB->getNumber() << ": " << *MI;
212 TailDuplicatePass::TailDuplicateAndUpdate(MachineBasicBlock *MBB,
216 SmallSetVector<MachineBasicBlock*, 8> Succs(MBB->succ_begin(),
217 MBB->succ_end());
221 if (!TailDuplicate(MBB, IsSimple, MF, TDBBs, Copies))
232 bool isDead = MBB->pred_empty() && !MBB->hasAddressTaken();
234 UpdateSuccessorsPHIs(MBB, isDead, TDBBs, Succs);
238 NumInstrDups -= MBB->size();
239 RemoveDeadBlock(MBB);
325 MachineBasicBlock *MBB = &*I++;
330 bool IsSimple = isSimpleBB(MBB);
332 if (!shouldTailDuplicate(MF, IsSimple, *MBB))
335 MadeChange |= TailDuplicateAndUpdate(MBB, IsSimple, MF);
880 << "From MBB: " << *TailBB);
978 void TailDuplicatePass::RemoveDeadBlock(MachineBasicBlock *MBB) {
979 assert(MBB->pred_empty() && "MBB must be dead!");
980 DEBUG(dbgs() << "\nRemoving MBB: " << *MBB);
983 while (!MBB->succ_empty())
984 MBB->removeSuccessor(MBB->succ_end()-1);
987 MBB->eraseFromParent();