Lines Matching refs:Last
263 int calcInstrDist(const MachineInstr &First, const MachineInstr &Last);
283 bool isReplaceable(const MachineInstr &First, const MachineInstr &Last,
319 const MachineInstr &Last) { in calcInstrDist() argument
322 assert(Last.getParent() == First.getParent() && in calcInstrDist()
324 assert(InstrPos.contains(&First) && InstrPos.contains(&Last) && in calcInstrDist()
327 return InstrPos[&Last] - InstrPos[&First]; in calcInstrDist()
423 const MachineInstr &Last, in isReplaceable() argument
425 assert(isLEA(First) && isLEA(Last) && in isReplaceable()
433 MRI->getRegClass(Last.getOperand(0).getReg())) in isReplaceable()
437 AddrDispShift = getAddrDispShift(Last, 1, First, 1); in isReplaceable()
442 for (auto &MO : MRI->use_nodbg_operands(Last.getOperand(0).getReg())) { in isReplaceable()
635 MachineInstr &Last = **I2; in removeRedundantLEAs() local
640 assert(calcInstrDist(First, Last) > 0 && in removeRedundantLEAs()
644 if (!isReplaceable(First, Last, AddrDispShift)) { in removeRedundantLEAs()
653 Register LastVReg = Last.getOperand(0).getReg(); in removeRedundantLEAs()
692 Last.dump();); in removeRedundantLEAs()
698 Last.eraseFromParent(); in removeRedundantLEAs()