[llvm] [AMDGPU] Use lambda in fmaak/fmamk f16 folding. NFC (PR #176258)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 16 14:04:44 PST 2026


================
@@ -3759,6 +3759,23 @@ bool SIInstrInfo::foldImmediate(MachineInstr &UseMI, MachineInstr &DefMI,
     MachineOperand *Src1 = getNamedOperand(UseMI, AMDGPU::OpName::src1);
     MachineOperand *Src2 = getNamedOperand(UseMI, AMDGPU::OpName::src2);
 
+    auto CopyRegOperandToNarrowerRC =
+        [MRI, this](MachineInstr &MI, unsigned OpNo,
+                    const TargetRegisterClass *NewRC) -> void {
+      if (!MI.getOperand(OpNo).isReg())
+        return;
+      Register Reg = MI.getOperand(OpNo).getReg();
+      const TargetRegisterClass *RC = RI.getRegClassForReg(*MRI, Reg);
+      if (!RI.getCommonSubClass(RC, NewRC))
+        return;
+      Register Tmp = MRI->createVirtualRegister(NewRC);
----------------
arsenm wrote:

The NewRC should be the result of getCommonSubClass 

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


More information about the llvm-commits mailing list