[llvm] AMDGPU: Fix generation for dot2 VOPD with sgpr inputs (PR #189667)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 1 04:46:57 PDT 2026


================
@@ -49,7 +49,12 @@ static bool canMapVOP3PToVOPD(const MachineInstr &MI) {
   if (MI.getOperand(Src1ModsIdx).getImm() != SISrcMods::OP_SEL_1)
     return false;
   int16_t Src1Idx = getNamedOperandIdx(Opc, AMDGPU::OpName::src1);
-  if (!MI.getOperand(Src1Idx).isReg())
+  const MachineFunction *MF = MI.getMF();
+  const GCNSubtarget &ST = MF->getSubtarget<GCNSubtarget>();
+  const SIRegisterInfo *TRI = ST.getRegisterInfo();
+  const MachineRegisterInfo &MRI = MF->getRegInfo();
+  if (!MI.getOperand(Src1Idx).isReg() ||
+      !TRI->isVGPR(MRI, MI.getOperand(Src1Idx).getReg()))
     return false;
----------------
arsenm wrote:

You're going to pick one eventually, can defer this as the final check 

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


More information about the llvm-commits mailing list