Lines Matching refs:CSMI
115 bool PhysRegDefsReach(MachineInstr *CSMI, MachineInstr *MI,
121 MachineInstr *CSMI, MachineInstr *MI);
307 bool MachineCSE::PhysRegDefsReach(MachineInstr *CSMI, MachineInstr *MI, in PhysRegDefsReach() argument
315 const MachineBasicBlock *CSMBB = CSMI->getParent(); in PhysRegDefsReach()
330 MachineBasicBlock::const_iterator I = CSMI; I = std::next(I); in PhysRegDefsReach()
409 MachineInstr *CSMI, MachineInstr *MI) { in isProfitableToCSE() argument
435 MachineBasicBlock *CSBB = CSMI->getParent(); in isProfitableToCSE()
552 MachineInstr *CSMI = Exps[CSVN]; in ProcessBlock() local
553 if (PhysRegDefsReach(CSMI, MI, PhysRefs, PhysDefs, CrossMBBPhysDef)) in ProcessBlock()
566 MachineInstr *CSMI = Exps[CSVN]; in ProcessBlock() local
568 LLVM_DEBUG(dbgs() << "*** Found a common subexpression: " << *CSMI); in ProcessBlock()
579 unsigned NewReg = CSMI->getOperand(i).getReg(); in ProcessBlock()
583 if (MO.isImplicit() && !MO.isDead() && CSMI->getOperand(i).isDead()) in ProcessBlock()
600 if (!isProfitableToCSE(NewReg, OldReg, CSMI, MI)) { in ProcessBlock()
637 CSMI->getOperand(ImplicitDefToUpdate).setIsDead(false); in ProcessBlock()
649 if (CSMI->getParent() == MI->getParent()) { in ProcessBlock()
650 for (MachineBasicBlock::iterator II = CSMI, IE = MI; II != IE; ++II) in ProcessBlock()