Lines Matching refs:DefI
316 const MachineInstr *DefI = Def->getParent(); in isSafeToMove() local
318 assert(DefI->getParent() == Insert->getParent()); in isSafeToMove()
332 if (Def != DefI->defs().begin()) in isSafeToMove()
340 for (const auto &SubsequentDef : drop_begin(DefI->defs())) { in isSafeToMove()
341 auto I = std::next(MachineBasicBlock::const_iterator(DefI)); in isSafeToMove()
354 const MachineBasicBlock *MBB = DefI->getParent(); in isSafeToMove()
355 auto NextI = std::next(MachineBasicBlock::const_iterator(DefI)); in isSafeToMove()
363 if (WebAssembly::isCatch(DefI->getOpcode())) in isSafeToMove()
368 for (const MachineOperand &MO : DefI->operands()) { in isSafeToMove()
398 query(*DefI, Read, Write, Effects, StackPointer); in isSafeToMove()
407 MachineBasicBlock::const_iterator D(DefI), I(Insert); in isSafeToMove()
853 MachineInstr *DefI = getVRegDef(Reg, Insert, MRI, LIS); in runOnMachineFunction() local
854 if (!DefI) in runOnMachineFunction()
859 if (DefI->isInlineAsm()) in runOnMachineFunction()
864 if (WebAssembly::isArgument(DefI->getOpcode())) in runOnMachineFunction()
867 MachineOperand *Def = DefI->findRegisterDefOperand(Reg); in runOnMachineFunction()
876 bool SameBlock = DefI->getParent() == &MBB; in runOnMachineFunction()
879 if (CanMove && hasOneNonDBGUse(Reg, DefI, MRI, MDT, LIS)) { in runOnMachineFunction()
880 Insert = moveForSingleUse(Reg, Use, DefI, MBB, Insert, LIS, MFI, MRI); in runOnMachineFunction()
887 } else if (shouldRematerialize(*DefI, TII)) { in runOnMachineFunction()
889 rematerializeCheapDef(Reg, Use, *DefI, MBB, Insert->getIterator(), in runOnMachineFunction()
893 Insert = moveAndTeeForMultiUse(Reg, Use, DefI, MBB, Insert, LIS, MFI, in runOnMachineFunction()