Lines Matching refs:CSMI
130 bool PhysRegDefsReach(MachineInstr *CSMI, MachineInstr *MI,
333 bool MachineCSE::PhysRegDefsReach(MachineInstr *CSMI, MachineInstr *MI, in PhysRegDefsReach() argument
341 const MachineBasicBlock *CSMBB = CSMI->getParent(); in PhysRegDefsReach()
357 MachineBasicBlock::const_iterator I = CSMI; I = std::next(I); in PhysRegDefsReach()
574 MachineInstr *CSMI = Exps[CSVN]; in ProcessBlockCSE() local
575 if (PhysRegDefsReach(CSMI, &MI, PhysRefs, PhysDefs, CrossMBBPhysDef)) in ProcessBlockCSE()
588 MachineInstr *CSMI = Exps[CSVN]; in ProcessBlockCSE() local
590 LLVM_DEBUG(dbgs() << "*** Found a common subexpression: " << *CSMI); in ProcessBlockCSE()
601 if (MI.isConvergent() && MI.getParent() != CSMI->getParent()) { in ProcessBlockCSE()
618 Register NewReg = CSMI->getOperand(i).getReg(); in ProcessBlockCSE()
622 if (MO.isImplicit() && !MO.isDead() && CSMI->getOperand(i).isDead()) in ProcessBlockCSE()
639 if (!isProfitableToCSE(NewReg, OldReg, CSMI->getParent(), &MI)) { in ProcessBlockCSE()
676 CSMI->getOperand(ImplicitDefToUpdate).setIsDead(false); in ProcessBlockCSE()
679 CSMI->getOperand(PhysDef.first).setIsDead(false); in ProcessBlockCSE()
691 if (CSMI->getParent() == MI.getParent()) { in ProcessBlockCSE()
692 for (MachineBasicBlock::iterator II = CSMI, IE = &MI; II != IE; ++II) in ProcessBlockCSE()