[llvm-branch-commits] [llvm] AMDGPU: Codegen for v_dual_dot2acc_f32_f16/bf16 from VOP3 (PR #179226)

Petar Avramovic via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Mar 23 08:55:29 PDT 2026


================
@@ -838,20 +841,24 @@ class ComponentLayout {
   const ComponentKind Kind;
   const ComponentProps PrevComp;
   const unsigned VOPD3ModsNum;
-  const int BitOp3Idx; // Index of bitop3 operand or -1
+  const int BitOp3Idx;    // Index of bitop3 operand or -1
+  const bool IsVOP3PDot2; // True for V_DOT2_F32_F16 / V_DOT2_F32_BF16
 
 public:
   // Create layout for COMPONENT_X or SINGLE component.
-  ComponentLayout(ComponentKind Kind, unsigned VOPD3ModsNum, int BitOp3Idx)
-      : Kind(Kind), VOPD3ModsNum(VOPD3ModsNum), BitOp3Idx(BitOp3Idx) {
+  ComponentLayout(ComponentKind Kind, unsigned VOPD3ModsNum, int BitOp3Idx,
+                  bool IsVOP3PDot2 = false)
+      : Kind(Kind), VOPD3ModsNum(VOPD3ModsNum), BitOp3Idx(BitOp3Idx),
+        IsVOP3PDot2(IsVOP3PDot2) {
----------------
petar-avramovic wrote:

Not sure. I wanted to treat VOP3 dot instructions, with some extra checks, as VOP2. Will not merge this one unit we resolve what should be done.

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


More information about the llvm-branch-commits mailing list