Lines Matching refs:DefMI
664 MachineInstr *DefMI = LIS->getInstructionFromIndex(AValNo->def); in removeCopyByCommutingDef() local
665 if (!DefMI) in removeCopyByCommutingDef()
667 if (!DefMI->isCommutable()) in removeCopyByCommutingDef()
671 int DefIdx = DefMI->findRegisterDefOperandIdx(IntA.reg); in removeCopyByCommutingDef()
674 if (!DefMI->isRegTiedToUseOperand(DefIdx, &UseOpIdx)) in removeCopyByCommutingDef()
687 if (!TII->findCommutedOpIndices(*DefMI, UseOpIdx, NewDstIdx)) in removeCopyByCommutingDef()
690 MachineOperand &NewDstMO = DefMI->getOperand(NewDstIdx); in removeCopyByCommutingDef()
715 << *DefMI); in removeCopyByCommutingDef()
719 MachineBasicBlock *MBB = DefMI->getParent(); in removeCopyByCommutingDef()
721 TII->commuteInstruction(*DefMI, false, UseOpIdx, NewDstIdx); in removeCopyByCommutingDef()
728 if (NewMI != DefMI) { in removeCopyByCommutingDef()
729 LIS->ReplaceMachineInstrInMaps(*DefMI, *NewMI); in removeCopyByCommutingDef()
730 MachineBasicBlock::iterator Pos = DefMI; in removeCopyByCommutingDef()
732 MBB->erase(DefMI); in removeCopyByCommutingDef()
897 MachineInstr *DefMI = LIS->getInstructionFromIndex(ValNo->def); in reMaterializeTrivialDef() local
898 if (!DefMI) in reMaterializeTrivialDef()
900 if (DefMI->isCopyLike()) { in reMaterializeTrivialDef()
904 if (!TII->isAsCheapAsAMove(*DefMI)) in reMaterializeTrivialDef()
906 if (!TII->isTriviallyReMaterializable(*DefMI, AA)) in reMaterializeTrivialDef()
908 if (!definesFullReg(*DefMI, SrcReg)) in reMaterializeTrivialDef()
911 if (!DefMI->isSafeToMove(AA, SawStore)) in reMaterializeTrivialDef()
913 const MCInstrDesc &MCID = DefMI->getDesc(); in reMaterializeTrivialDef()
931 if (!DefMI->isImplicitDef()) { in reMaterializeTrivialDef()
936 DefMI->getOperand(0).getSubReg()); in reMaterializeTrivialDef()
956 TII->reMaterialize(*MBB, MII, DstReg, SrcIdx, *DefMI, *TRI); in reMaterializeTrivialDef()
1811 LaneBitmask computeWriteLanes(const MachineInstr *DefMI, bool &Redef) const;
1907 LaneBitmask JoinVals::computeWriteLanes(const MachineInstr *DefMI, bool &Redef) in computeWriteLanes() argument
1910 for (const MachineOperand &MO : DefMI->operands()) { in computeWriteLanes()
1992 const MachineInstr *DefMI = nullptr; in analyzeValue() local
1998 DefMI = Indexes->getInstructionFromIndex(VNI->def); in analyzeValue()
1999 assert(DefMI != nullptr); in analyzeValue()
2003 if (DefMI->isImplicitDef()) { in analyzeValue()
2009 V.ValidLanes = V.WriteLanes = computeWriteLanes(DefMI, Redef); in analyzeValue()
2037 if (DefMI->isImplicitDef()) { in analyzeValue()
2104 if (OtherV.ErasableImplicitDef && DefMI && in analyzeValue()
2105 DefMI->getParent() != Indexes->getMBBFromIndex(V.OtherVNI->def)) { in analyzeValue()
2107 << " extends into BB#" << DefMI->getParent()->getNumber() in analyzeValue()
2118 if (DefMI->isImplicitDef()) { in analyzeValue()
2129 if (CP.isCoalescable(DefMI)) { in analyzeValue()
2146 if (DefMI->isFullCopy() && !CP.isPartial() in analyzeValue()