[llvm] [AMDGPU] Add VOP3P encoding to gfx13 (PR #196252)
Mariusz Sikora via llvm-commits
llvm-commits at lists.llvm.org
Thu May 7 00:23:52 PDT 2026
https://github.com/mariusz-sikora-at-amd created https://github.com/llvm/llvm-project/pull/196252
None
>From 259235a801b111200b71e8be13154a5383395b0d Mon Sep 17 00:00:00 2001
From: Ivan Kosarev <ivan.kosarev at amd.com>
Date: Tue, 28 Apr 2026 13:32:24 -0400
Subject: [PATCH] [AMDGPU] Add VOP3P encoding to gfx13
---
llvm/lib/Target/AMDGPU/VOP3PInstructions.td | 102 +-
llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s | 1 +
llvm/test/MC/AMDGPU/gfx13_asm_vop3p.s | 1608 +++++++++++++++++
llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp16.s | 18 +
llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp8.s | 34 +
.../test/MC/AMDGPU/gfx13_asm_vop3p_features.s | 125 ++
6 files changed, 1846 insertions(+), 42 deletions(-)
create mode 100644 llvm/test/MC/AMDGPU/gfx13_asm_vop3p.s
create mode 100644 llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp16.s
create mode 100644 llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp8.s
create mode 100644 llvm/test/MC/AMDGPU/gfx13_asm_vop3p_features.s
diff --git a/llvm/lib/Target/AMDGPU/VOP3PInstructions.td b/llvm/lib/Target/AMDGPU/VOP3PInstructions.td
index 7ae93b30e7f03..c7835010032ea 100644
--- a/llvm/lib/Target/AMDGPU/VOP3PInstructions.td
+++ b/llvm/lib/Target/AMDGPU/VOP3PInstructions.td
@@ -2568,20 +2568,27 @@ defm V_DOT4_F32_FP8_FP8 : VOP3P_Realtriple_gfx11_gfx12<0x26>;
defm V_DOT4_F32_BF8_BF8 : VOP3P_Realtriple_gfx11_gfx12<0x27>;
//===----------------------------------------------------------------------===//
-// GFX12
+// GFX12, GFX13.
//===----------------------------------------------------------------------===//
multiclass VOP3P_Real_gfx12<bits<8> op> : VOP3P_Real_Base<GFX12Gen, op>;
multiclass VOP3P_Real_gfx1250<bits<8> op> : VOP3P_Real_Base<GFX1250Gen, op>;
-multiclass VOP3P_Real_with_name_gfx12<bits<8> op,
+multiclass VOP3P_Real_gfx1250_gfx13<bits<8> op> :
+ VOP3P_Real_gfx1250<op>, VOP3P_Real_Base<GFX13Gen, op>;
+
+multiclass VOP3P_Real_with_name_gfx12_gfx13<bits<8> op,
string backing_ps_name = NAME,
string asmName = !cast<VOP3P_Pseudo>(NAME).Mnemonic> :
- VOP3P_Real_with_name<GFX12Gen, op, backing_ps_name, asmName>;
+ VOP3P_Real_with_name<GFX12Gen, op, backing_ps_name, asmName>,
+ VOP3P_Real_with_name<GFX13Gen, op, backing_ps_name, asmName>;
+
+multiclass VOP3P_Realtriple_gfx1250_gfx13<bits<8> op> :
+ VOP3P_Realtriple<GFX1250Gen, op>, VOP3P_Realtriple<GFX13Gen, op>;
-defm V_PK_MIN_NUM_F16 : VOP3P_Real_with_name_gfx12<0x1b, "V_PK_MIN_F16", "v_pk_min_num_f16">;
-defm V_PK_MAX_NUM_F16 : VOP3P_Real_with_name_gfx12<0x1c, "V_PK_MAX_F16", "v_pk_max_num_f16">;
+defm V_PK_MIN_NUM_F16 : VOP3P_Real_with_name_gfx12_gfx13<0x1b, "V_PK_MIN_F16", "v_pk_min_num_f16">;
+defm V_PK_MAX_NUM_F16 : VOP3P_Real_with_name_gfx12_gfx13<0x1c, "V_PK_MAX_F16", "v_pk_max_num_f16">;
defm V_PK_FMA_F32 : VOP3P_Real_gfx12<0x1f>;
defm V_PK_MUL_F32 : VOP3P_Real_gfx12<0x28>;
@@ -2595,19 +2602,19 @@ defm V_PK_MAX3_I16 : VOP3P_Real_gfx1250<0x2f>;
defm V_PK_MAX3_U16 : VOP3P_Real_gfx1250<0x30>;
defm V_PK_MIN3_I16 : VOP3P_Real_gfx1250<0x31>;
defm V_PK_MIN3_U16 : VOP3P_Real_gfx1250<0x32>;
-defm V_PK_FMA_BF16 : VOP3P_Real_gfx1250<0x11>;
-defm V_PK_ADD_BF16 : VOP3P_Real_gfx1250<0x23>;
-defm V_PK_MUL_BF16 : VOP3P_Real_gfx1250<0x2a>;
-defm V_PK_MIN_NUM_BF16 : VOP3P_Real_gfx1250<0x2b>;
-defm V_PK_MAX_NUM_BF16 : VOP3P_Real_gfx1250<0x2c>;
+defm V_PK_FMA_BF16 : VOP3P_Real_gfx1250_gfx13<0x11>;
+defm V_PK_ADD_BF16 : VOP3P_Real_gfx1250_gfx13<0x23>;
+defm V_PK_MUL_BF16 : VOP3P_Real_gfx1250_gfx13<0x2a>;
+defm V_PK_MIN_NUM_BF16 : VOP3P_Real_gfx1250_gfx13<0x2b>;
+defm V_PK_MAX_NUM_BF16 : VOP3P_Real_gfx1250_gfx13<0x2c>;
defm V_PK_MINIMUM3_F16 : VOP3P_Real_gfx1250<0x36>;
defm V_PK_MAXIMUM3_F16 : VOP3P_Real_gfx1250<0x37>;
defm V_PK_MIN3_NUM_F16 : VOP3P_Real_gfx1250<0x38>;
defm V_PK_MAX3_NUM_F16 : VOP3P_Real_gfx1250<0x39>;
-defm V_FMA_MIX_F32_BF16 : VOP3P_Realtriple<GFX1250Gen, 0x3d>;
-defm V_FMA_MIXLO_BF16 : VOP3P_Realtriple<GFX1250Gen, 0x3e>;
-defm V_FMA_MIXHI_BF16 : VOP3P_Realtriple<GFX1250Gen, 0x3f>;
+defm V_FMA_MIX_F32_BF16 : VOP3P_Realtriple_gfx1250_gfx13<0x3d>;
+defm V_FMA_MIXLO_BF16 : VOP3P_Realtriple_gfx1250_gfx13<0x3e>;
+defm V_FMA_MIXHI_BF16 : VOP3P_Realtriple_gfx1250_gfx13<0x3f>;
let PostEncoderMethod = "postEncodeVOP3<true, true, false>" in {
defm V_WMMA_LD_SCALE_PAIRED_B32 : VOP3P_Real_gfx1250<0x35>;
@@ -2632,15 +2639,18 @@ multiclass VOP3P_Real_with_name_gfx1170<bits<8> op,
defm V_PK_MIN_NUM_F16 : VOP3P_Real_with_name_gfx1170<0x11, "V_PK_MIN_F16", "v_pk_min_num_f16">;
defm V_PK_MAX_NUM_F16 : VOP3P_Real_with_name_gfx1170<0x12, "V_PK_MAX_F16", "v_pk_max_num_f16">;
-defm V_PK_MINIMUM_F16 : VOP3P_Real_gfx11_gfx12<0x1d>;
-defm V_PK_MAXIMUM_F16 : VOP3P_Real_gfx11_gfx12<0x1e>;
-
//===----------------------------------------------------------------------===//
-// GFX11
+// GFX11, GFX12, GFX13.
//===----------------------------------------------------------------------===//
+multiclass VOP3P_Real_gfx11_gfx12_gfx13<bits<8> op> :
+ VOP3P_Real_gfx11_gfx12<op>, VOP3P_Real_Base<GFX13Gen, op>;
+
+defm V_PK_MINIMUM_F16 : VOP3P_Real_gfx11_gfx12_gfx13<0x1d>;
+defm V_PK_MAXIMUM_F16 : VOP3P_Real_gfx11_gfx12_gfx13<0x1e>;
+
+defm V_DOT4_I32_IU8 : VOP3P_Real_gfx11_gfx12_gfx13<0x16>;
+defm V_DOT8_I32_IU4 : VOP3P_Real_gfx11_gfx12_gfx13<0x18>;
-defm V_DOT4_I32_IU8 : VOP3P_Real_gfx11_gfx12<0x16>;
-defm V_DOT8_I32_IU4 : VOP3P_Real_gfx11_gfx12<0x18>;
defm V_DOT2_F32_BF16 : VOP3P_Realtriple_gfx11_gfx12<0x1a>;
let AssemblerPredicate = isGFX11Plus in {
@@ -3006,7 +3016,7 @@ defm V_PK_ADD_F32 : VOP3P_Real_vi <0x32>;
defm V_PK_MOV_B32 : VOP3P_Real_vi <0x33>;
//===----------------------------------------------------------------------===//
-// GFX10.
+// GFX10, GFX11, GFX12, GFX13.
//===----------------------------------------------------------------------===//
let AssemblerPredicate = isGFX10Only, DecoderNamespace = "GFX10", VOP3P = 1 in {
@@ -3019,6 +3029,10 @@ let AssemblerPredicate = isGFX10Only, DecoderNamespace = "GFX10", VOP3P = 1 in {
multiclass VOP3P_Real_gfx10_gfx11<bits<8> op> :
VOP3P_Real_gfx10<op>, VOP3P_Real_Base<GFX11Gen, op>;
+multiclass VOP3P_Real_gfx10_gfx11_gfx12_gfx13<bits<8> op> :
+ VOP3P_Real_gfx10_gfx11<op>, VOP3P_Real_Base<GFX12Gen, op>,
+ VOP3P_Real_Base<GFX13Gen, op>;
+
multiclass VOP3P_Real_gfx10_gfx11_not_gfx1170<bits<8> op> :
VOP3P_Real_gfx10<op>, VOP3P_Real_Base<GFX11Not11_70Gen, op>;
@@ -3029,35 +3043,39 @@ multiclass VOP3P_Real_gfx10_gfx11_gfx12_Triple<bits<8> op> :
VOP3P_Real_gfx10<op>, VOP3P_Realtriple<GFX11Gen, op>,
VOP3P_Realtriple<GFX12Gen, op>;
-defm V_PK_MAD_I16 : VOP3P_Real_gfx10_gfx11_gfx12<0x00>;
-defm V_PK_MUL_LO_U16 : VOP3P_Real_gfx10_gfx11_gfx12<0x01>;
-defm V_PK_ADD_I16 : VOP3P_Real_gfx10_gfx11_gfx12<0x02>;
-defm V_PK_SUB_I16 : VOP3P_Real_gfx10_gfx11_gfx12<0x03>;
-defm V_PK_LSHLREV_B16 : VOP3P_Real_gfx10_gfx11_gfx12<0x04>;
-defm V_PK_LSHRREV_B16 : VOP3P_Real_gfx10_gfx11_gfx12<0x05>;
-defm V_PK_ASHRREV_I16 : VOP3P_Real_gfx10_gfx11_gfx12<0x06>;
-defm V_PK_MAX_I16 : VOP3P_Real_gfx10_gfx11_gfx12<0x07>;
-defm V_PK_MIN_I16 : VOP3P_Real_gfx10_gfx11_gfx12<0x08>;
-defm V_PK_MAD_U16 : VOP3P_Real_gfx10_gfx11_gfx12<0x09>;
-defm V_PK_ADD_U16 : VOP3P_Real_gfx10_gfx11_gfx12<0x0a>;
-defm V_PK_SUB_U16 : VOP3P_Real_gfx10_gfx11_gfx12<0x0b>;
-defm V_PK_MAX_U16 : VOP3P_Real_gfx10_gfx11_gfx12<0x0c>;
-defm V_PK_MIN_U16 : VOP3P_Real_gfx10_gfx11_gfx12<0x0d>;
-defm V_PK_FMA_F16 : VOP3P_Real_gfx10_gfx11_gfx12<0x0e>;
-defm V_PK_ADD_F16 : VOP3P_Real_gfx10_gfx11_gfx12<0x0f>;
-defm V_PK_MUL_F16 : VOP3P_Real_gfx10_gfx11_gfx12<0x10>;
+multiclass VOP3P_Real_gfx10_gfx11_gfx12_gfx13_Triple<bits<8> op> :
+ VOP3P_Real_gfx10_gfx11_gfx12_Triple<op>,
+ VOP3P_Realtriple<GFX13Gen, op>;
+
+defm V_PK_MAD_I16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x00>;
+defm V_PK_MUL_LO_U16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x01>;
+defm V_PK_ADD_I16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x02>;
+defm V_PK_SUB_I16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x03>;
+defm V_PK_LSHLREV_B16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x04>;
+defm V_PK_LSHRREV_B16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x05>;
+defm V_PK_ASHRREV_I16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x06>;
+defm V_PK_MAX_I16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x07>;
+defm V_PK_MIN_I16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x08>;
+defm V_PK_MAD_U16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x09>;
+defm V_PK_ADD_U16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x0a>;
+defm V_PK_SUB_U16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x0b>;
+defm V_PK_MAX_U16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x0c>;
+defm V_PK_MIN_U16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x0d>;
+defm V_PK_FMA_F16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x0e>;
+defm V_PK_ADD_F16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x0f>;
+defm V_PK_MUL_F16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x10>;
defm V_PK_MIN_F16 : VOP3P_Real_gfx10_gfx11_not_gfx1170<0x11>;
defm V_PK_MAX_F16 : VOP3P_Real_gfx10_gfx11_not_gfx1170<0x12>;
-defm V_FMA_MIX_F32 : VOP3P_Real_gfx10_gfx11_gfx12_Triple<0x20>;
-defm V_FMA_MIXLO_F16 : VOP3P_Real_gfx10_gfx11_gfx12_Triple<0x21>;
-defm V_FMA_MIXHI_F16 : VOP3P_Real_gfx10_gfx11_gfx12_Triple<0x22>;
+defm V_FMA_MIX_F32 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13_Triple<0x20>;
+defm V_FMA_MIXLO_F16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13_Triple<0x21>;
+defm V_FMA_MIXHI_F16 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13_Triple<0x22>;
defm V_DOT2_I32_I16 : VOP3P_Real_gfx10 <0x14>;
defm V_DOT2_U32_U16 : VOP3P_Real_gfx10 <0x15>;
defm V_DOT2_F32_F16 : VOP3P_Real_gfx10_gfx11_gfx12_Triple<0x13>;
-defm V_DOT4_U32_U8 : VOP3P_Real_gfx10_gfx11_gfx12<0x17>;
-defm V_DOT8_U32_U4 : VOP3P_Real_gfx10_gfx11_gfx12<0x19>;
+defm V_DOT4_U32_U8 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x17>;
+defm V_DOT8_U32_U4 : VOP3P_Real_gfx10_gfx11_gfx12_gfx13<0x19>;
defm V_DOT4_I32_I8 : VOP3P_Real_gfx10 <0x16>;
defm V_DOT8_I32_I4 : VOP3P_Real_gfx10 <0x18>;
diff --git a/llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s b/llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
index f7ee690c79211..566978544c596 100644
--- a/llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
+++ b/llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
@@ -1,5 +1,6 @@
// NOTE: Assertions have been autogenerated by utils/update_mc_test_checks.py UTC_ARGS: --unique --sort --version 6
// RUN: llvm-mc -triple=amdgcn -mcpu=gfx1200 -mattr=+wavefrontsize32 -show-encoding %s | FileCheck --check-prefixes=GFX12 %s
+// RUN: llvm-mc -triple=amdgcn -mcpu=gfx1310 -mattr=+wavefrontsize32 -show-encoding %s | FileCheck --check-prefixes=GFX12 %s
v_dot4_i32_i8 v5, v1, v2, s3
// GFX12: v_dot4_i32_iu8 v5, v1, v2, s3 ; encoding: [0x05,0x40,0x16,0xcc,0x01,0x05,0x0e,0x18]
diff --git a/llvm/test/MC/AMDGPU/gfx13_asm_vop3p.s b/llvm/test/MC/AMDGPU/gfx13_asm_vop3p.s
new file mode 100644
index 0000000000000..3055a0fe43206
--- /dev/null
+++ b/llvm/test/MC/AMDGPU/gfx13_asm_vop3p.s
@@ -0,0 +1,1608 @@
+// NOTE: Assertions have been autogenerated by utils/update_mc_test_checks.py UTC_ARGS: --version 6
+// RUN: llvm-mc -triple=amdgcn -show-encoding -mcpu=gfx1310 %s | FileCheck --check-prefix=GFX13 %s
+// RUN: llvm-mc -triple=amdgcn -show-encoding -mcpu=gfx1310 %s | %extract-encodings | llvm-mc -triple=amdgcn -show-encoding -mcpu=gfx1310 -disassemble | FileCheck --check-prefix=GFX13 %s
+
+v_dot4_i32_iu8 v255, 0xaf123456, vcc_hi, null neg_lo:[0,0,0]
+// GFX13: v_dot4_i32_iu8 v255, 0xaf123456, vcc_hi, null ; encoding: [0xff,0x40,0x16,0xcc,0xff,0xd6,0xf0,0x19,0x56,0x34,0x12,0xaf]
+
+v_dot4_i32_iu8 v5, -1, exec_hi, src_scc
+// GFX13: v_dot4_i32_iu8 v5, -1, exec_hi, src_scc ; encoding: [0x05,0x40,0x16,0xcc,0xc1,0xfe,0xf4,0x1b]
+
+v_dot4_i32_iu8 v5, 0.5, m0, 0.5 neg_lo:[1,0,0]
+// GFX13: v_dot4_i32_iu8 v5, 0.5, m0, 0.5 neg_lo:[1,0,0] ; encoding: [0x05,0x40,0x16,0xcc,0xf0,0xfa,0xc0,0x3b]
+
+v_dot4_i32_iu8 v5, exec_hi, null, vcc_lo
+// GFX13: v_dot4_i32_iu8 v5, exec_hi, null, vcc_lo ; encoding: [0x05,0x40,0x16,0xcc,0x7f,0xf8,0xa8,0x19]
+
+v_dot4_i32_iu8 v5, exec_lo, -1, vcc_hi
+// GFX13: v_dot4_i32_iu8 v5, exec_lo, -1, vcc_hi ; encoding: [0x05,0x40,0x16,0xcc,0x7e,0x82,0xad,0x19]
+
+v_dot4_i32_iu8 v5, m0, 0.5, m0
+// GFX13: v_dot4_i32_iu8 v5, m0, 0.5, m0 ; encoding: [0x05,0x40,0x16,0xcc,0x7d,0xe0,0xf5,0x19]
+
+v_dot4_i32_iu8 v5, null, exec_lo, 0xaf123456
+// GFX13: v_dot4_i32_iu8 v5, null, exec_lo, 0xaf123456 ; encoding: [0x05,0x40,0x16,0xcc,0x7c,0xfc,0xfc,0x1b,0x56,0x34,0x12,0xaf]
+
+v_dot4_i32_iu8 v5, s1, v255, exec_hi
+// GFX13: v_dot4_i32_iu8 v5, s1, v255, exec_hi ; encoding: [0x05,0x40,0x16,0xcc,0x01,0xfe,0xff,0x19]
+
+v_dot4_i32_iu8 v5, s105, s105, exec_lo
+// GFX13: v_dot4_i32_iu8 v5, s105, s105, exec_lo ; encoding: [0x05,0x40,0x16,0xcc,0x69,0xd2,0xf8,0x19]
+
+v_dot4_i32_iu8 v5, src_scc, vcc_lo, -1 neg_lo:[0,1,0]
+// GFX13: v_dot4_i32_iu8 v5, src_scc, vcc_lo, -1 neg_lo:[0,1,0] ; encoding: [0x05,0x40,0x16,0xcc,0xfd,0xd4,0x04,0x5b]
+
+v_dot4_i32_iu8 v5, ttmp15, src_scc, ttmp15
+// GFX13: v_dot4_i32_iu8 v5, ttmp15, src_scc, ttmp15 ; encoding: [0x05,0x40,0x16,0xcc,0x7b,0xfa,0xed,0x19]
+
+v_dot4_i32_iu8 v5, v1, v2, s3
+// GFX13: v_dot4_i32_iu8 v5, v1, v2, s3 ; encoding: [0x05,0x40,0x16,0xcc,0x01,0x05,0x0e,0x18]
+
+v_dot4_i32_iu8 v5, v255, s2, s105
+// GFX13: v_dot4_i32_iu8 v5, v255, s2, s105 ; encoding: [0x05,0x40,0x16,0xcc,0xff,0x05,0xa4,0x19]
+
+v_dot4_i32_iu8 v5, vcc_hi, 0xaf123456, v255
+// GFX13: v_dot4_i32_iu8 v5, vcc_hi, 0xaf123456, v255 ; encoding: [0x05,0x40,0x16,0xcc,0x6b,0xfe,0xfd,0x1f,0x56,0x34,0x12,0xaf]
+
+v_dot4_i32_iu8 v5, vcc_lo, ttmp15, v3
+// GFX13: v_dot4_i32_iu8 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x40,0x16,0xcc,0x6a,0xf6,0x0c,0x1c]
+
+v_dot4_u32_u8 v255, 0xaf123456, vcc_hi, null
+// GFX13: v_dot4_u32_u8 v255, 0xaf123456, vcc_hi, null ; encoding: [0xff,0x40,0x17,0xcc,0xff,0xd6,0xf0,0x19,0x56,0x34,0x12,0xaf]
+
+v_dot4_u32_u8 v5, -1, exec_hi, src_scc
+// GFX13: v_dot4_u32_u8 v5, -1, exec_hi, src_scc ; encoding: [0x05,0x40,0x17,0xcc,0xc1,0xfe,0xf4,0x1b]
+
+v_dot4_u32_u8 v5, 0.5, m0, 0.5
+// GFX13: v_dot4_u32_u8 v5, 0.5, m0, 0.5 ; encoding: [0x05,0x40,0x17,0xcc,0xf0,0xfa,0xc0,0x1b]
+
+v_dot4_u32_u8 v5, exec_hi, null, vcc_lo
+// GFX13: v_dot4_u32_u8 v5, exec_hi, null, vcc_lo ; encoding: [0x05,0x40,0x17,0xcc,0x7f,0xf8,0xa8,0x19]
+
+v_dot4_u32_u8 v5, exec_lo, -1, vcc_hi
+// GFX13: v_dot4_u32_u8 v5, exec_lo, -1, vcc_hi ; encoding: [0x05,0x40,0x17,0xcc,0x7e,0x82,0xad,0x19]
+
+v_dot4_u32_u8 v5, m0, 0.5, m0
+// GFX13: v_dot4_u32_u8 v5, m0, 0.5, m0 ; encoding: [0x05,0x40,0x17,0xcc,0x7d,0xe0,0xf5,0x19]
+
+v_dot4_u32_u8 v5, null, exec_lo, 0xaf123456
+// GFX13: v_dot4_u32_u8 v5, null, exec_lo, 0xaf123456 ; encoding: [0x05,0x40,0x17,0xcc,0x7c,0xfc,0xfc,0x1b,0x56,0x34,0x12,0xaf]
+
+v_dot4_u32_u8 v5, s1, v255, exec_hi
+// GFX13: v_dot4_u32_u8 v5, s1, v255, exec_hi ; encoding: [0x05,0x40,0x17,0xcc,0x01,0xfe,0xff,0x19]
+
+v_dot4_u32_u8 v5, s105, s105, exec_lo
+// GFX13: v_dot4_u32_u8 v5, s105, s105, exec_lo ; encoding: [0x05,0x40,0x17,0xcc,0x69,0xd2,0xf8,0x19]
+
+v_dot4_u32_u8 v5, src_scc, vcc_lo, -1
+// GFX13: v_dot4_u32_u8 v5, src_scc, vcc_lo, -1 ; encoding: [0x05,0x40,0x17,0xcc,0xfd,0xd4,0x04,0x1b]
+
+v_dot4_u32_u8 v5, ttmp15, src_scc, ttmp15
+// GFX13: v_dot4_u32_u8 v5, ttmp15, src_scc, ttmp15 ; encoding: [0x05,0x40,0x17,0xcc,0x7b,0xfa,0xed,0x19]
+
+v_dot4_u32_u8 v5, v1, v2, s3
+// GFX13: v_dot4_u32_u8 v5, v1, v2, s3 ; encoding: [0x05,0x40,0x17,0xcc,0x01,0x05,0x0e,0x18]
+
+v_dot4_u32_u8 v5, v255, s2, s105
+// GFX13: v_dot4_u32_u8 v5, v255, s2, s105 ; encoding: [0x05,0x40,0x17,0xcc,0xff,0x05,0xa4,0x19]
+
+v_dot4_u32_u8 v5, vcc_hi, 0xaf123456, v255
+// GFX13: v_dot4_u32_u8 v5, vcc_hi, 0xaf123456, v255 ; encoding: [0x05,0x40,0x17,0xcc,0x6b,0xfe,0xfd,0x1f,0x56,0x34,0x12,0xaf]
+
+v_dot4_u32_u8 v5, vcc_lo, ttmp15, v3
+// GFX13: v_dot4_u32_u8 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x40,0x17,0xcc,0x6a,0xf6,0x0c,0x1c]
+
+v_dot8_i32_iu4 v255, 0xaf123456, vcc_hi, null neg_lo:[0,0,0] clamp
+// GFX13: v_dot8_i32_iu4 v255, 0xaf123456, vcc_hi, null clamp ; encoding: [0xff,0xc0,0x18,0xcc,0xff,0xd6,0xf0,0x19,0x56,0x34,0x12,0xaf]
+
+v_dot8_i32_iu4 v5, -1, exec_hi, src_scc
+// GFX13: v_dot8_i32_iu4 v5, -1, exec_hi, src_scc ; encoding: [0x05,0x40,0x18,0xcc,0xc1,0xfe,0xf4,0x1b]
+
+v_dot8_i32_iu4 v5, 0.5, m0, 0.5 neg_lo:[1,0,0]
+// GFX13: v_dot8_i32_iu4 v5, 0.5, m0, 0.5 neg_lo:[1,0,0] ; encoding: [0x05,0x40,0x18,0xcc,0xf0,0xfa,0xc0,0x3b]
+
+v_dot8_i32_iu4 v5, exec_hi, null, vcc_lo
+// GFX13: v_dot8_i32_iu4 v5, exec_hi, null, vcc_lo ; encoding: [0x05,0x40,0x18,0xcc,0x7f,0xf8,0xa8,0x19]
+
+v_dot8_i32_iu4 v5, exec_lo, -1, vcc_hi
+// GFX13: v_dot8_i32_iu4 v5, exec_lo, -1, vcc_hi ; encoding: [0x05,0x40,0x18,0xcc,0x7e,0x82,0xad,0x19]
+
+v_dot8_i32_iu4 v5, m0, 0.5, m0
+// GFX13: v_dot8_i32_iu4 v5, m0, 0.5, m0 ; encoding: [0x05,0x40,0x18,0xcc,0x7d,0xe0,0xf5,0x19]
+
+v_dot8_i32_iu4 v5, null, exec_lo, 0xaf123456
+// GFX13: v_dot8_i32_iu4 v5, null, exec_lo, 0xaf123456 ; encoding: [0x05,0x40,0x18,0xcc,0x7c,0xfc,0xfc,0x1b,0x56,0x34,0x12,0xaf]
+
+v_dot8_i32_iu4 v5, s1, v255, exec_hi
+// GFX13: v_dot8_i32_iu4 v5, s1, v255, exec_hi ; encoding: [0x05,0x40,0x18,0xcc,0x01,0xfe,0xff,0x19]
+
+v_dot8_i32_iu4 v5, s105, s105, exec_lo
+// GFX13: v_dot8_i32_iu4 v5, s105, s105, exec_lo ; encoding: [0x05,0x40,0x18,0xcc,0x69,0xd2,0xf8,0x19]
+
+v_dot8_i32_iu4 v5, src_scc, vcc_lo, -1 neg_lo:[0,1,0]
+// GFX13: v_dot8_i32_iu4 v5, src_scc, vcc_lo, -1 neg_lo:[0,1,0] ; encoding: [0x05,0x40,0x18,0xcc,0xfd,0xd4,0x04,0x5b]
+
+v_dot8_i32_iu4 v5, ttmp15, src_scc, ttmp15
+// GFX13: v_dot8_i32_iu4 v5, ttmp15, src_scc, ttmp15 ; encoding: [0x05,0x40,0x18,0xcc,0x7b,0xfa,0xed,0x19]
+
+v_dot8_i32_iu4 v5, v1, v2, s3
+// GFX13: v_dot8_i32_iu4 v5, v1, v2, s3 ; encoding: [0x05,0x40,0x18,0xcc,0x01,0x05,0x0e,0x18]
+
+v_dot8_i32_iu4 v5, v255, s2, s105
+// GFX13: v_dot8_i32_iu4 v5, v255, s2, s105 ; encoding: [0x05,0x40,0x18,0xcc,0xff,0x05,0xa4,0x19]
+
+v_dot8_i32_iu4 v5, vcc_hi, 0xaf123456, v255
+// GFX13: v_dot8_i32_iu4 v5, vcc_hi, 0xaf123456, v255 ; encoding: [0x05,0x40,0x18,0xcc,0x6b,0xfe,0xfd,0x1f,0x56,0x34,0x12,0xaf]
+
+v_dot8_i32_iu4 v5, vcc_lo, ttmp15, v3
+// GFX13: v_dot8_i32_iu4 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x40,0x18,0xcc,0x6a,0xf6,0x0c,0x1c]
+
+v_dot8_u32_u4 v255, 0xaf123456, vcc_hi, null clamp
+// GFX13: v_dot8_u32_u4 v255, 0xaf123456, vcc_hi, null clamp ; encoding: [0xff,0xc0,0x19,0xcc,0xff,0xd6,0xf0,0x19,0x56,0x34,0x12,0xaf]
+
+v_dot8_u32_u4 v5, -1, exec_hi, src_scc
+// GFX13: v_dot8_u32_u4 v5, -1, exec_hi, src_scc ; encoding: [0x05,0x40,0x19,0xcc,0xc1,0xfe,0xf4,0x1b]
+
+v_dot8_u32_u4 v5, 0.5, m0, 0.5
+// GFX13: v_dot8_u32_u4 v5, 0.5, m0, 0.5 ; encoding: [0x05,0x40,0x19,0xcc,0xf0,0xfa,0xc0,0x1b]
+
+v_dot8_u32_u4 v5, exec_hi, null, vcc_lo
+// GFX13: v_dot8_u32_u4 v5, exec_hi, null, vcc_lo ; encoding: [0x05,0x40,0x19,0xcc,0x7f,0xf8,0xa8,0x19]
+
+v_dot8_u32_u4 v5, exec_lo, -1, vcc_hi
+// GFX13: v_dot8_u32_u4 v5, exec_lo, -1, vcc_hi ; encoding: [0x05,0x40,0x19,0xcc,0x7e,0x82,0xad,0x19]
+
+v_dot8_u32_u4 v5, m0, 0.5, m0
+// GFX13: v_dot8_u32_u4 v5, m0, 0.5, m0 ; encoding: [0x05,0x40,0x19,0xcc,0x7d,0xe0,0xf5,0x19]
+
+v_dot8_u32_u4 v5, null, exec_lo, 0xaf123456
+// GFX13: v_dot8_u32_u4 v5, null, exec_lo, 0xaf123456 ; encoding: [0x05,0x40,0x19,0xcc,0x7c,0xfc,0xfc,0x1b,0x56,0x34,0x12,0xaf]
+
+v_dot8_u32_u4 v5, s1, v255, exec_hi
+// GFX13: v_dot8_u32_u4 v5, s1, v255, exec_hi ; encoding: [0x05,0x40,0x19,0xcc,0x01,0xfe,0xff,0x19]
+
+v_dot8_u32_u4 v5, s105, s105, exec_lo
+// GFX13: v_dot8_u32_u4 v5, s105, s105, exec_lo ; encoding: [0x05,0x40,0x19,0xcc,0x69,0xd2,0xf8,0x19]
+
+v_dot8_u32_u4 v5, src_scc, vcc_lo, -1
+// GFX13: v_dot8_u32_u4 v5, src_scc, vcc_lo, -1 ; encoding: [0x05,0x40,0x19,0xcc,0xfd,0xd4,0x04,0x1b]
+
+v_dot8_u32_u4 v5, ttmp15, src_scc, ttmp15
+// GFX13: v_dot8_u32_u4 v5, ttmp15, src_scc, ttmp15 ; encoding: [0x05,0x40,0x19,0xcc,0x7b,0xfa,0xed,0x19]
+
+v_dot8_u32_u4 v5, v1, v2, s3
+// GFX13: v_dot8_u32_u4 v5, v1, v2, s3 ; encoding: [0x05,0x40,0x19,0xcc,0x01,0x05,0x0e,0x18]
+
+v_dot8_u32_u4 v5, v255, s2, s105
+// GFX13: v_dot8_u32_u4 v5, v255, s2, s105 ; encoding: [0x05,0x40,0x19,0xcc,0xff,0x05,0xa4,0x19]
+
+v_dot8_u32_u4 v5, vcc_hi, 0xaf123456, v255
+// GFX13: v_dot8_u32_u4 v5, vcc_hi, 0xaf123456, v255 ; encoding: [0x05,0x40,0x19,0xcc,0x6b,0xfe,0xfd,0x1f,0x56,0x34,0x12,0xaf]
+
+v_dot8_u32_u4 v5, vcc_lo, ttmp15, v3
+// GFX13: v_dot8_u32_u4 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x40,0x19,0xcc,0x6a,0xf6,0x0c,0x1c]
+
+v_fma_mix_f32 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] op_sel_hi:[0,0,0] clamp
+// GFX13: v_fma_mix_f32 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] clamp ; encoding: [0xff,0xa3,0x20,0xcc,0xfd,0xd6,0xf0,0x61]
+
+v_fma_mix_f32 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0]
+// GFX13: v_fma_mix_f32 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0] ; encoding: [0x05,0x0a,0x20,0xcc,0xc1,0xfa,0x04,0x53]
+
+v_fma_mix_f32 v5, -m0, -1, |vcc_lo|
+// GFX13: v_fma_mix_f32 v5, -m0, -1, |vcc_lo| ; encoding: [0x05,0x04,0x20,0xcc,0x7d,0x82,0xa9,0x21]
+
+v_fma_mix_f32 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1]
+// GFX13: v_fma_mix_f32 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1] ; encoding: [0x05,0x7f,0x20,0xcc,0x7f,0xfc,0xf8,0xf9]
+
+v_fma_mix_f32 v5, -|exec_lo|, null, -|src_scc|
+// GFX13: v_fma_mix_f32 v5, -|exec_lo|, null, -|src_scc| ; encoding: [0x05,0x05,0x20,0xcc,0x7e,0xf8,0xf4,0xa3]
+
+v_fma_mix_f32 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0]
+// GFX13: v_fma_mix_f32 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0] ; encoding: [0x05,0x16,0x20,0xcc,0xf0,0xd4,0xfc,0xc9]
+
+v_fma_mix_f32 v5, null, exec_hi, 0.5 op_sel:[0,0,0] op_sel_hi:[0,0,1]
+// GFX13: v_fma_mix_f32 v5, null, exec_hi, 0.5 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x20,0xcc,0x7c,0xfe,0xc0,0x03]
+
+v_fma_mix_f32 v5, s1, s2, v3
+// GFX13: v_fma_mix_f32 v5, s1, s2, v3 ; encoding: [0x05,0x00,0x20,0xcc,0x01,0x04,0x0c,0x04]
+
+v_fma_mix_f32 v5, s105, s105, m0
+// GFX13: v_fma_mix_f32 v5, s105, s105, m0 ; encoding: [0x05,0x00,0x20,0xcc,0x69,0xd2,0xf4,0x01]
+
+v_fma_mix_f32 v5, v1, v2, s3
+// GFX13: v_fma_mix_f32 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x20,0xcc,0x01,0x05,0x0e,0x00]
+
+v_fma_mix_f32 v5, v255, v255, s105
+// GFX13: v_fma_mix_f32 v5, v255, v255, s105 ; encoding: [0x05,0x00,0x20,0xcc,0xff,0xff,0xa7,0x01]
+
+v_fma_mix_f32 v5, vcc_hi, src_scc, v255
+// GFX13: v_fma_mix_f32 v5, vcc_hi, src_scc, v255 ; encoding: [0x05,0x00,0x20,0xcc,0x6b,0xfa,0xfd,0x07]
+
+v_fma_mix_f32 v5, vcc_lo, ttmp15, ttmp15
+// GFX13: v_fma_mix_f32 v5, vcc_lo, ttmp15, ttmp15 ; encoding: [0x05,0x00,0x20,0xcc,0x6a,0xf6,0xec,0x01]
+
+v_fma_mix_f32 v5, |ttmp15|, 0.5, -vcc_hi
+// GFX13: v_fma_mix_f32 v5, |ttmp15|, 0.5, -vcc_hi ; encoding: [0x05,0x01,0x20,0xcc,0x7b,0xe0,0xad,0x81]
+
+v_fma_mix_f32_bf16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] op_sel_hi:[0,0,0] clamp
+// GFX13: v_fma_mix_f32_bf16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] clamp ; encoding: [0xff,0xa3,0x3d,0xcc,0xfd,0xd6,0xf0,0x61]
+
+v_fma_mix_f32_bf16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0]
+// GFX13: v_fma_mix_f32_bf16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0] ; encoding: [0x05,0x0a,0x3d,0xcc,0xc1,0xfa,0x04,0x53]
+
+v_fma_mix_f32_bf16 v5, -m0, -1, |vcc_lo|
+// GFX13: v_fma_mix_f32_bf16 v5, -m0, -1, |vcc_lo| ; encoding: [0x05,0x04,0x3d,0xcc,0x7d,0x82,0xa9,0x21]
+
+v_fma_mix_f32_bf16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1]
+// GFX13: v_fma_mix_f32_bf16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1] ; encoding: [0x05,0x7f,0x3d,0xcc,0x7f,0xfc,0xf8,0xf9]
+
+v_fma_mix_f32_bf16 v5, -|exec_lo|, null, -|src_scc|
+// GFX13: v_fma_mix_f32_bf16 v5, -|exec_lo|, null, -|src_scc| ; encoding: [0x05,0x05,0x3d,0xcc,0x7e,0xf8,0xf4,0xa3]
+
+v_fma_mix_f32_bf16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0]
+// GFX13: v_fma_mix_f32_bf16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0] ; encoding: [0x05,0x16,0x3d,0xcc,0xf0,0xd4,0xfc,0xc9]
+
+v_fma_mix_f32_bf16 v5, null, exec_hi, 0.5 op_sel:[0,0,0] op_sel_hi:[0,0,1]
+// GFX13: v_fma_mix_f32_bf16 v5, null, exec_hi, 0.5 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x3d,0xcc,0x7c,0xfe,0xc0,0x03]
+
+v_fma_mix_f32_bf16 v5, s1, s2, v3
+// GFX13: v_fma_mix_f32_bf16 v5, s1, s2, v3 ; encoding: [0x05,0x00,0x3d,0xcc,0x01,0x04,0x0c,0x04]
+
+v_fma_mix_f32_bf16 v5, s105, s105, m0
+// GFX13: v_fma_mix_f32_bf16 v5, s105, s105, m0 ; encoding: [0x05,0x00,0x3d,0xcc,0x69,0xd2,0xf4,0x01]
+
+v_fma_mix_f32_bf16 v5, v1, v2, s3
+// GFX13: v_fma_mix_f32_bf16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x3d,0xcc,0x01,0x05,0x0e,0x00]
+
+v_fma_mix_f32_bf16 v5, v255, v255, s105
+// GFX13: v_fma_mix_f32_bf16 v5, v255, v255, s105 ; encoding: [0x05,0x00,0x3d,0xcc,0xff,0xff,0xa7,0x01]
+
+v_fma_mix_f32_bf16 v5, vcc_hi, src_scc, v255
+// GFX13: v_fma_mix_f32_bf16 v5, vcc_hi, src_scc, v255 ; encoding: [0x05,0x00,0x3d,0xcc,0x6b,0xfa,0xfd,0x07]
+
+v_fma_mix_f32_bf16 v5, vcc_lo, ttmp15, ttmp15
+// GFX13: v_fma_mix_f32_bf16 v5, vcc_lo, ttmp15, ttmp15 ; encoding: [0x05,0x00,0x3d,0xcc,0x6a,0xf6,0xec,0x01]
+
+v_fma_mix_f32_bf16 v5, |ttmp15|, 0.5, -vcc_hi
+// GFX13: v_fma_mix_f32_bf16 v5, |ttmp15|, 0.5, -vcc_hi ; encoding: [0x05,0x01,0x3d,0xcc,0x7b,0xe0,0xad,0x81]
+
+v_fma_mixhi_bf16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] op_sel_hi:[0,0,0] clamp
+// GFX13: v_fma_mixhi_bf16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] clamp ; encoding: [0xff,0xa3,0x3f,0xcc,0xfd,0xd6,0xf0,0x61]
+
+v_fma_mixhi_bf16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0]
+// GFX13: v_fma_mixhi_bf16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0] ; encoding: [0x05,0x0a,0x3f,0xcc,0xc1,0xfa,0x04,0x53]
+
+v_fma_mixhi_bf16 v5, -m0, -1, |vcc_lo|
+// GFX13: v_fma_mixhi_bf16 v5, -m0, -1, |vcc_lo| ; encoding: [0x05,0x04,0x3f,0xcc,0x7d,0x82,0xa9,0x21]
+
+v_fma_mixhi_bf16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1]
+// GFX13: v_fma_mixhi_bf16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1] ; encoding: [0x05,0x7f,0x3f,0xcc,0x7f,0xfc,0xf8,0xf9]
+
+v_fma_mixhi_bf16 v5, -|exec_lo|, null, -|src_scc|
+// GFX13: v_fma_mixhi_bf16 v5, -|exec_lo|, null, -|src_scc| ; encoding: [0x05,0x05,0x3f,0xcc,0x7e,0xf8,0xf4,0xa3]
+
+v_fma_mixhi_bf16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0]
+// GFX13: v_fma_mixhi_bf16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0] ; encoding: [0x05,0x16,0x3f,0xcc,0xf0,0xd4,0xfc,0xc9]
+
+v_fma_mixhi_bf16 v5, null, exec_hi, 0.5 op_sel:[0,0,0] op_sel_hi:[0,0,1]
+// GFX13: v_fma_mixhi_bf16 v5, null, exec_hi, 0.5 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x3f,0xcc,0x7c,0xfe,0xc0,0x03]
+
+v_fma_mixhi_bf16 v5, s1, s2, v3
+// GFX13: v_fma_mixhi_bf16 v5, s1, s2, v3 ; encoding: [0x05,0x00,0x3f,0xcc,0x01,0x04,0x0c,0x04]
+
+v_fma_mixhi_bf16 v5, s105, s105, m0
+// GFX13: v_fma_mixhi_bf16 v5, s105, s105, m0 ; encoding: [0x05,0x00,0x3f,0xcc,0x69,0xd2,0xf4,0x01]
+
+v_fma_mixhi_bf16 v5, v1, v2, s3
+// GFX13: v_fma_mixhi_bf16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x3f,0xcc,0x01,0x05,0x0e,0x00]
+
+v_fma_mixhi_bf16 v5, v255, v255, s105
+// GFX13: v_fma_mixhi_bf16 v5, v255, v255, s105 ; encoding: [0x05,0x00,0x3f,0xcc,0xff,0xff,0xa7,0x01]
+
+v_fma_mixhi_bf16 v5, vcc_hi, src_scc, v255
+// GFX13: v_fma_mixhi_bf16 v5, vcc_hi, src_scc, v255 ; encoding: [0x05,0x00,0x3f,0xcc,0x6b,0xfa,0xfd,0x07]
+
+v_fma_mixhi_bf16 v5, vcc_lo, ttmp15, ttmp15
+// GFX13: v_fma_mixhi_bf16 v5, vcc_lo, ttmp15, ttmp15 ; encoding: [0x05,0x00,0x3f,0xcc,0x6a,0xf6,0xec,0x01]
+
+v_fma_mixhi_bf16 v5, |ttmp15|, 0.5, -vcc_hi
+// GFX13: v_fma_mixhi_bf16 v5, |ttmp15|, 0.5, -vcc_hi ; encoding: [0x05,0x01,0x3f,0xcc,0x7b,0xe0,0xad,0x81]
+
+v_fma_mixhi_f16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] op_sel_hi:[0,0,0] clamp
+// GFX13: v_fma_mixhi_f16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] clamp ; encoding: [0xff,0xa3,0x22,0xcc,0xfd,0xd6,0xf0,0x61]
+
+v_fma_mixhi_f16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0]
+// GFX13: v_fma_mixhi_f16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0] ; encoding: [0x05,0x0a,0x22,0xcc,0xc1,0xfa,0x04,0x53]
+
+v_fma_mixhi_f16 v5, -m0, -1, |vcc_lo|
+// GFX13: v_fma_mixhi_f16 v5, -m0, -1, |vcc_lo| ; encoding: [0x05,0x04,0x22,0xcc,0x7d,0x82,0xa9,0x21]
+
+v_fma_mixhi_f16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1]
+// GFX13: v_fma_mixhi_f16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1] ; encoding: [0x05,0x7f,0x22,0xcc,0x7f,0xfc,0xf8,0xf9]
+
+v_fma_mixhi_f16 v5, -|exec_lo|, null, -|src_scc|
+// GFX13: v_fma_mixhi_f16 v5, -|exec_lo|, null, -|src_scc| ; encoding: [0x05,0x05,0x22,0xcc,0x7e,0xf8,0xf4,0xa3]
+
+v_fma_mixhi_f16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0]
+// GFX13: v_fma_mixhi_f16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0] ; encoding: [0x05,0x16,0x22,0xcc,0xf0,0xd4,0xfc,0xc9]
+
+v_fma_mixhi_f16 v5, null, exec_hi, 0.5 op_sel:[0,0,0] op_sel_hi:[0,0,1]
+// GFX13: v_fma_mixhi_f16 v5, null, exec_hi, 0.5 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x22,0xcc,0x7c,0xfe,0xc0,0x03]
+
+v_fma_mixhi_f16 v5, s1, s2, v3
+// GFX13: v_fma_mixhi_f16 v5, s1, s2, v3 ; encoding: [0x05,0x00,0x22,0xcc,0x01,0x04,0x0c,0x04]
+
+v_fma_mixhi_f16 v5, s105, s105, m0
+// GFX13: v_fma_mixhi_f16 v5, s105, s105, m0 ; encoding: [0x05,0x00,0x22,0xcc,0x69,0xd2,0xf4,0x01]
+
+v_fma_mixhi_f16 v5, v1, v2, s3
+// GFX13: v_fma_mixhi_f16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x22,0xcc,0x01,0x05,0x0e,0x00]
+
+v_fma_mixhi_f16 v5, v255, v255, s105
+// GFX13: v_fma_mixhi_f16 v5, v255, v255, s105 ; encoding: [0x05,0x00,0x22,0xcc,0xff,0xff,0xa7,0x01]
+
+v_fma_mixhi_f16 v5, vcc_hi, src_scc, v255
+// GFX13: v_fma_mixhi_f16 v5, vcc_hi, src_scc, v255 ; encoding: [0x05,0x00,0x22,0xcc,0x6b,0xfa,0xfd,0x07]
+
+v_fma_mixhi_f16 v5, vcc_lo, ttmp15, ttmp15
+// GFX13: v_fma_mixhi_f16 v5, vcc_lo, ttmp15, ttmp15 ; encoding: [0x05,0x00,0x22,0xcc,0x6a,0xf6,0xec,0x01]
+
+v_fma_mixhi_f16 v5, |ttmp15|, 0.5, -vcc_hi
+// GFX13: v_fma_mixhi_f16 v5, |ttmp15|, 0.5, -vcc_hi ; encoding: [0x05,0x01,0x22,0xcc,0x7b,0xe0,0xad,0x81]
+
+v_fma_mixlo_bf16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] op_sel_hi:[0,0,0] clamp
+// GFX13: v_fma_mixlo_bf16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] clamp ; encoding: [0xff,0xa3,0x3e,0xcc,0xfd,0xd6,0xf0,0x61]
+
+v_fma_mixlo_bf16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0]
+// GFX13: v_fma_mixlo_bf16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0] ; encoding: [0x05,0x0a,0x3e,0xcc,0xc1,0xfa,0x04,0x53]
+
+v_fma_mixlo_bf16 v5, -m0, -1, |vcc_lo|
+// GFX13: v_fma_mixlo_bf16 v5, -m0, -1, |vcc_lo| ; encoding: [0x05,0x04,0x3e,0xcc,0x7d,0x82,0xa9,0x21]
+
+v_fma_mixlo_bf16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1]
+// GFX13: v_fma_mixlo_bf16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1] ; encoding: [0x05,0x7f,0x3e,0xcc,0x7f,0xfc,0xf8,0xf9]
+
+v_fma_mixlo_bf16 v5, -|exec_lo|, null, -|src_scc|
+// GFX13: v_fma_mixlo_bf16 v5, -|exec_lo|, null, -|src_scc| ; encoding: [0x05,0x05,0x3e,0xcc,0x7e,0xf8,0xf4,0xa3]
+
+v_fma_mixlo_bf16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0]
+// GFX13: v_fma_mixlo_bf16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0] ; encoding: [0x05,0x16,0x3e,0xcc,0xf0,0xd4,0xfc,0xc9]
+
+v_fma_mixlo_bf16 v5, null, exec_hi, 0.5 op_sel:[0,0,0] op_sel_hi:[0,0,1]
+// GFX13: v_fma_mixlo_bf16 v5, null, exec_hi, 0.5 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x3e,0xcc,0x7c,0xfe,0xc0,0x03]
+
+v_fma_mixlo_bf16 v5, s1, s2, v3
+// GFX13: v_fma_mixlo_bf16 v5, s1, s2, v3 ; encoding: [0x05,0x00,0x3e,0xcc,0x01,0x04,0x0c,0x04]
+
+v_fma_mixlo_bf16 v5, s105, s105, m0
+// GFX13: v_fma_mixlo_bf16 v5, s105, s105, m0 ; encoding: [0x05,0x00,0x3e,0xcc,0x69,0xd2,0xf4,0x01]
+
+v_fma_mixlo_bf16 v5, v1, v2, s3
+// GFX13: v_fma_mixlo_bf16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x3e,0xcc,0x01,0x05,0x0e,0x00]
+
+v_fma_mixlo_bf16 v5, v255, v255, s105
+// GFX13: v_fma_mixlo_bf16 v5, v255, v255, s105 ; encoding: [0x05,0x00,0x3e,0xcc,0xff,0xff,0xa7,0x01]
+
+v_fma_mixlo_bf16 v5, vcc_hi, src_scc, v255
+// GFX13: v_fma_mixlo_bf16 v5, vcc_hi, src_scc, v255 ; encoding: [0x05,0x00,0x3e,0xcc,0x6b,0xfa,0xfd,0x07]
+
+v_fma_mixlo_bf16 v5, vcc_lo, ttmp15, ttmp15
+// GFX13: v_fma_mixlo_bf16 v5, vcc_lo, ttmp15, ttmp15 ; encoding: [0x05,0x00,0x3e,0xcc,0x6a,0xf6,0xec,0x01]
+
+v_fma_mixlo_bf16 v5, |ttmp15|, 0.5, -vcc_hi
+// GFX13: v_fma_mixlo_bf16 v5, |ttmp15|, 0.5, -vcc_hi ; encoding: [0x05,0x01,0x3e,0xcc,0x7b,0xe0,0xad,0x81]
+
+v_fma_mixlo_f16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] op_sel_hi:[0,0,0] clamp
+// GFX13: v_fma_mixlo_f16 v255, -|src_scc|, -|vcc_hi|, null op_sel:[0,0,1] clamp ; encoding: [0xff,0xa3,0x21,0xcc,0xfd,0xd6,0xf0,0x61]
+
+v_fma_mixlo_f16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0]
+// GFX13: v_fma_mixlo_f16 v5, -1, -|m0|, -1 op_sel:[1,0,0] op_sel_hi:[0,1,0] ; encoding: [0x05,0x0a,0x21,0xcc,0xc1,0xfa,0x04,0x53]
+
+v_fma_mixlo_f16 v5, -m0, -1, |vcc_lo|
+// GFX13: v_fma_mixlo_f16 v5, -m0, -1, |vcc_lo| ; encoding: [0x05,0x04,0x21,0xcc,0x7d,0x82,0xa9,0x21]
+
+v_fma_mixlo_f16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1]
+// GFX13: v_fma_mixlo_f16 v5, -|exec_hi|, -|exec_lo|, -|exec_lo| op_sel:[1,1,1] op_sel_hi:[1,1,1] ; encoding: [0x05,0x7f,0x21,0xcc,0x7f,0xfc,0xf8,0xf9]
+
+v_fma_mixlo_f16 v5, -|exec_lo|, null, -|src_scc|
+// GFX13: v_fma_mixlo_f16 v5, -|exec_lo|, null, -|src_scc| ; encoding: [0x05,0x05,0x21,0xcc,0x7e,0xf8,0xf4,0xa3]
+
+v_fma_mixlo_f16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0]
+// GFX13: v_fma_mixlo_f16 v5, 0.5, -|vcc_lo|, -|exec_hi| op_sel:[0,1,0] op_sel_hi:[1,0,0] ; encoding: [0x05,0x16,0x21,0xcc,0xf0,0xd4,0xfc,0xc9]
+
+v_fma_mixlo_f16 v5, null, exec_hi, 0.5 op_sel:[0,0,0] op_sel_hi:[0,0,1]
+// GFX13: v_fma_mixlo_f16 v5, null, exec_hi, 0.5 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x21,0xcc,0x7c,0xfe,0xc0,0x03]
+
+v_fma_mixlo_f16 v5, s1, s2, v3
+// GFX13: v_fma_mixlo_f16 v5, s1, s2, v3 ; encoding: [0x05,0x00,0x21,0xcc,0x01,0x04,0x0c,0x04]
+
+v_fma_mixlo_f16 v5, s105, s105, m0
+// GFX13: v_fma_mixlo_f16 v5, s105, s105, m0 ; encoding: [0x05,0x00,0x21,0xcc,0x69,0xd2,0xf4,0x01]
+
+v_fma_mixlo_f16 v5, v1, v2, s3
+// GFX13: v_fma_mixlo_f16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x21,0xcc,0x01,0x05,0x0e,0x00]
+
+v_fma_mixlo_f16 v5, v255, v255, s105
+// GFX13: v_fma_mixlo_f16 v5, v255, v255, s105 ; encoding: [0x05,0x00,0x21,0xcc,0xff,0xff,0xa7,0x01]
+
+v_fma_mixlo_f16 v5, vcc_hi, src_scc, v255
+// GFX13: v_fma_mixlo_f16 v5, vcc_hi, src_scc, v255 ; encoding: [0x05,0x00,0x21,0xcc,0x6b,0xfa,0xfd,0x07]
+
+v_fma_mixlo_f16 v5, vcc_lo, ttmp15, ttmp15
+// GFX13: v_fma_mixlo_f16 v5, vcc_lo, ttmp15, ttmp15 ; encoding: [0x05,0x00,0x21,0xcc,0x6a,0xf6,0xec,0x01]
+
+v_fma_mixlo_f16 v5, |ttmp15|, 0.5, -vcc_hi
+// GFX13: v_fma_mixlo_f16 v5, |ttmp15|, 0.5, -vcc_hi ; encoding: [0x05,0x01,0x21,0xcc,0x7b,0xe0,0xad,0x81]
+
+v_pk_add_bf16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_add_bf16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x23,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_add_bf16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_add_bf16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x23,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_add_bf16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_add_bf16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x23,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_add_bf16 v5, exec_hi, null
+// GFX13: v_pk_add_bf16 v5, exec_hi, null ; encoding: [0x05,0x40,0x23,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_add_bf16 v5, exec_lo, -1
+// GFX13: v_pk_add_bf16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x23,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_add_bf16 v5, m0, 0.5
+// GFX13: v_pk_add_bf16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x23,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_add_bf16 v5, null, exec_lo
+// GFX13: v_pk_add_bf16 v5, null, exec_lo ; encoding: [0x05,0x40,0x23,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_add_bf16 v5, s1, s2
+// GFX13: v_pk_add_bf16 v5, s1, s2 ; encoding: [0x05,0x40,0x23,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_add_bf16 v5, s105, s105
+// GFX13: v_pk_add_bf16 v5, s105, s105 ; encoding: [0x05,0x40,0x23,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_add_bf16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_add_bf16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x23,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_add_bf16 v5, ttmp15, src_scc
+// GFX13: v_pk_add_bf16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x23,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_add_bf16 v5, v1, v2
+// GFX13: v_pk_add_bf16 v5, v1, v2 ; encoding: [0x05,0x40,0x23,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_add_bf16 v5, v255, v255
+// GFX13: v_pk_add_bf16 v5, v255, v255 ; encoding: [0x05,0x40,0x23,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_add_bf16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_add_bf16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x23,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_add_bf16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_add_bf16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x23,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_add_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_add_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x0f,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_add_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_add_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x0f,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_add_f16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_add_f16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x0f,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_add_f16 v5, exec_hi, null
+// GFX13: v_pk_add_f16 v5, exec_hi, null ; encoding: [0x05,0x40,0x0f,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_add_f16 v5, exec_lo, -1
+// GFX13: v_pk_add_f16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x0f,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_add_f16 v5, m0, 0.5
+// GFX13: v_pk_add_f16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x0f,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_add_f16 v5, null, exec_lo
+// GFX13: v_pk_add_f16 v5, null, exec_lo ; encoding: [0x05,0x40,0x0f,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_add_f16 v5, s1, s2
+// GFX13: v_pk_add_f16 v5, s1, s2 ; encoding: [0x05,0x40,0x0f,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_add_f16 v5, s105, s105
+// GFX13: v_pk_add_f16 v5, s105, s105 ; encoding: [0x05,0x40,0x0f,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_add_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_add_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x0f,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_add_f16 v5, ttmp15, src_scc
+// GFX13: v_pk_add_f16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x0f,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_add_f16 v5, v1, v2
+// GFX13: v_pk_add_f16 v5, v1, v2 ; encoding: [0x05,0x40,0x0f,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_add_f16 v5, v255, v255
+// GFX13: v_pk_add_f16 v5, v255, v255 ; encoding: [0x05,0x40,0x0f,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_add_f16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_add_f16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x0f,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_add_f16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_add_f16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x0f,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_add_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] clamp
+// GFX13: v_pk_add_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] clamp ; encoding: [0xff,0xd0,0x02,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_add_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_add_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x02,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_add_i16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_add_i16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x02,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_add_i16 v5, exec_hi, null
+// GFX13: v_pk_add_i16 v5, exec_hi, null ; encoding: [0x05,0x40,0x02,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_add_i16 v5, exec_lo, -1
+// GFX13: v_pk_add_i16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x02,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_add_i16 v5, m0, 0.5
+// GFX13: v_pk_add_i16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x02,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_add_i16 v5, null, exec_lo
+// GFX13: v_pk_add_i16 v5, null, exec_lo ; encoding: [0x05,0x40,0x02,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_add_i16 v5, s1, s2
+// GFX13: v_pk_add_i16 v5, s1, s2 ; encoding: [0x05,0x40,0x02,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_add_i16 v5, s105, s105
+// GFX13: v_pk_add_i16 v5, s105, s105 ; encoding: [0x05,0x40,0x02,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_add_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_add_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x02,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_add_i16 v5, ttmp15, src_scc
+// GFX13: v_pk_add_i16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x02,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_add_i16 v5, v1, v2
+// GFX13: v_pk_add_i16 v5, v1, v2 ; encoding: [0x05,0x40,0x02,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_add_i16 v5, v255, v255
+// GFX13: v_pk_add_i16 v5, v255, v255 ; encoding: [0x05,0x40,0x02,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_add_i16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_add_i16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x02,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_add_i16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_add_i16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x02,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_add_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] clamp
+// GFX13: v_pk_add_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] clamp ; encoding: [0xff,0xd0,0x0a,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_add_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_add_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x0a,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_add_u16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_add_u16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x0a,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_add_u16 v5, exec_hi, null
+// GFX13: v_pk_add_u16 v5, exec_hi, null ; encoding: [0x05,0x40,0x0a,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_add_u16 v5, exec_lo, -1
+// GFX13: v_pk_add_u16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x0a,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_add_u16 v5, m0, 0.5
+// GFX13: v_pk_add_u16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x0a,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_add_u16 v5, null, exec_lo
+// GFX13: v_pk_add_u16 v5, null, exec_lo ; encoding: [0x05,0x40,0x0a,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_add_u16 v5, s1, s2
+// GFX13: v_pk_add_u16 v5, s1, s2 ; encoding: [0x05,0x40,0x0a,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_add_u16 v5, s105, s105
+// GFX13: v_pk_add_u16 v5, s105, s105 ; encoding: [0x05,0x40,0x0a,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_add_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_add_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x0a,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_add_u16 v5, ttmp15, src_scc
+// GFX13: v_pk_add_u16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x0a,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_add_u16 v5, v1, v2
+// GFX13: v_pk_add_u16 v5, v1, v2 ; encoding: [0x05,0x40,0x0a,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_add_u16 v5, v255, v255
+// GFX13: v_pk_add_u16 v5, v255, v255 ; encoding: [0x05,0x40,0x0a,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_add_u16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_add_u16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x0a,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_add_u16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_add_u16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x0a,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_ashrrev_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0]
+// GFX13: v_pk_ashrrev_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] ; encoding: [0xff,0x50,0x06,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_ashrrev_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_ashrrev_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x06,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_ashrrev_i16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_ashrrev_i16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x06,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_ashrrev_i16 v5, exec_hi, null
+// GFX13: v_pk_ashrrev_i16 v5, exec_hi, null ; encoding: [0x05,0x40,0x06,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_ashrrev_i16 v5, exec_lo, -1
+// GFX13: v_pk_ashrrev_i16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x06,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_ashrrev_i16 v5, m0, 0.5
+// GFX13: v_pk_ashrrev_i16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x06,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_ashrrev_i16 v5, null, exec_lo
+// GFX13: v_pk_ashrrev_i16 v5, null, exec_lo ; encoding: [0x05,0x40,0x06,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_ashrrev_i16 v5, s1, s2
+// GFX13: v_pk_ashrrev_i16 v5, s1, s2 ; encoding: [0x05,0x40,0x06,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_ashrrev_i16 v5, s105, s105
+// GFX13: v_pk_ashrrev_i16 v5, s105, s105 ; encoding: [0x05,0x40,0x06,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_ashrrev_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_ashrrev_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x06,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_ashrrev_i16 v5, ttmp15, src_scc
+// GFX13: v_pk_ashrrev_i16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x06,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_ashrrev_i16 v5, v1, v2
+// GFX13: v_pk_ashrrev_i16 v5, v1, v2 ; encoding: [0x05,0x40,0x06,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_ashrrev_i16 v5, v255, v255
+// GFX13: v_pk_ashrrev_i16 v5, v255, v255 ; encoding: [0x05,0x40,0x06,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_ashrrev_i16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_ashrrev_i16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x06,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_ashrrev_i16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_ashrrev_i16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x06,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_fma_bf16 v255, 0xfe0b, vcc_hi, null op_sel:[0,0,1] op_sel_hi:[1,1,0] neg_lo:[1,1,1] neg_hi:[1,1,1] clamp
+// GFX13: v_pk_fma_bf16 v255, 0xfe0b, vcc_hi, null op_sel:[0,0,1] op_sel_hi:[1,1,0] neg_lo:[1,1,1] neg_hi:[1,1,1] clamp ; encoding: [0xff,0xa7,0x11,0xcc,0xff,0xd6,0xf0,0xf9,0x0b,0xfe,0x00,0x00]
+
+v_pk_fma_bf16 v5, -1, exec_hi, src_scc op_sel:[0,0,0] op_sel_hi:[1,1,1] neg_lo:[0,1,0] neg_hi:[0,1,0]
+// GFX13: v_pk_fma_bf16 v5, -1, exec_hi, src_scc neg_lo:[0,1,0] neg_hi:[0,1,0] ; encoding: [0x05,0x42,0x11,0xcc,0xc1,0xfe,0xf4,0x5b]
+
+v_pk_fma_bf16 v5, 0.5, m0, 0.5 op_sel:[1,0,0] op_sel_hi:[0,1,1] neg_lo:[0,0,1] neg_hi:[0,0,1]
+// GFX13: v_pk_fma_bf16 v5, 0.5, m0, 0.5 op_sel:[1,0,0] op_sel_hi:[0,1,1] neg_lo:[0,0,1] neg_hi:[0,0,1] ; encoding: [0x05,0x4c,0x11,0xcc,0xf0,0xfa,0xc0,0x93]
+
+v_pk_fma_bf16 v5, exec_hi, null, vcc_lo op_sel_hi:[0,1,0]
+// GFX13: v_pk_fma_bf16 v5, exec_hi, null, vcc_lo op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0x11,0xcc,0x7f,0xf8,0xa8,0x11]
+
+v_pk_fma_bf16 v5, exec_lo, -1, vcc_hi op_sel_hi:[0,0,1]
+// GFX13: v_pk_fma_bf16 v5, exec_lo, -1, vcc_hi op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x11,0xcc,0x7e,0x82,0xad,0x01]
+
+v_pk_fma_bf16 v5, m0, 0.5, m0 op_sel_hi:[0,0,0]
+// GFX13: v_pk_fma_bf16 v5, m0, 0.5, m0 op_sel_hi:[0,0,0] ; encoding: [0x05,0x00,0x11,0xcc,0x7d,0xe0,0xf5,0x01]
+
+v_pk_fma_bf16 v5, null, exec_lo, 0xfe0b op_sel:[1,1,1] op_sel_hi:[1,0,0] neg_lo:[1,0,0] neg_hi:[1,0,0]
+// GFX13: v_pk_fma_bf16 v5, null, exec_lo, 0xfe0b op_sel:[1,1,1] op_sel_hi:[1,0,0] neg_lo:[1,0,0] neg_hi:[1,0,0] ; encoding: [0x05,0x39,0x11,0xcc,0x7c,0xfc,0xfc,0x2b,0x0b,0xfe,0x00,0x00]
+
+v_pk_fma_bf16 v5, s1, v255, exec_hi
+// GFX13: v_pk_fma_bf16 v5, s1, v255, exec_hi ; encoding: [0x05,0x40,0x11,0xcc,0x01,0xfe,0xff,0x19]
+
+v_pk_fma_bf16 v5, s105, s105, exec_lo
+// GFX13: v_pk_fma_bf16 v5, s105, s105, exec_lo ; encoding: [0x05,0x40,0x11,0xcc,0x69,0xd2,0xf8,0x19]
+
+v_pk_fma_bf16 v5, src_scc, vcc_lo, -1 op_sel:[0,1,0] op_sel_hi:[1,0,1] neg_lo:[0,0,0] neg_hi:[0,0,0]
+// GFX13: v_pk_fma_bf16 v5, src_scc, vcc_lo, -1 op_sel:[0,1,0] op_sel_hi:[1,0,1] ; encoding: [0x05,0x50,0x11,0xcc,0xfd,0xd4,0x04,0x0b]
+
+v_pk_fma_bf16 v5, ttmp15, src_scc, ttmp15
+// GFX13: v_pk_fma_bf16 v5, ttmp15, src_scc, ttmp15 ; encoding: [0x05,0x40,0x11,0xcc,0x7b,0xfa,0xed,0x19]
+
+v_pk_fma_bf16 v5, v1, v2, s3
+// GFX13: v_pk_fma_bf16 v5, v1, v2, s3 ; encoding: [0x05,0x40,0x11,0xcc,0x01,0x05,0x0e,0x18]
+
+v_pk_fma_bf16 v5, v255, s2, s105
+// GFX13: v_pk_fma_bf16 v5, v255, s2, s105 ; encoding: [0x05,0x40,0x11,0xcc,0xff,0x05,0xa4,0x19]
+
+v_pk_fma_bf16 v5, vcc_hi, 0xfe0b, v255
+// GFX13: v_pk_fma_bf16 v5, vcc_hi, 0xfe0b, v255 ; encoding: [0x05,0x40,0x11,0xcc,0x6b,0xfe,0xfd,0x1f,0x0b,0xfe,0x00,0x00]
+
+v_pk_fma_bf16 v5, vcc_lo, ttmp15, v3
+// GFX13: v_pk_fma_bf16 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x40,0x11,0xcc,0x6a,0xf6,0x0c,0x1c]
+
+v_pk_fma_f16 v255, 0xfe0b, vcc_hi, null op_sel:[0,0,1] op_sel_hi:[1,1,0] neg_lo:[1,1,1] neg_hi:[1,1,1] clamp
+// GFX13: v_pk_fma_f16 v255, 0xfe0b, vcc_hi, null op_sel:[0,0,1] op_sel_hi:[1,1,0] neg_lo:[1,1,1] neg_hi:[1,1,1] clamp ; encoding: [0xff,0xa7,0x0e,0xcc,0xff,0xd6,0xf0,0xf9,0x0b,0xfe,0x00,0x00]
+
+v_pk_fma_f16 v5, -1, exec_hi, src_scc op_sel:[0,0,0] op_sel_hi:[1,1,1] neg_lo:[0,1,0] neg_hi:[0,1,0]
+// GFX13: v_pk_fma_f16 v5, -1, exec_hi, src_scc neg_lo:[0,1,0] neg_hi:[0,1,0] ; encoding: [0x05,0x42,0x0e,0xcc,0xc1,0xfe,0xf4,0x5b]
+
+v_pk_fma_f16 v5, 0.5, m0, 0.5 op_sel:[1,0,0] op_sel_hi:[0,1,1] neg_lo:[0,0,1] neg_hi:[0,0,1]
+// GFX13: v_pk_fma_f16 v5, 0.5, m0, 0.5 op_sel:[1,0,0] op_sel_hi:[0,1,1] neg_lo:[0,0,1] neg_hi:[0,0,1] ; encoding: [0x05,0x4c,0x0e,0xcc,0xf0,0xfa,0xc0,0x93]
+
+v_pk_fma_f16 v5, exec_hi, null, vcc_lo op_sel_hi:[0,1,0]
+// GFX13: v_pk_fma_f16 v5, exec_hi, null, vcc_lo op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0x0e,0xcc,0x7f,0xf8,0xa8,0x11]
+
+v_pk_fma_f16 v5, exec_lo, -1, vcc_hi op_sel_hi:[0,0,1]
+// GFX13: v_pk_fma_f16 v5, exec_lo, -1, vcc_hi op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x0e,0xcc,0x7e,0x82,0xad,0x01]
+
+v_pk_fma_f16 v5, m0, 0.5, m0 op_sel_hi:[0,0,0]
+// GFX13: v_pk_fma_f16 v5, m0, 0.5, m0 op_sel_hi:[0,0,0] ; encoding: [0x05,0x00,0x0e,0xcc,0x7d,0xe0,0xf5,0x01]
+
+v_pk_fma_f16 v5, null, exec_lo, 0xfe0b op_sel:[1,1,1] op_sel_hi:[1,0,0] neg_lo:[1,0,0] neg_hi:[1,0,0]
+// GFX13: v_pk_fma_f16 v5, null, exec_lo, 0xfe0b op_sel:[1,1,1] op_sel_hi:[1,0,0] neg_lo:[1,0,0] neg_hi:[1,0,0] ; encoding: [0x05,0x39,0x0e,0xcc,0x7c,0xfc,0xfc,0x2b,0x0b,0xfe,0x00,0x00]
+
+v_pk_fma_f16 v5, s1, v255, exec_hi
+// GFX13: v_pk_fma_f16 v5, s1, v255, exec_hi ; encoding: [0x05,0x40,0x0e,0xcc,0x01,0xfe,0xff,0x19]
+
+v_pk_fma_f16 v5, s105, s105, exec_lo
+// GFX13: v_pk_fma_f16 v5, s105, s105, exec_lo ; encoding: [0x05,0x40,0x0e,0xcc,0x69,0xd2,0xf8,0x19]
+
+v_pk_fma_f16 v5, src_scc, vcc_lo, -1 op_sel:[0,1,0] op_sel_hi:[1,0,1] neg_lo:[0,0,0] neg_hi:[0,0,0]
+// GFX13: v_pk_fma_f16 v5, src_scc, vcc_lo, -1 op_sel:[0,1,0] op_sel_hi:[1,0,1] ; encoding: [0x05,0x50,0x0e,0xcc,0xfd,0xd4,0x04,0x0b]
+
+v_pk_fma_f16 v5, ttmp15, src_scc, ttmp15
+// GFX13: v_pk_fma_f16 v5, ttmp15, src_scc, ttmp15 ; encoding: [0x05,0x40,0x0e,0xcc,0x7b,0xfa,0xed,0x19]
+
+v_pk_fma_f16 v5, v1, v2, s3
+// GFX13: v_pk_fma_f16 v5, v1, v2, s3 ; encoding: [0x05,0x40,0x0e,0xcc,0x01,0x05,0x0e,0x18]
+
+v_pk_fma_f16 v5, v255, s2, s105
+// GFX13: v_pk_fma_f16 v5, v255, s2, s105 ; encoding: [0x05,0x40,0x0e,0xcc,0xff,0x05,0xa4,0x19]
+
+v_pk_fma_f16 v5, vcc_hi, 0xfe0b, v255
+// GFX13: v_pk_fma_f16 v5, vcc_hi, 0xfe0b, v255 ; encoding: [0x05,0x40,0x0e,0xcc,0x6b,0xfe,0xfd,0x1f,0x0b,0xfe,0x00,0x00]
+
+v_pk_fma_f16 v5, vcc_lo, ttmp15, v3
+// GFX13: v_pk_fma_f16 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x40,0x0e,0xcc,0x6a,0xf6,0x0c,0x1c]
+
+v_pk_lshlrev_b16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0]
+// GFX13: v_pk_lshlrev_b16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] ; encoding: [0xff,0x50,0x04,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_lshlrev_b16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_lshlrev_b16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x04,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_lshlrev_b16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_lshlrev_b16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x04,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_lshlrev_b16 v5, 0x3800, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_lshlrev_b16 v5, 0x3800, m0 ; encoding: [0x05,0x40,0x04,0xcc,0xff,0xfa,0x00,0x1a,0x00,0x38,0x00,0x00]
+
+v_pk_lshlrev_b16 v5, exec_hi, null
+// GFX13: v_pk_lshlrev_b16 v5, exec_hi, null ; encoding: [0x05,0x40,0x04,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_lshlrev_b16 v5, exec_lo, -1
+// GFX13: v_pk_lshlrev_b16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x04,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_lshlrev_b16 v5, m0, 0.5
+// GFX13: v_pk_lshlrev_b16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x04,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_lshlrev_b16 v5, null, exec_lo
+// GFX13: v_pk_lshlrev_b16 v5, null, exec_lo ; encoding: [0x05,0x40,0x04,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_lshlrev_b16 v5, s1, s2
+// GFX13: v_pk_lshlrev_b16 v5, s1, s2 ; encoding: [0x05,0x40,0x04,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_lshlrev_b16 v5, s105, s105
+// GFX13: v_pk_lshlrev_b16 v5, s105, s105 ; encoding: [0x05,0x40,0x04,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_lshlrev_b16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_lshlrev_b16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x04,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_lshlrev_b16 v5, ttmp15, src_scc
+// GFX13: v_pk_lshlrev_b16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x04,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_lshlrev_b16 v5, v1, v2
+// GFX13: v_pk_lshlrev_b16 v5, v1, v2 ; encoding: [0x05,0x40,0x04,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_lshlrev_b16 v5, v255, v255
+// GFX13: v_pk_lshlrev_b16 v5, v255, v255 ; encoding: [0x05,0x40,0x04,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_lshlrev_b16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_lshlrev_b16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x04,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_lshlrev_b16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_lshlrev_b16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x04,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_lshrrev_b16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0]
+// GFX13: v_pk_lshrrev_b16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] ; encoding: [0xff,0x50,0x05,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_lshrrev_b16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_lshrrev_b16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x05,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_lshrrev_b16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_lshrrev_b16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x05,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_lshrrev_b16 v5, exec_hi, null
+// GFX13: v_pk_lshrrev_b16 v5, exec_hi, null ; encoding: [0x05,0x40,0x05,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_lshrrev_b16 v5, exec_lo, -1
+// GFX13: v_pk_lshrrev_b16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x05,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_lshrrev_b16 v5, m0, 0.5
+// GFX13: v_pk_lshrrev_b16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x05,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_lshrrev_b16 v5, null, exec_lo
+// GFX13: v_pk_lshrrev_b16 v5, null, exec_lo ; encoding: [0x05,0x40,0x05,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_lshrrev_b16 v5, s1, s2
+// GFX13: v_pk_lshrrev_b16 v5, s1, s2 ; encoding: [0x05,0x40,0x05,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_lshrrev_b16 v5, s105, s105
+// GFX13: v_pk_lshrrev_b16 v5, s105, s105 ; encoding: [0x05,0x40,0x05,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_lshrrev_b16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_lshrrev_b16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x05,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_lshrrev_b16 v5, ttmp15, src_scc
+// GFX13: v_pk_lshrrev_b16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x05,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_lshrrev_b16 v5, v1, v2
+// GFX13: v_pk_lshrrev_b16 v5, v1, v2 ; encoding: [0x05,0x40,0x05,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_lshrrev_b16 v5, v255, v255
+// GFX13: v_pk_lshrrev_b16 v5, v255, v255 ; encoding: [0x05,0x40,0x05,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_lshrrev_b16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_lshrrev_b16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x05,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_lshrrev_b16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_lshrrev_b16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x05,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_mad_i16 v255, 0xfe0b, vcc_hi, null op_sel:[0,0,1] op_sel_hi:[1,1,0] clamp
+// GFX13: v_pk_mad_i16 v255, 0xfe0b, vcc_hi, null op_sel:[0,0,1] op_sel_hi:[1,1,0] clamp ; encoding: [0xff,0xa0,0x00,0xcc,0xff,0xd6,0xf0,0x19,0x0b,0xfe,0x00,0x00]
+
+v_pk_mad_i16 v5, -1, exec_hi, src_scc op_sel:[0,0,0] op_sel_hi:[1,1,1]
+// GFX13: v_pk_mad_i16 v5, -1, exec_hi, src_scc ; encoding: [0x05,0x40,0x00,0xcc,0xc1,0xfe,0xf4,0x1b]
+
+v_pk_mad_i16 v5, 0.5, m0, 0.5 op_sel:[1,0,0] op_sel_hi:[0,1,1]
+// GFX13: v_pk_mad_i16 v5, 0.5, m0, 0.5 op_sel:[1,0,0] op_sel_hi:[0,1,1] ; encoding: [0x05,0x48,0x00,0xcc,0xf0,0xfa,0xc0,0x13]
+
+v_pk_mad_i16 v5, exec_hi, null, vcc_lo op_sel_hi:[0,1,0]
+// GFX13: v_pk_mad_i16 v5, exec_hi, null, vcc_lo op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0x00,0xcc,0x7f,0xf8,0xa8,0x11]
+
+v_pk_mad_i16 v5, exec_lo, -1, vcc_hi op_sel_hi:[0,0,1]
+// GFX13: v_pk_mad_i16 v5, exec_lo, -1, vcc_hi op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x00,0xcc,0x7e,0x82,0xad,0x01]
+
+v_pk_mad_i16 v5, m0, 0.5, m0 op_sel_hi:[0,0,0]
+// GFX13: v_pk_mad_i16 v5, m0, 0.5, m0 op_sel_hi:[0,0,0] ; encoding: [0x05,0x00,0x00,0xcc,0x7d,0xe0,0xf5,0x01]
+
+v_pk_mad_i16 v5, null, exec_lo, 0xfe0b op_sel:[1,1,1] op_sel_hi:[1,0,0]
+// GFX13: v_pk_mad_i16 v5, null, exec_lo, 0xfe0b op_sel:[1,1,1] op_sel_hi:[1,0,0] ; encoding: [0x05,0x38,0x00,0xcc,0x7c,0xfc,0xfc,0x0b,0x0b,0xfe,0x00,0x00]
+
+v_pk_mad_i16 v5, s1, v255, exec_hi
+// GFX13: v_pk_mad_i16 v5, s1, v255, exec_hi ; encoding: [0x05,0x40,0x00,0xcc,0x01,0xfe,0xff,0x19]
+
+v_pk_mad_i16 v5, s105, s105, exec_lo
+// GFX13: v_pk_mad_i16 v5, s105, s105, exec_lo ; encoding: [0x05,0x40,0x00,0xcc,0x69,0xd2,0xf8,0x19]
+
+v_pk_mad_i16 v5, src_scc, vcc_lo, -1 op_sel:[0,1,0] op_sel_hi:[1,0,1]
+// GFX13: v_pk_mad_i16 v5, src_scc, vcc_lo, -1 op_sel:[0,1,0] op_sel_hi:[1,0,1] ; encoding: [0x05,0x50,0x00,0xcc,0xfd,0xd4,0x04,0x0b]
+
+v_pk_mad_i16 v5, ttmp15, src_scc, ttmp15
+// GFX13: v_pk_mad_i16 v5, ttmp15, src_scc, ttmp15 ; encoding: [0x05,0x40,0x00,0xcc,0x7b,0xfa,0xed,0x19]
+
+v_pk_mad_i16 v5, v1, v2, s3
+// GFX13: v_pk_mad_i16 v5, v1, v2, s3 ; encoding: [0x05,0x40,0x00,0xcc,0x01,0x05,0x0e,0x18]
+
+v_pk_mad_i16 v5, v255, s2, s105
+// GFX13: v_pk_mad_i16 v5, v255, s2, s105 ; encoding: [0x05,0x40,0x00,0xcc,0xff,0x05,0xa4,0x19]
+
+v_pk_mad_i16 v5, vcc_hi, 0xfe0b, v255
+// GFX13: v_pk_mad_i16 v5, vcc_hi, 0xfe0b, v255 ; encoding: [0x05,0x40,0x00,0xcc,0x6b,0xfe,0xfd,0x1f,0x0b,0xfe,0x00,0x00]
+
+v_pk_mad_i16 v5, vcc_lo, ttmp15, v3
+// GFX13: v_pk_mad_i16 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x40,0x00,0xcc,0x6a,0xf6,0x0c,0x1c]
+
+v_pk_mad_u16 v255, 0xfe0b, vcc_hi, null op_sel:[0,0,1] op_sel_hi:[1,1,0] clamp
+// GFX13: v_pk_mad_u16 v255, 0xfe0b, vcc_hi, null op_sel:[0,0,1] op_sel_hi:[1,1,0] clamp ; encoding: [0xff,0xa0,0x09,0xcc,0xff,0xd6,0xf0,0x19,0x0b,0xfe,0x00,0x00]
+
+v_pk_mad_u16 v5, -1, exec_hi, src_scc op_sel:[0,0,0] op_sel_hi:[1,1,1]
+// GFX13: v_pk_mad_u16 v5, -1, exec_hi, src_scc ; encoding: [0x05,0x40,0x09,0xcc,0xc1,0xfe,0xf4,0x1b]
+
+v_pk_mad_u16 v5, 0.5, m0, 0.5 op_sel:[1,0,0] op_sel_hi:[0,1,1]
+// GFX13: v_pk_mad_u16 v5, 0.5, m0, 0.5 op_sel:[1,0,0] op_sel_hi:[0,1,1] ; encoding: [0x05,0x48,0x09,0xcc,0xf0,0xfa,0xc0,0x13]
+
+v_pk_mad_u16 v5, exec_hi, null, vcc_lo op_sel_hi:[0,1,0]
+// GFX13: v_pk_mad_u16 v5, exec_hi, null, vcc_lo op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0x09,0xcc,0x7f,0xf8,0xa8,0x11]
+
+v_pk_mad_u16 v5, exec_lo, -1, vcc_hi op_sel_hi:[0,0,1]
+// GFX13: v_pk_mad_u16 v5, exec_lo, -1, vcc_hi op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0x09,0xcc,0x7e,0x82,0xad,0x01]
+
+v_pk_mad_u16 v5, m0, 0.5, m0 op_sel_hi:[0,0,0]
+// GFX13: v_pk_mad_u16 v5, m0, 0.5, m0 op_sel_hi:[0,0,0] ; encoding: [0x05,0x00,0x09,0xcc,0x7d,0xe0,0xf5,0x01]
+
+v_pk_mad_u16 v5, null, exec_lo, 0xfe0b op_sel:[1,1,1] op_sel_hi:[1,0,0]
+// GFX13: v_pk_mad_u16 v5, null, exec_lo, 0xfe0b op_sel:[1,1,1] op_sel_hi:[1,0,0] ; encoding: [0x05,0x38,0x09,0xcc,0x7c,0xfc,0xfc,0x0b,0x0b,0xfe,0x00,0x00]
+
+v_pk_mad_u16 v5, s1, v255, exec_hi
+// GFX13: v_pk_mad_u16 v5, s1, v255, exec_hi ; encoding: [0x05,0x40,0x09,0xcc,0x01,0xfe,0xff,0x19]
+
+v_pk_mad_u16 v5, s105, s105, exec_lo
+// GFX13: v_pk_mad_u16 v5, s105, s105, exec_lo ; encoding: [0x05,0x40,0x09,0xcc,0x69,0xd2,0xf8,0x19]
+
+v_pk_mad_u16 v5, src_scc, vcc_lo, -1 op_sel:[0,1,0] op_sel_hi:[1,0,1]
+// GFX13: v_pk_mad_u16 v5, src_scc, vcc_lo, -1 op_sel:[0,1,0] op_sel_hi:[1,0,1] ; encoding: [0x05,0x50,0x09,0xcc,0xfd,0xd4,0x04,0x0b]
+
+v_pk_mad_u16 v5, ttmp15, src_scc, ttmp15
+// GFX13: v_pk_mad_u16 v5, ttmp15, src_scc, ttmp15 ; encoding: [0x05,0x40,0x09,0xcc,0x7b,0xfa,0xed,0x19]
+
+v_pk_mad_u16 v5, v1, v2, s3
+// GFX13: v_pk_mad_u16 v5, v1, v2, s3 ; encoding: [0x05,0x40,0x09,0xcc,0x01,0x05,0x0e,0x18]
+
+v_pk_mad_u16 v5, v255, s2, s105
+// GFX13: v_pk_mad_u16 v5, v255, s2, s105 ; encoding: [0x05,0x40,0x09,0xcc,0xff,0x05,0xa4,0x19]
+
+v_pk_mad_u16 v5, vcc_hi, 0xfe0b, v255
+// GFX13: v_pk_mad_u16 v5, vcc_hi, 0xfe0b, v255 ; encoding: [0x05,0x40,0x09,0xcc,0x6b,0xfe,0xfd,0x1f,0x0b,0xfe,0x00,0x00]
+
+v_pk_mad_u16 v5, vcc_lo, ttmp15, v3
+// GFX13: v_pk_mad_u16 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x40,0x09,0xcc,0x6a,0xf6,0x0c,0x1c]
+
+v_pk_max_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0]
+// GFX13: v_pk_max_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] ; encoding: [0xff,0x50,0x07,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_max_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_max_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x07,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_max_i16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_max_i16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x07,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_max_i16 v5, exec_hi, null
+// GFX13: v_pk_max_i16 v5, exec_hi, null ; encoding: [0x05,0x40,0x07,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_max_i16 v5, exec_lo, -1
+// GFX13: v_pk_max_i16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x07,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_max_i16 v5, m0, 0.5
+// GFX13: v_pk_max_i16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x07,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_max_i16 v5, null, exec_lo
+// GFX13: v_pk_max_i16 v5, null, exec_lo ; encoding: [0x05,0x40,0x07,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_max_i16 v5, s1, s2
+// GFX13: v_pk_max_i16 v5, s1, s2 ; encoding: [0x05,0x40,0x07,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_max_i16 v5, s105, s105
+// GFX13: v_pk_max_i16 v5, s105, s105 ; encoding: [0x05,0x40,0x07,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_max_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_max_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x07,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_max_i16 v5, ttmp15, src_scc
+// GFX13: v_pk_max_i16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x07,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_max_i16 v5, v1, v2
+// GFX13: v_pk_max_i16 v5, v1, v2 ; encoding: [0x05,0x40,0x07,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_max_i16 v5, v255, v255
+// GFX13: v_pk_max_i16 v5, v255, v255 ; encoding: [0x05,0x40,0x07,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_max_i16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_max_i16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x07,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_max_i16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_max_i16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x07,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_max_num_bf16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_max_num_bf16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x2c,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_max_num_bf16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_max_num_bf16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x2c,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_max_num_bf16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_max_num_bf16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x2c,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_max_num_bf16 v5, exec_hi, null
+// GFX13: v_pk_max_num_bf16 v5, exec_hi, null ; encoding: [0x05,0x40,0x2c,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_max_num_bf16 v5, exec_lo, -1
+// GFX13: v_pk_max_num_bf16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x2c,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_max_num_bf16 v5, m0, 0.5
+// GFX13: v_pk_max_num_bf16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x2c,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_max_num_bf16 v5, null, exec_lo
+// GFX13: v_pk_max_num_bf16 v5, null, exec_lo ; encoding: [0x05,0x40,0x2c,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_max_num_bf16 v5, s1, s2
+// GFX13: v_pk_max_num_bf16 v5, s1, s2 ; encoding: [0x05,0x40,0x2c,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_max_num_bf16 v5, s105, s105
+// GFX13: v_pk_max_num_bf16 v5, s105, s105 ; encoding: [0x05,0x40,0x2c,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_max_num_bf16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_max_num_bf16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x2c,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_max_num_bf16 v5, ttmp15, src_scc
+// GFX13: v_pk_max_num_bf16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x2c,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_max_num_bf16 v5, v1, v2
+// GFX13: v_pk_max_num_bf16 v5, v1, v2 ; encoding: [0x05,0x40,0x2c,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_max_num_bf16 v5, v255, v255
+// GFX13: v_pk_max_num_bf16 v5, v255, v255 ; encoding: [0x05,0x40,0x2c,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_max_num_bf16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_max_num_bf16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x2c,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_max_num_bf16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_max_num_bf16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x2c,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_max_num_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_max_num_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x1c,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_max_num_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_max_num_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x1c,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_max_num_f16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_max_num_f16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x1c,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_max_num_f16 v5, exec_hi, null
+// GFX13: v_pk_max_num_f16 v5, exec_hi, null ; encoding: [0x05,0x40,0x1c,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_max_num_f16 v5, exec_lo, -1
+// GFX13: v_pk_max_num_f16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x1c,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_max_num_f16 v5, m0, 0.5
+// GFX13: v_pk_max_num_f16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x1c,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_max_num_f16 v5, null, exec_lo
+// GFX13: v_pk_max_num_f16 v5, null, exec_lo ; encoding: [0x05,0x40,0x1c,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_max_num_f16 v5, s1, s2
+// GFX13: v_pk_max_num_f16 v5, s1, s2 ; encoding: [0x05,0x40,0x1c,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_max_num_f16 v5, s105, s105
+// GFX13: v_pk_max_num_f16 v5, s105, s105 ; encoding: [0x05,0x40,0x1c,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_max_num_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_max_num_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x1c,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_max_num_f16 v5, ttmp15, src_scc
+// GFX13: v_pk_max_num_f16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x1c,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_max_num_f16 v5, v1, v2
+// GFX13: v_pk_max_num_f16 v5, v1, v2 ; encoding: [0x05,0x40,0x1c,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_max_num_f16 v5, v255, v255
+// GFX13: v_pk_max_num_f16 v5, v255, v255 ; encoding: [0x05,0x40,0x1c,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_max_num_f16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_max_num_f16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x1c,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_max_num_f16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_max_num_f16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x1c,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_max_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0]
+// GFX13: v_pk_max_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] ; encoding: [0xff,0x50,0x0c,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_max_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_max_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x0c,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_max_u16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_max_u16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x0c,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_max_u16 v5, exec_hi, null
+// GFX13: v_pk_max_u16 v5, exec_hi, null ; encoding: [0x05,0x40,0x0c,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_max_u16 v5, exec_lo, -1
+// GFX13: v_pk_max_u16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x0c,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_max_u16 v5, m0, 0.5
+// GFX13: v_pk_max_u16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x0c,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_max_u16 v5, null, exec_lo
+// GFX13: v_pk_max_u16 v5, null, exec_lo ; encoding: [0x05,0x40,0x0c,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_max_u16 v5, s1, s2
+// GFX13: v_pk_max_u16 v5, s1, s2 ; encoding: [0x05,0x40,0x0c,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_max_u16 v5, s105, s105
+// GFX13: v_pk_max_u16 v5, s105, s105 ; encoding: [0x05,0x40,0x0c,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_max_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_max_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x0c,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_max_u16 v5, ttmp15, src_scc
+// GFX13: v_pk_max_u16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x0c,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_max_u16 v5, v1, v2
+// GFX13: v_pk_max_u16 v5, v1, v2 ; encoding: [0x05,0x40,0x0c,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_max_u16 v5, v255, v255
+// GFX13: v_pk_max_u16 v5, v255, v255 ; encoding: [0x05,0x40,0x0c,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_max_u16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_max_u16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x0c,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_max_u16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_max_u16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x0c,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_maximum_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_maximum_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x1e,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_maximum_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_maximum_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x1e,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_maximum_f16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_maximum_f16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x1e,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_maximum_f16 v5, exec_hi, null
+// GFX13: v_pk_maximum_f16 v5, exec_hi, null ; encoding: [0x05,0x40,0x1e,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_maximum_f16 v5, exec_lo, -1
+// GFX13: v_pk_maximum_f16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x1e,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_maximum_f16 v5, m0, 0.5
+// GFX13: v_pk_maximum_f16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x1e,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_maximum_f16 v5, null, exec_lo
+// GFX13: v_pk_maximum_f16 v5, null, exec_lo ; encoding: [0x05,0x40,0x1e,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_maximum_f16 v5, s1, s2
+// GFX13: v_pk_maximum_f16 v5, s1, s2 ; encoding: [0x05,0x40,0x1e,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_maximum_f16 v5, s105, s105
+// GFX13: v_pk_maximum_f16 v5, s105, s105 ; encoding: [0x05,0x40,0x1e,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_maximum_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_maximum_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x1e,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_maximum_f16 v5, ttmp15, src_scc
+// GFX13: v_pk_maximum_f16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x1e,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_maximum_f16 v5, v1, v2
+// GFX13: v_pk_maximum_f16 v5, v1, v2 ; encoding: [0x05,0x40,0x1e,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_maximum_f16 v5, v255, v255
+// GFX13: v_pk_maximum_f16 v5, v255, v255 ; encoding: [0x05,0x40,0x1e,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_maximum_f16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_maximum_f16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x1e,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_maximum_f16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_maximum_f16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x1e,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_min_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0]
+// GFX13: v_pk_min_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] ; encoding: [0xff,0x50,0x08,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_min_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_min_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x08,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_min_i16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_min_i16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x08,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_min_i16 v5, exec_hi, null
+// GFX13: v_pk_min_i16 v5, exec_hi, null ; encoding: [0x05,0x40,0x08,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_min_i16 v5, exec_lo, -1
+// GFX13: v_pk_min_i16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x08,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_min_i16 v5, m0, 0.5
+// GFX13: v_pk_min_i16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x08,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_min_i16 v5, null, exec_lo
+// GFX13: v_pk_min_i16 v5, null, exec_lo ; encoding: [0x05,0x40,0x08,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_min_i16 v5, s1, s2
+// GFX13: v_pk_min_i16 v5, s1, s2 ; encoding: [0x05,0x40,0x08,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_min_i16 v5, s105, s105
+// GFX13: v_pk_min_i16 v5, s105, s105 ; encoding: [0x05,0x40,0x08,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_min_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_min_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x08,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_min_i16 v5, ttmp15, src_scc
+// GFX13: v_pk_min_i16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x08,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_min_i16 v5, v1, v2
+// GFX13: v_pk_min_i16 v5, v1, v2 ; encoding: [0x05,0x40,0x08,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_min_i16 v5, v255, v255
+// GFX13: v_pk_min_i16 v5, v255, v255 ; encoding: [0x05,0x40,0x08,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_min_i16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_min_i16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x08,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_min_i16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_min_i16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x08,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_min_num_bf16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_min_num_bf16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x2b,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_min_num_bf16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_min_num_bf16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x2b,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_min_num_bf16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_min_num_bf16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x2b,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_min_num_bf16 v5, exec_hi, null
+// GFX13: v_pk_min_num_bf16 v5, exec_hi, null ; encoding: [0x05,0x40,0x2b,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_min_num_bf16 v5, exec_lo, -1
+// GFX13: v_pk_min_num_bf16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x2b,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_min_num_bf16 v5, m0, 0.5
+// GFX13: v_pk_min_num_bf16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x2b,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_min_num_bf16 v5, null, exec_lo
+// GFX13: v_pk_min_num_bf16 v5, null, exec_lo ; encoding: [0x05,0x40,0x2b,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_min_num_bf16 v5, s1, s2
+// GFX13: v_pk_min_num_bf16 v5, s1, s2 ; encoding: [0x05,0x40,0x2b,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_min_num_bf16 v5, s105, s105
+// GFX13: v_pk_min_num_bf16 v5, s105, s105 ; encoding: [0x05,0x40,0x2b,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_min_num_bf16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_min_num_bf16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x2b,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_min_num_bf16 v5, ttmp15, src_scc
+// GFX13: v_pk_min_num_bf16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x2b,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_min_num_bf16 v5, v1, v2
+// GFX13: v_pk_min_num_bf16 v5, v1, v2 ; encoding: [0x05,0x40,0x2b,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_min_num_bf16 v5, v255, v255
+// GFX13: v_pk_min_num_bf16 v5, v255, v255 ; encoding: [0x05,0x40,0x2b,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_min_num_bf16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_min_num_bf16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x2b,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_min_num_bf16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_min_num_bf16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x2b,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_min_num_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_min_num_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x1b,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_min_num_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_min_num_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x1b,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_min_num_f16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_min_num_f16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x1b,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_min_num_f16 v5, exec_hi, null
+// GFX13: v_pk_min_num_f16 v5, exec_hi, null ; encoding: [0x05,0x40,0x1b,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_min_num_f16 v5, exec_lo, -1
+// GFX13: v_pk_min_num_f16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x1b,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_min_num_f16 v5, m0, 0.5
+// GFX13: v_pk_min_num_f16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x1b,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_min_num_f16 v5, null, exec_lo
+// GFX13: v_pk_min_num_f16 v5, null, exec_lo ; encoding: [0x05,0x40,0x1b,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_min_num_f16 v5, s1, s2
+// GFX13: v_pk_min_num_f16 v5, s1, s2 ; encoding: [0x05,0x40,0x1b,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_min_num_f16 v5, s105, s105
+// GFX13: v_pk_min_num_f16 v5, s105, s105 ; encoding: [0x05,0x40,0x1b,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_min_num_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_min_num_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x1b,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_min_num_f16 v5, ttmp15, src_scc
+// GFX13: v_pk_min_num_f16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x1b,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_min_num_f16 v5, v1, v2
+// GFX13: v_pk_min_num_f16 v5, v1, v2 ; encoding: [0x05,0x40,0x1b,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_min_num_f16 v5, v255, v255
+// GFX13: v_pk_min_num_f16 v5, v255, v255 ; encoding: [0x05,0x40,0x1b,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_min_num_f16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_min_num_f16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x1b,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_min_num_f16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_min_num_f16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x1b,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_min_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0]
+// GFX13: v_pk_min_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] ; encoding: [0xff,0x50,0x0d,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_min_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_min_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x0d,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_min_u16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_min_u16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x0d,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_min_u16 v5, exec_hi, null
+// GFX13: v_pk_min_u16 v5, exec_hi, null ; encoding: [0x05,0x40,0x0d,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_min_u16 v5, exec_lo, -1
+// GFX13: v_pk_min_u16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x0d,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_min_u16 v5, m0, 0.5
+// GFX13: v_pk_min_u16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x0d,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_min_u16 v5, null, exec_lo
+// GFX13: v_pk_min_u16 v5, null, exec_lo ; encoding: [0x05,0x40,0x0d,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_min_u16 v5, s1, s2
+// GFX13: v_pk_min_u16 v5, s1, s2 ; encoding: [0x05,0x40,0x0d,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_min_u16 v5, s105, s105
+// GFX13: v_pk_min_u16 v5, s105, s105 ; encoding: [0x05,0x40,0x0d,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_min_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_min_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x0d,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_min_u16 v5, ttmp15, src_scc
+// GFX13: v_pk_min_u16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x0d,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_min_u16 v5, v1, v2
+// GFX13: v_pk_min_u16 v5, v1, v2 ; encoding: [0x05,0x40,0x0d,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_min_u16 v5, v255, v255
+// GFX13: v_pk_min_u16 v5, v255, v255 ; encoding: [0x05,0x40,0x0d,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_min_u16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_min_u16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x0d,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_min_u16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_min_u16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x0d,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_minimum_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_minimum_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x1d,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_minimum_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_minimum_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x1d,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_minimum_f16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_minimum_f16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x1d,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_minimum_f16 v5, exec_hi, null
+// GFX13: v_pk_minimum_f16 v5, exec_hi, null ; encoding: [0x05,0x40,0x1d,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_minimum_f16 v5, exec_lo, -1
+// GFX13: v_pk_minimum_f16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x1d,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_minimum_f16 v5, m0, 0.5
+// GFX13: v_pk_minimum_f16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x1d,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_minimum_f16 v5, null, exec_lo
+// GFX13: v_pk_minimum_f16 v5, null, exec_lo ; encoding: [0x05,0x40,0x1d,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_minimum_f16 v5, s1, s2
+// GFX13: v_pk_minimum_f16 v5, s1, s2 ; encoding: [0x05,0x40,0x1d,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_minimum_f16 v5, s105, s105
+// GFX13: v_pk_minimum_f16 v5, s105, s105 ; encoding: [0x05,0x40,0x1d,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_minimum_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_minimum_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x1d,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_minimum_f16 v5, ttmp15, src_scc
+// GFX13: v_pk_minimum_f16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x1d,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_minimum_f16 v5, v1, v2
+// GFX13: v_pk_minimum_f16 v5, v1, v2 ; encoding: [0x05,0x40,0x1d,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_minimum_f16 v5, v255, v255
+// GFX13: v_pk_minimum_f16 v5, v255, v255 ; encoding: [0x05,0x40,0x1d,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_minimum_f16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_minimum_f16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x1d,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_minimum_f16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_minimum_f16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x1d,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_mul_bf16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_mul_bf16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x2a,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_mul_bf16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_mul_bf16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x2a,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_mul_bf16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_mul_bf16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x2a,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_mul_bf16 v5, exec_hi, null
+// GFX13: v_pk_mul_bf16 v5, exec_hi, null ; encoding: [0x05,0x40,0x2a,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_mul_bf16 v5, exec_lo, -1
+// GFX13: v_pk_mul_bf16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x2a,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_mul_bf16 v5, m0, 0.5
+// GFX13: v_pk_mul_bf16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x2a,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_mul_bf16 v5, null, exec_lo
+// GFX13: v_pk_mul_bf16 v5, null, exec_lo ; encoding: [0x05,0x40,0x2a,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_mul_bf16 v5, s1, s2
+// GFX13: v_pk_mul_bf16 v5, s1, s2 ; encoding: [0x05,0x40,0x2a,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_mul_bf16 v5, s105, s105
+// GFX13: v_pk_mul_bf16 v5, s105, s105 ; encoding: [0x05,0x40,0x2a,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_mul_bf16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_mul_bf16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x2a,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_mul_bf16 v5, ttmp15, src_scc
+// GFX13: v_pk_mul_bf16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x2a,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_mul_bf16 v5, v1, v2
+// GFX13: v_pk_mul_bf16 v5, v1, v2 ; encoding: [0x05,0x40,0x2a,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_mul_bf16 v5, v255, v255
+// GFX13: v_pk_mul_bf16 v5, v255, v255 ; encoding: [0x05,0x40,0x2a,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_mul_bf16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_mul_bf16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x2a,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_mul_bf16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_mul_bf16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x2a,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_mul_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp
+// GFX13: v_pk_mul_f16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] neg_lo:[1,1] neg_hi:[1,1] clamp ; encoding: [0xff,0xd3,0x10,0xcc,0xff,0xd6,0x00,0x6a,0x0b,0xfe,0x00,0x00]
+
+v_pk_mul_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0]
+// GFX13: v_pk_mul_f16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] neg_lo:[1,0] neg_hi:[1,0] ; encoding: [0x05,0x59,0x10,0xcc,0xc1,0xfe,0x00,0x22]
+
+v_pk_mul_f16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1] neg_lo:[0,1] neg_hi:[0,1]
+// GFX13: v_pk_mul_f16 v5, 0.5, m0 neg_lo:[0,1] neg_hi:[0,1] ; encoding: [0x05,0x42,0x10,0xcc,0xf0,0xfa,0x00,0x5a]
+
+v_pk_mul_f16 v5, exec_hi, null
+// GFX13: v_pk_mul_f16 v5, exec_hi, null ; encoding: [0x05,0x40,0x10,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_mul_f16 v5, exec_lo, -1
+// GFX13: v_pk_mul_f16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x10,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_mul_f16 v5, m0, 0.5
+// GFX13: v_pk_mul_f16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x10,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_mul_f16 v5, null, exec_lo
+// GFX13: v_pk_mul_f16 v5, null, exec_lo ; encoding: [0x05,0x40,0x10,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_mul_f16 v5, s1, s2
+// GFX13: v_pk_mul_f16 v5, s1, s2 ; encoding: [0x05,0x40,0x10,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_mul_f16 v5, s105, s105
+// GFX13: v_pk_mul_f16 v5, s105, s105 ; encoding: [0x05,0x40,0x10,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_mul_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] neg_lo:[0,0] neg_hi:[0,0]
+// GFX13: v_pk_mul_f16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x10,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_mul_f16 v5, ttmp15, src_scc
+// GFX13: v_pk_mul_f16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x10,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_mul_f16 v5, v1, v2
+// GFX13: v_pk_mul_f16 v5, v1, v2 ; encoding: [0x05,0x40,0x10,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_mul_f16 v5, v255, v255
+// GFX13: v_pk_mul_f16 v5, v255, v255 ; encoding: [0x05,0x40,0x10,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_mul_f16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_mul_f16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x10,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_mul_f16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_mul_f16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x10,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_mul_lo_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0]
+// GFX13: v_pk_mul_lo_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] ; encoding: [0xff,0x50,0x01,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_mul_lo_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_mul_lo_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x01,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_mul_lo_u16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_mul_lo_u16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x01,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_mul_lo_u16 v5, exec_hi, null
+// GFX13: v_pk_mul_lo_u16 v5, exec_hi, null ; encoding: [0x05,0x40,0x01,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_mul_lo_u16 v5, exec_lo, -1
+// GFX13: v_pk_mul_lo_u16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x01,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_mul_lo_u16 v5, m0, 0.5
+// GFX13: v_pk_mul_lo_u16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x01,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_mul_lo_u16 v5, null, exec_lo
+// GFX13: v_pk_mul_lo_u16 v5, null, exec_lo ; encoding: [0x05,0x40,0x01,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_mul_lo_u16 v5, s1, s2
+// GFX13: v_pk_mul_lo_u16 v5, s1, s2 ; encoding: [0x05,0x40,0x01,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_mul_lo_u16 v5, s105, s105
+// GFX13: v_pk_mul_lo_u16 v5, s105, s105 ; encoding: [0x05,0x40,0x01,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_mul_lo_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_mul_lo_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x01,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_mul_lo_u16 v5, ttmp15, src_scc
+// GFX13: v_pk_mul_lo_u16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x01,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_mul_lo_u16 v5, v1, v2
+// GFX13: v_pk_mul_lo_u16 v5, v1, v2 ; encoding: [0x05,0x40,0x01,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_mul_lo_u16 v5, v255, v255
+// GFX13: v_pk_mul_lo_u16 v5, v255, v255 ; encoding: [0x05,0x40,0x01,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_mul_lo_u16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_mul_lo_u16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x01,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_mul_lo_u16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_mul_lo_u16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x01,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_sub_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] clamp
+// GFX13: v_pk_sub_i16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] clamp ; encoding: [0xff,0xd0,0x03,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_sub_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_sub_i16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x03,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_sub_i16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_sub_i16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x03,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_sub_i16 v5, exec_hi, null
+// GFX13: v_pk_sub_i16 v5, exec_hi, null ; encoding: [0x05,0x40,0x03,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_sub_i16 v5, exec_lo, -1
+// GFX13: v_pk_sub_i16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x03,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_sub_i16 v5, m0, 0.5
+// GFX13: v_pk_sub_i16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x03,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_sub_i16 v5, null, exec_lo
+// GFX13: v_pk_sub_i16 v5, null, exec_lo ; encoding: [0x05,0x40,0x03,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_sub_i16 v5, s1, s2
+// GFX13: v_pk_sub_i16 v5, s1, s2 ; encoding: [0x05,0x40,0x03,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_sub_i16 v5, s105, s105
+// GFX13: v_pk_sub_i16 v5, s105, s105 ; encoding: [0x05,0x40,0x03,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_sub_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_sub_i16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x03,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_sub_i16 v5, ttmp15, src_scc
+// GFX13: v_pk_sub_i16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x03,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_sub_i16 v5, v1, v2
+// GFX13: v_pk_sub_i16 v5, v1, v2 ; encoding: [0x05,0x40,0x03,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_sub_i16 v5, v255, v255
+// GFX13: v_pk_sub_i16 v5, v255, v255 ; encoding: [0x05,0x40,0x03,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_sub_i16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_sub_i16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x03,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_sub_i16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_sub_i16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x03,0xcc,0x6a,0xf6,0x00,0x1a]
+
+v_pk_sub_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] clamp
+// GFX13: v_pk_sub_u16 v255, 0xfe0b, vcc_hi op_sel:[0,1] op_sel_hi:[1,0] clamp ; encoding: [0xff,0xd0,0x0b,0xcc,0xff,0xd6,0x00,0x0a,0x0b,0xfe,0x00,0x00]
+
+v_pk_sub_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0]
+// GFX13: v_pk_sub_u16 v5, -1, exec_hi op_sel:[1,1] op_sel_hi:[0,0] ; encoding: [0x05,0x58,0x0b,0xcc,0xc1,0xfe,0x00,0x02]
+
+v_pk_sub_u16 v5, 0.5, m0 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_sub_u16 v5, 0.5, m0 ; encoding: [0x05,0x40,0x0b,0xcc,0xf0,0xfa,0x00,0x1a]
+
+v_pk_sub_u16 v5, exec_hi, null
+// GFX13: v_pk_sub_u16 v5, exec_hi, null ; encoding: [0x05,0x40,0x0b,0xcc,0x7f,0xf8,0x00,0x1a]
+
+v_pk_sub_u16 v5, exec_lo, -1
+// GFX13: v_pk_sub_u16 v5, exec_lo, -1 ; encoding: [0x05,0x40,0x0b,0xcc,0x7e,0x82,0x01,0x1a]
+
+v_pk_sub_u16 v5, m0, 0.5
+// GFX13: v_pk_sub_u16 v5, m0, 0.5 ; encoding: [0x05,0x40,0x0b,0xcc,0x7d,0xe0,0x01,0x1a]
+
+v_pk_sub_u16 v5, null, exec_lo
+// GFX13: v_pk_sub_u16 v5, null, exec_lo ; encoding: [0x05,0x40,0x0b,0xcc,0x7c,0xfc,0x00,0x1a]
+
+v_pk_sub_u16 v5, s1, s2
+// GFX13: v_pk_sub_u16 v5, s1, s2 ; encoding: [0x05,0x40,0x0b,0xcc,0x01,0x04,0x00,0x1a]
+
+v_pk_sub_u16 v5, s105, s105
+// GFX13: v_pk_sub_u16 v5, s105, s105 ; encoding: [0x05,0x40,0x0b,0xcc,0x69,0xd2,0x00,0x1a]
+
+v_pk_sub_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_sub_u16 v5, src_scc, vcc_lo op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x05,0x48,0x0b,0xcc,0xfd,0xd4,0x00,0x12]
+
+v_pk_sub_u16 v5, ttmp15, src_scc
+// GFX13: v_pk_sub_u16 v5, ttmp15, src_scc ; encoding: [0x05,0x40,0x0b,0xcc,0x7b,0xfa,0x01,0x1a]
+
+v_pk_sub_u16 v5, v1, v2
+// GFX13: v_pk_sub_u16 v5, v1, v2 ; encoding: [0x05,0x40,0x0b,0xcc,0x01,0x05,0x02,0x1a]
+
+v_pk_sub_u16 v5, v255, v255
+// GFX13: v_pk_sub_u16 v5, v255, v255 ; encoding: [0x05,0x40,0x0b,0xcc,0xff,0xff,0x03,0x1a]
+
+v_pk_sub_u16 v5, vcc_hi, 0xfe0b
+// GFX13: v_pk_sub_u16 v5, vcc_hi, 0xfe0b ; encoding: [0x05,0x40,0x0b,0xcc,0x6b,0xfe,0x01,0x1a,0x0b,0xfe,0x00,0x00]
+
+v_pk_sub_u16 v5, vcc_lo, ttmp15
+// GFX13: v_pk_sub_u16 v5, vcc_lo, ttmp15 ; encoding: [0x05,0x40,0x0b,0xcc,0x6a,0xf6,0x00,0x1a]
diff --git a/llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp16.s b/llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp16.s
new file mode 100644
index 0000000000000..cd3929ed33a08
--- /dev/null
+++ b/llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp16.s
@@ -0,0 +1,18 @@
+// NOTE: Assertions have been autogenerated by utils/update_mc_test_checks.py UTC_ARGS: --version 6
+// RUN: llvm-mc -triple=amdgcn -mcpu=gfx1310 -show-encoding %s | FileCheck --check-prefixes=GFX13 %s
+// RUN: llvm-mc -triple=amdgcn -mcpu=gfx1310 -show-encoding %s | %extract-encodings | llvm-mc -triple=amdgcn -mcpu=gfx1310 -show-encoding -disassemble | FileCheck --check-prefixes=GFX13 %s
+
+v_fma_mix_f32 v0, v1, v2, v3 op_sel:[0,0,0] row_ror:7 bank_mask:0x1 bound_ctrl:0
+// GFX13: v_fma_mix_f32_e64_dpp v0, v1, v2, v3 row_ror:7 row_mask:0xf bank_mask:0x1 ; encoding: [0x00,0x00,0x20,0xcc,0xfa,0x04,0x0e,0x04,0x01,0x27,0x01,0xf1]
+
+v_fma_mix_f32_bf16 v0, v1, v2, v3 op_sel:[0,0,0] row_ror:7 bank_mask:0x1 bound_ctrl:0
+// GFX13: v_fma_mix_f32_bf16_e64_dpp v0, v1, v2, v3 row_ror:7 row_mask:0xf bank_mask:0x1 ; encoding: [0x00,0x00,0x3d,0xcc,0xfa,0x04,0x0e,0x04,0x01,0x27,0x01,0xf1]
+
+v_fma_mixhi_bf16 v0, v1, v2, v3 op_sel_hi:[1,1,1] clamp quad_perm:[0,2,3,1] row_mask:0x0
+// GFX13: v_fma_mixhi_bf16_e64_dpp v0, v1, v2, v3 op_sel_hi:[1,1,1] clamp quad_perm:[0,2,3,1] row_mask:0x0 bank_mask:0xf ; encoding: [0x00,0xc0,0x3f,0xcc,0xfa,0x04,0x0e,0x1c,0x01,0x78,0x00,0x0f]
+
+v_fma_mixhi_f16 v0, v1, v2, v3 op_sel_hi:[1,1,1] clamp quad_perm:[0,2,3,1] row_mask:0x0
+// GFX13: v_fma_mixhi_f16_e64_dpp v0, v1, v2, v3 op_sel_hi:[1,1,1] clamp quad_perm:[0,2,3,1] row_mask:0x0 bank_mask:0xf ; encoding: [0x00,0xc0,0x22,0xcc,0xfa,0x04,0x0e,0x1c,0x01,0x78,0x00,0x0f]
+
+v_fma_mixlo_bf16 v0, v1, v2, v3 op_sel_hi:[1,1,1] clamp quad_perm:[0,2,3,1] row_mask:0x0
+// GFX13: v_fma_mixlo_bf16_e64_dpp v0, v1, v2, v3 op_sel_hi:[1,1,1] clamp quad_perm:[0,2,3,1] row_mask:0x0 bank_mask:0xf ; encoding: [0x00,0xc0,0x3e,0xcc,0xfa,0x04,0x0e,0x1c,0x01,0x78,0x00,0x0f]
diff --git a/llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp8.s b/llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp8.s
new file mode 100644
index 0000000000000..2919c72042866
--- /dev/null
+++ b/llvm/test/MC/AMDGPU/gfx13_asm_vop3p_dpp8.s
@@ -0,0 +1,34 @@
+// NOTE: Assertions have been autogenerated by utils/update_mc_test_checks.py UTC_ARGS: --version 6
+// RUN: llvm-mc -triple=amdgcn -mcpu=gfx1310 -show-encoding %s | FileCheck --check-prefixes=GFX13 %s
+// RUN: llvm-mc -triple=amdgcn -mcpu=gfx1310 -show-encoding %s | %extract-encodings | llvm-mc -triple=amdgcn -mcpu=gfx1310 -show-encoding -disassemble | FileCheck --check-prefixes=GFX13 %s
+
+v_fma_mix_f32 v0, v1, v2, v3 clamp dpp8:[2,2,2,2,4,4,4,4] fi:1
+// GFX13: v_fma_mix_f32_e64_dpp v0, v1, v2, v3 clamp dpp8:[2,2,2,2,4,4,4,4] fi:1 ; encoding: [0x00,0x80,0x20,0xcc,0xea,0x04,0x0e,0x04,0x01,0x92,0x44,0x92]
+
+v_fma_mix_f32 v0, v1, v2, v3 dpp8:[2,2,2,2,4,4,4,4]
+// GFX13: v_fma_mix_f32_e64_dpp v0, v1, v2, v3 dpp8:[2,2,2,2,4,4,4,4] ; encoding: [0x00,0x00,0x20,0xcc,0xe9,0x04,0x0e,0x04,0x01,0x92,0x44,0x92]
+
+v_fma_mix_f32_bf16 v0, v1, v2, v3 clamp dpp8:[2,2,2,2,4,4,4,4] fi:1
+// GFX13: v_fma_mix_f32_bf16_e64_dpp v0, v1, v2, v3 clamp dpp8:[2,2,2,2,4,4,4,4] fi:1 ; encoding: [0x00,0x80,0x3d,0xcc,0xea,0x04,0x0e,0x04,0x01,0x92,0x44,0x92]
+
+v_fma_mix_f32_bf16 v0, v1, v2, v3 dpp8:[2,2,2,2,4,4,4,4]
+// GFX13: v_fma_mix_f32_bf16_e64_dpp v0, v1, v2, v3 dpp8:[2,2,2,2,4,4,4,4] ; encoding: [0x00,0x00,0x3d,0xcc,0xe9,0x04,0x0e,0x04,0x01,0x92,0x44,0x92]
+
+v_fma_mixhi_bf16 v0, abs(v1), -v2, abs(v3) dpp8:[2,2,2,2,4,4,4,4]
+// GFX13: v_fma_mixhi_bf16_e64_dpp v0, |v1|, -v2, |v3| dpp8:[2,2,2,2,4,4,4,4] ; encoding: [0x00,0x05,0x3f,0xcc,0xe9,0x04,0x0e,0x44,0x01,0x92,0x44,0x92]
+
+v_fma_mixhi_bf16 v0, abs(v1), -v2, abs(v3) op_sel:[1,0,0] op_sel_hi:[1,0,0] dpp8:[2,2,2,2,4,4,4,4]
+// GFX13: v_fma_mixhi_bf16_e64_dpp v0, |v1|, -v2, |v3| op_sel:[1,0,0] op_sel_hi:[1,0,0] dpp8:[2,2,2,2,4,4,4,4] ; encoding: [0x00,0x0d,0x3f,0xcc,0xe9,0x04,0x0e,0x4c,0x01,0x92,0x44,0x92]
+
+v_fma_mixlo_bf16 v0, abs(v1), -v2, abs(v3) dpp8:[2,2,2,2,4,4,4,4]
+// GFX13: v_fma_mixlo_bf16_e64_dpp v0, |v1|, -v2, |v3| dpp8:[2,2,2,2,4,4,4,4] ; encoding: [0x00,0x05,0x3e,0xcc,0xe9,0x04,0x0e,0x44,0x01,0x92,0x44,0x92]
+
+v_fma_mixlo_bf16 v0, abs(v1), -v2, abs(v3) op_sel:[1,0,0] op_sel_hi:[1,0,0] dpp8:[2,2,2,2,4,4,4,4]
+// GFX13: v_fma_mixlo_bf16_e64_dpp v0, |v1|, -v2, |v3| op_sel:[1,0,0] op_sel_hi:[1,0,0] dpp8:[2,2,2,2,4,4,4,4] ; encoding: [0x00,0x0d,0x3e,0xcc,0xe9,0x04,0x0e,0x4c,0x01,0x92,0x44,0x92]
+
+v_fma_mixlo_f16 v0, abs(v1), -v2, abs(v3) dpp8:[2,2,2,2,4,4,4,4]
+// GFX13: v_fma_mixlo_f16_e64_dpp v0, |v1|, -v2, |v3| dpp8:[2,2,2,2,4,4,4,4] ; encoding: [0x00,0x05,0x21,0xcc,0xe9,0x04,0x0e,0x44,0x01,0x92,0x44,0x92]
+
+// For test purpose only. OP_SEL has to be set to all 0 and OP_SEL_HI has to be set to all 1
+v_fma_mixlo_f16 v0, abs(v1), -v2, abs(v3) op_sel:[1,0,0] op_sel_hi:[1,0,0] dpp8:[2,2,2,2,4,4,4,4]
+// GFX13: v_fma_mixlo_f16_e64_dpp v0, |v1|, -v2, |v3| op_sel:[1,0,0] op_sel_hi:[1,0,0] dpp8:[2,2,2,2,4,4,4,4] ; encoding: [0x00,0x0d,0x21,0xcc,0xe9,0x04,0x0e,0x4c,0x01,0x92,0x44,0x92]
diff --git a/llvm/test/MC/AMDGPU/gfx13_asm_vop3p_features.s b/llvm/test/MC/AMDGPU/gfx13_asm_vop3p_features.s
new file mode 100644
index 0000000000000..31f4332689c7e
--- /dev/null
+++ b/llvm/test/MC/AMDGPU/gfx13_asm_vop3p_features.s
@@ -0,0 +1,125 @@
+// NOTE: Assertions have been autogenerated by utils/update_mc_test_checks.py UTC_ARGS: --version 6
+// RUN: llvm-mc -triple=amdgcn -show-encoding -mcpu=gfx1310 %s | FileCheck --check-prefix=GFX13 %s
+// RUN: llvm-mc -triple=amdgcn -show-encoding -mcpu=gfx1310 %s | %extract-encodings | llvm-mc -triple=amdgcn -show-encoding -mcpu=gfx1310 -disassemble | FileCheck --check-prefix=GFX13 %s
+
+// Test op_sel/op_sel_hi
+
+v_pk_add_u16 v1, v2, v3
+// GFX13: v_pk_add_u16 v1, v2, v3 ; encoding: [0x01,0x40,0x0a,0xcc,0x02,0x07,0x02,0x1a]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[0,0]
+// GFX13: v_pk_add_u16 v1, v2, v3 ; encoding: [0x01,0x40,0x0a,0xcc,0x02,0x07,0x02,0x1a]
+
+v_pk_add_u16 v1, v2, v3 op_sel_hi:[1,1]
+// GFX13: v_pk_add_u16 v1, v2, v3 ; encoding: [0x01,0x40,0x0a,0xcc,0x02,0x07,0x02,0x1a]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[0,0] op_sel_hi:[1,1]
+// GFX13: v_pk_add_u16 v1, v2, v3 ; encoding: [0x01,0x40,0x0a,0xcc,0x02,0x07,0x02,0x1a]
+
+v_pk_add_u16 v1, v2, v3 op_sel_hi:[0,0]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel_hi:[0,0] ; encoding: [0x01,0x40,0x0a,0xcc,0x02,0x07,0x02,0x02]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[0,0] op_sel_hi:[0,0]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel_hi:[0,0] ; encoding: [0x01,0x40,0x0a,0xcc,0x02,0x07,0x02,0x02]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[1,0]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel:[1,0] ; encoding: [0x01,0x48,0x0a,0xcc,0x02,0x07,0x02,0x1a]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[0,1]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel:[0,1] ; encoding: [0x01,0x50,0x0a,0xcc,0x02,0x07,0x02,0x1a]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[1,1]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel:[1,1] ; encoding: [0x01,0x58,0x0a,0xcc,0x02,0x07,0x02,0x1a]
+
+v_pk_add_u16 v1, v2, v3 op_sel_hi:[0,1]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel_hi:[0,1] ; encoding: [0x01,0x40,0x0a,0xcc,0x02,0x07,0x02,0x12]
+
+v_pk_add_u16 v1, v2, v3 op_sel_hi:[1,0]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel_hi:[1,0] ; encoding: [0x01,0x40,0x0a,0xcc,0x02,0x07,0x02,0x0a]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[1,1] op_sel_hi:[1,1]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel:[1,1] ; encoding: [0x01,0x58,0x0a,0xcc,0x02,0x07,0x02,0x1a]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[1,0] op_sel_hi:[1,0]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel:[1,0] op_sel_hi:[1,0] ; encoding: [0x01,0x48,0x0a,0xcc,0x02,0x07,0x02,0x0a]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[0,1] op_sel_hi:[0,1]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel:[0,1] op_sel_hi:[0,1] ; encoding: [0x01,0x50,0x0a,0xcc,0x02,0x07,0x02,0x12]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[1,0] op_sel_hi:[0,1]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel:[1,0] op_sel_hi:[0,1] ; encoding: [0x01,0x48,0x0a,0xcc,0x02,0x07,0x02,0x12]
+
+v_pk_add_u16 v1, v2, v3 op_sel:[0,1] op_sel_hi:[1,0]
+// GFX13: v_pk_add_u16 v1, v2, v3 op_sel:[0,1] op_sel_hi:[1,0] ; encoding: [0x01,0x50,0x0a,0xcc,0x02,0x07,0x02,0x0a]
+
+// Test src2 op_sel/op_sel_hi
+
+v_pk_fma_f16 v8, v0, s0, v1
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 ; encoding: [0x08,0x40,0x0e,0xcc,0x00,0x01,0x04,0x1c]
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[0,0,0] neg_hi:[0,0,0]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 ; encoding: [0x08,0x40,0x0e,0xcc,0x00,0x01,0x04,0x1c]
+
+v_pk_fma_f16 v8, v0, s0, v1 op_sel:[0,0,0] op_sel_hi:[1,1,1] neg_lo:[0,0,0] neg_hi:[0,0,0]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 ; encoding: [0x08,0x40,0x0e,0xcc,0x00,0x01,0x04,0x1c]
+
+v_pk_fma_f16 v8, v0, s0, v1 op_sel:[0,0,0] op_sel_hi:[1,1,1]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 ; encoding: [0x08,0x40,0x0e,0xcc,0x00,0x01,0x04,0x1c]
+
+v_pk_fma_f16 v8, v0, s0, v1 op_sel:[0,0,0] op_sel_hi:[0,0,0]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 op_sel_hi:[0,0,0] ; encoding: [0x08,0x00,0x0e,0xcc,0x00,0x01,0x04,0x04]
+
+v_pk_fma_f16 v8, v0, s0, v1 op_sel:[0,0,1] op_sel_hi:[0,0,1]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 op_sel:[0,0,1] op_sel_hi:[0,0,1] ; encoding: [0x08,0x60,0x0e,0xcc,0x00,0x01,0x04,0x04]
+
+// Test neg_lo/neg_hi
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[1,1,1]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[1,1,1] ; encoding: [0x08,0x40,0x0e,0xcc,0x00,0x01,0x04,0xfc]
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_hi:[1,1,1]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 neg_hi:[1,1,1] ; encoding: [0x08,0x47,0x0e,0xcc,0x00,0x01,0x04,0x1c]
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[1,1,1] neg_hi:[1,1,1]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[1,1,1] neg_hi:[1,1,1] ; encoding: [0x08,0x47,0x0e,0xcc,0x00,0x01,0x04,0xfc]
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[1,0,0]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[1,0,0] ; encoding: [0x08,0x40,0x0e,0xcc,0x00,0x01,0x04,0x3c]
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[0,1,0]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[0,1,0] ; encoding: [0x08,0x40,0x0e,0xcc,0x00,0x01,0x04,0x5c]
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[0,0,1]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 neg_lo:[0,0,1] ; encoding: [0x08,0x40,0x0e,0xcc,0x00,0x01,0x04,0x9c]
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_hi:[1,0,0]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 neg_hi:[1,0,0] ; encoding: [0x08,0x41,0x0e,0xcc,0x00,0x01,0x04,0x1c]
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_hi:[0,1,0]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 neg_hi:[0,1,0] ; encoding: [0x08,0x42,0x0e,0xcc,0x00,0x01,0x04,0x1c]
+
+v_pk_fma_f16 v8, v0, s0, v1 neg_hi:[0,0,1]
+// GFX13: v_pk_fma_f16 v8, v0, s0, v1 neg_hi:[0,0,1] ; encoding: [0x08,0x44,0x0e,0xcc,0x00,0x01,0x04,0x1c]
+
+// DOT
+
+v_dot4_i32_iu8 v3, v4, v5, v6
+// GFX13: v_dot4_i32_iu8 v3, v4, v5, v6 ; encoding: [0x03,0x40,0x16,0xcc,0x04,0x0b,0x1a,0x1c]
+
+v_dot4_i32_iu8 v3, v4, v5, 0xf neg_lo:[1,1]
+// GFX13: v_dot4_i32_iu8 v3, v4, v5, 15 neg_lo:[1,1,0] ; encoding: [0x03,0x40,0x16,0xcc,0x04,0x0b,0x3e,0x7a]
+
+v_dot4_u32_u8 v3, v4, v5, v6
+// GFX13: v_dot4_u32_u8 v3, v4, v5, v6 ; encoding: [0x03,0x40,0x17,0xcc,0x04,0x0b,0x1a,0x1c]
+
+v_dot4_i32_iu8 v3, v4, v5, 0xf
+// GFX13: v_dot4_i32_iu8 v3, v4, v5, 15 ; encoding: [0x03,0x40,0x16,0xcc,0x04,0x0b,0x3e,0x1a]
+
+v_dot8_i32_iu4 v3, v4, v5, 0xf neg_lo:[1,0]
+// GFX13: v_dot8_i32_iu4 v3, v4, v5, 15 neg_lo:[1,0,0] ; encoding: [0x03,0x40,0x18,0xcc,0x04,0x0b,0x3e,0x3a]
+
+v_dot8_i32_iu4 v3, v4, v5, v0 neg_lo:[0,0]
+// GFX13: v_dot8_i32_iu4 v3, v4, v5, v0 ; encoding: [0x03,0x40,0x18,0xcc,0x04,0x0b,0x02,0x1c]
+
+v_dot8_u32_u4 v0, v1, v2, v3
+// GFX13: v_dot8_u32_u4 v0, v1, v2, v3 ; encoding: [0x00,0x40,0x19,0xcc,0x01,0x05,0x0e,0x1c]
More information about the llvm-commits
mailing list