<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/59621>59621</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [AMDGPU][MC][GFX11] Incorrect encoding of neg modifier for v_dot2_f32_bf16
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            bug,
            backend:AMDGPU,
            mc
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
            dpreobra
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          dpreobra
      </td>
    </tr>
</table>

<pre>
    `v_dot2_f32_bf16` accepts `neg_lo:[0,1,0]` and `neg_hi:[0,1,0]` modifiers, but they are silently ignored and not encoded.
Disassembler fails to decode `v_dot2_f32_bf16` with these modifiers.

An example of failed test:

    v_dot2_f32_bf16 v5, v1, v2, v3 neg_hi:[0,1,0]

Expected result:

 0x05,0x42,0x1a,0xcc,0x01,0x05,0x0e,0x1c

Actual output:

 0x05,0x40,0x1a,0xcc,0x01,0x05,0x0e,0x1c

A fix is pending.

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyck0-PnDgQxT-NuZSmZRcNsxw49DTboz2MtJeV9tYydgFOjI1s0-n59hE08yeTSQ651EPw-JXLfpYxmt4R1ax4YIh6CuTbIBkiK5pMzmnwoX55m7VeP9es5Jez9gnPXY7nthMlKzlIpWhKEVjJHfVn61l-YMUDZ3gUDI-cFc1qc_rFMpjPLaPXpjMUIsMjtHOCNNAzyEAQjSWX7DOY3vlAeqU5n4Cc8pr0jvGG8UNjooyRxtZSgE4aGyF50LR44PPVfzNpWPpEemu_0W714ICucpwsge9WKGlIFNMywzsfAMAHPlyKZZKLWCuuNYdf7sA72N_XiVQiDYHibH9qxa98IfPrHlcRchWlVuHiJjcLp5tF_TCUSrO04Oc0zb-h8z-kQ2euYCJM5LRx_bafma5zXeWVzKgW5b0oSqxQZENdlZXkvP2r5ah0QTK_r0SpVSu0EnwveWZq5IgCkYuKIxe7Ls8lL9pO54oqxJztOY3S2J21l3HnQ5-ZGGeqi6pEkVnZko1b0Nu5XzKOx-VZqq_kNMsPh6fm8d__Xj-MarsHoV6Id-3cR7bn1sQU33okk-x6f7a_i4YVD0_Hmz6e_heCFQ3845QPgdQWVuP6JUiO-tfAQefDx-xkc7D1kNIUl-PBE8NTb9IwtzvlR4anZRGb3E3BfyGVGJ7WqSPD0zr49wAAAP__lckkGQ">