• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/llvm-project/llvm/lib/CodeGen/

Lines Matching refs:Def

155     Register Def = MI->getOperand(0).getReg();
158 // Remember Def is defined by the copy.
159 for (MCRegUnitIterator RUI(Def, &TRI); RUI.isValid(); ++RUI)
162 // Remember source that's copied to Def. Once it's clobbered, then
167 if (!is_contained(Copy.DefRegs, Def))
168 Copy.DefRegs.push_back(Def);
280 bool eraseIfRedundant(MachineInstr &Copy, unsigned Src, unsigned Def);
327 /// Return true if \p PreviousCopy did copy register \p Src to register \p Def.
329 /// all even though Src and Def are subregisters of the registers used in
334 unsigned Def, const TargetRegisterInfo *TRI) {
338 assert(Def == PreviousDef);
344 return SubIdx == TRI->getSubRegIndex(PreviousDef, Def);
348 /// register \p Src to the register \p Def; This may happen indirectly by
351 unsigned Def) {
354 if (MRI->isReserved(Src) || MRI->isReserved(Def))
358 MachineInstr *PrevCopy = Tracker.findAvailCopy(Copy, Def, *TRI);
365 if (!isNopCopy(*PrevCopy, Src, Def, TRI))
370 // Copy was redundantly redefining either Src or Def. Remove earlier kill
374 assert(CopyDef == Src || CopyDef == Def);
387 Register Def = Copy.getOperand(0).getReg();
391 return URC->contains(Def);
564 Register Def = MI->getOperand(0).getReg();
567 assert(!Register::isVirtualRegister(Def) &&
586 if (eraseIfRedundant(*MI, Def, Src) || eraseIfRedundant(*MI, Src, Def))
609 if (!MRI->isReserved(Def))
612 // If 'Def' is previously source of another copy, then this earlier copy's
619 Tracker.clobberRegister(Def, *TRI);
736 Register Def = MI.getOperand(0).getReg();
739 if (!Def || !Src)
742 if (MRI.isReserved(Def) || MRI.isReserved(Src))
775 Register Def = Copy->getOperand(0).getReg();
788 << "\n with " << printReg(Def, TRI) << "\n in "
791 MODef.setReg(Def);
816 Register Def = MI->getOperand(0).getReg();
823 Tracker.invalidateRegister(Def, *TRI);