[llvm] [TII][NFC] Add renamable bit to copyPhysReg (PR #91179)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Tue May 7 02:33:59 PDT 2024


================
@@ -993,10 +993,16 @@ class TargetInstrInfo : public MCInstrInfo {
   /// The source and destination registers may overlap, which may require a
   /// careful implementation when multiple copy instructions are required for
   /// large registers. See for example the ARM target.
+  ///
+  /// If RenamableDest is true, the copy instruction's destination operand is
+  /// marked renamable.
+  /// If RenamableSrc is true, the copy instruction's source operand is
+  /// marked renamable.
   virtual void copyPhysReg(MachineBasicBlock &MBB,
                            MachineBasicBlock::iterator MI, const DebugLoc &DL,
-                           MCRegister DestReg, MCRegister SrcReg,
-                           bool KillSrc) const {
+                           MCRegister DestReg, MCRegister SrcReg, bool KillSrc,
+                           bool RenamableDest = false,
+                           bool RenamableSrc = false) const {
----------------
arsenm wrote:

Should we just start passing through a SrcFlags/DestFlags instead of unpacking them into kill/renamable? 

https://github.com/llvm/llvm-project/pull/91179


More information about the llvm-commits mailing list