Lines Matching refs:DefMI
593 MachineInstr *DefMI = LIS->getInstructionFromIndex(AValNo->def);
594 if (!DefMI)
596 if (!DefMI->isCommutable())
598 // If DefMI is a two-address instruction then commuting it will change the
600 int DefIdx = DefMI->findRegisterDefOperandIdx(IntA.reg);
603 if (!DefMI->isRegTiedToUseOperand(DefIdx, &UseOpIdx))
606 if (!TII->findCommutedOpIndices(DefMI, Op1, Op2))
615 MachineOperand &NewDstMO = DefMI->getOperand(NewDstIdx);
641 << *DefMI);
645 MachineBasicBlock *MBB = DefMI->getParent();
646 MachineInstr *NewMI = TII->commuteInstruction(DefMI);
653 if (NewMI != DefMI) {
654 LIS->ReplaceMachineInstrInMaps(DefMI, NewMI);
655 MachineBasicBlock::iterator Pos = DefMI;
657 MBB->erase(DefMI);
751 MachineInstr *DefMI = LIS->getInstructionFromIndex(ValNo->def);
752 if (!DefMI)
754 if (DefMI->isCopyLike()) {
758 if (!DefMI->isAsCheapAsAMove())
760 if (!TII->isTriviallyReMaterializable(DefMI, AA))
763 if (!DefMI->isSafeToMove(TII, AA, SawStore))
765 const MCInstrDesc &MCID = DefMI->getDesc();
775 if (!DefMI->isImplicitDef()) {
780 DefMI->getOperand(0).getSubReg());
799 TII->reMaterialize(*MBB, MII, DstReg, SrcIdx, DefMI, *TRI);
844 TRI->composeSubRegIndices(SrcIdx, DefMI->getOperand(0).getSubReg()));
1374 unsigned computeWriteLanes(const MachineInstr *DefMI, bool &Redef);
1419 /// Compute the bitmask of lanes actually written by DefMI.
1422 unsigned JoinVals::computeWriteLanes(const MachineInstr *DefMI, bool &Redef) {
1424 for (ConstMIOperands MO(DefMI); MO.isValid(); ++MO) {
1471 const MachineInstr *DefMI = 0;
1476 DefMI = Indexes->getInstructionFromIndex(VNI->def);
1478 V.ValidLanes = V.WriteLanes = computeWriteLanes(DefMI, Redef);
1482 // This only covers partial redef operands. DefMI may have normal use
1503 if (DefMI->isImplicitDef()) {
1569 if (OtherV.ErasableImplicitDef && DefMI &&
1570 DefMI->getParent() != Indexes->getMBBFromIndex(V.OtherVNI->def)) {
1572 << " extends into BB#" << DefMI->getParent()->getNumber()
1583 if (DefMI->isImplicitDef())
1586 // Include the non-conflict where DefMI is a coalescable copy that kills
1588 if (CP.isCoalescable(DefMI)) {
1595 // This may not be a real conflict if DefMI simply kills Other and defines
1605 if (DefMI->isFullCopy() && !CP.isPartial() &&
1624 // If the other live range is killed by DefMI and the live ranges are still