diff --git a/llvm/test/MC/Disassembler/AMDGPU/aperture-regs.ll b/llvm/test/MC/Disassembler/AMDGPU/aperture-regs.ll deleted file mode 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/aperture-regs.ll +++ /dev/null @@ -1,13 +0,0 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck -check-prefix=GFX9 %s - -# GFX9: v_mov_b32_e32 v1, src_shared_base ; encoding: [0xeb,0x02,0x02,0x7e] -0xeb 0x02 0x02 0x7e - -# GFX9: v_mov_b32_e32 v1, src_shared_limit ; encoding: [0xec,0x02,0x02,0x7e] -0xec 0x02 0x02 0x7e - -# GFX9: v_mov_b32_e32 v1, src_private_base ; encoding: [0xed,0x02,0x02,0x7e] -0xed 0x02 0x02 0x7e - -# GFX9: v_mov_b32_e32 v1, src_private_limit ; encoding: [0xee,0x02,0x02,0x7e] -0xee 0x02 0x02 0x7e diff --git a/llvm/test/MC/Disassembler/AMDGPU/dpp_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/dpp_gfx9.txt deleted file mode 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/dpp_gfx9.txt +++ /dev/null @@ -1,4 +0,0 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck %s -check-prefix=GFX9 - -# GFX9: v_screen_partition_4se_b32_dpp v5, v1 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0xf ; encoding: [0xfa,0x6e,0x0a,0x7e,0x01,0xe4,0x00,0x0f] -0xfa,0x6e,0x0a,0x7e,0x01,0xe4,0x00,0x0f diff --git a/llvm/test/MC/Disassembler/AMDGPU/flat_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/flat_gfx9.txt deleted file mode 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/flat_gfx9.txt +++ /dev/null @@ -1,97 +0,0 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck %s - -# CHECK: flat_atomic_add v[0:1], v0 ; encoding: [0x00,0x00,0x08,0xdd,0x00,0x00,0x00,0x00] -0x00,0x00,0x08,0xdd,0x00,0x00,0x00,0x00 - -# CHECK: flat_atomic_add v[0:1], v0 offset:7 ; encoding: [0x07,0x00,0x08,0xdd,0x00,0x00,0x00,0x00] -0x07,0x00,0x08,0xdd,0x00,0x00,0x00,0x00 - -# CHECK: flat_atomic_add v0, v[0:1], v0 offset:4095 glc ; encoding: [0xff,0x0f,0x09,0xdd,0x00,0x00,0x00,0x00] -0xff,0x0f,0x09,0xdd,0x00,0x00,0x00,0x00 - -# CHECK: flat_atomic_add v0, v[0:1], v0 offset:4095 glc slc ; encoding: [0xff,0x0f,0x0b,0xdd,0x00,0x00,0x00,0x00] -0xff,0x0f,0x0b,0xdd,0x00,0x00,0x00,0x00 - -# CHECK: flat_atomic_add v0, v[0:1], v0 glc ; encoding: [0x00,0x00,0x09,0xdd,0x00,0x00,0x00,0x00] -0x00,0x00,0x09,0xdd,0x00,0x00,0x00,0x00 - -# CHECK: flat_atomic_add v0, v[0:1], v0 glc slc ; encoding: [0x00,0x00,0x0b,0xdd,0x00,0x00,0x00,0x00] -0x00,0x00,0x0b,0xdd,0x00,0x00,0x00,0x00 - -# CHECK: flat_atomic_add v[0:1], v0 slc ; encoding: [0x00,0x00,0x0a,0xdd,0x00,0x00,0x00,0x00] -0x00,0x00,0x0a,0xdd,0x00,0x00,0x00,0x00 - -# CHECK: flat_atomic_add v[0:1], v0 offset:4095 slc ; encoding: [0xff,0x0f,0x0a,0xdd,0x00,0x00,0x00,0x00] -0xff,0x0f,0x0a,0xdd,0x00,0x00,0x00,0x00 - -# CHECK: flat_load_dword v0, v[0:1] ; encoding: [0x00,0x00,0x50,0xdc,0x00,0x00,0x00,0x00] -0x00,0x00,0x50,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: flat_load_dword v0, v[0:1] offset:7 ; encoding: [0x07,0x00,0x50,0xdc,0x00,0x00,0x00,0x00] -0x07,0x00,0x50,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: flat_load_dword v0, v[0:1] offset:4095 glc ; encoding: [0xff,0x0f,0x51,0xdc,0x00,0x00,0x00,0x00] -0xff,0x0f,0x51,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: flat_store_byte v[0:1], v0 ; encoding: [0x00,0x00,0x60,0xdc,0x00,0x00,0x00,0x00] -0x00,0x00,0x60,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: flat_store_byte v[0:1], v0 offset:7 ; encoding: [0x07,0x00,0x60,0xdc,0x00,0x00,0x00,0x00] -0x07,0x00,0x60,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: flat_store_byte v[0:1], v0 offset:4095 glc ; encoding: [0xff,0x0f,0x61,0xdc,0x00,0x00,0x00,0x00] -0xff,0x0f,0x61,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: global_atomic_add v2, v4, s[0:1] ; encoding: [0x00,0x80,0x08,0xdd,0x02,0x04,0x00,0x00] -0x00,0x80,0x08,0xdd,0x02,0x04,0x00,0x00 - -# CHECK: global_atomic_add v2, v4, s[0:1] offset:4095 ; encoding: [0xff,0x8f,0x08,0xdd,0x02,0x04,0x00,0x00] -0xff,0x8f,0x08,0xdd,0x02,0x04,0x00,0x00 - -# CHECK: global_atomic_add v2, v4, s[0:1] offset:-4096 ; encoding: [0x00,0x90,0x08,0xdd,0x02,0x04,0x00,0x00] -0x00,0x90,0x08,0xdd,0x02,0x04,0x00,0x00 - -# CHECK: global_atomic_add v0, v2, v4, s[0:1] offset:-1 glc ; encoding: [0xff,0x9f,0x09,0xdd,0x02,0x04,0x00,0x00] -0xff,0x9f,0x09,0xdd,0x02,0x04,0x00,0x00 - -# CHECK: global_load_sbyte v0, v2, s[0:1] ; encoding: [0x00,0x80,0x44,0xdc,0x02,0x00,0x00,0x00] -0x00,0x80,0x44,0xdc,0x02,0x00,0x00,0x00 - -# CHECK: global_load_sbyte v0, v2, s[0:1] offset:4095 ; encoding: [0xff,0x8f,0x44,0xdc,0x02,0x00,0x00,0x00] -0xff,0x8f,0x44,0xdc,0x02,0x00,0x00,0x00 - -# CHECK: global_load_sbyte v0, v2, s[0:1] offset:-4096 ; encoding: [0x00,0x90,0x44,0xdc,0x02,0x00,0x00,0x00] -0x00,0x90,0x44,0xdc,0x02,0x00,0x00,0x00 - -# CHECK: global_store_dwordx2 v2, v[4:5], s[0:1] ; encoding: [0x00,0x80,0x74,0xdc,0x02,0x04,0x00,0x00] -0x00,0x80,0x74,0xdc,0x02,0x04,0x00,0x00 - -# CHECK: global_store_dwordx2 v2, v[4:5], s[0:1] offset:4095 ; encoding: [0xff,0x8f,0x74,0xdc,0x02,0x04,0x00,0x00] -0xff,0x8f,0x74,0xdc,0x02,0x04,0x00,0x00 - -# CHECK: global_store_dwordx2 v2, v[4:5], s[0:1] offset:-4096 ; encoding: [0x00,0x90,0x74,0xdc,0x02,0x04,0x00,0x00] -0x00,0x90,0x74,0xdc,0x02,0x04,0x00,0x00 - -# CHECK: scratch_load_dword v0, v0, off offset:-1 ; encoding: [0xff,0x5f,0x50,0xdc,0x00,0x00,0x7f,0x00] -0xff,0x5f,0x50,0xdc,0x00,0x00,0x7f,0x00 - -# CHECK: scratch_load_dword v0, off, s0 ; encoding: [0x00,0x40,0x50,0xdc,0x00,0x00,0x00,0x00] -0x00,0x40,0x50,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: scratch_load_dword v0, off, s0 offset:4095 ; encoding: [0xff,0x4f,0x50,0xdc,0x00,0x00,0x00,0x00] -0xff,0x4f,0x50,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: scratch_load_dword v0, off, s0 offset:-4096 ; encoding: [0x00,0x50,0x50,0xdc,0x00,0x00,0x00,0x00] -0x00,0x50,0x50,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: scratch_store_short v0, v0, off offset:-1 ; encoding: [0xff,0x5f,0x68,0xdc,0x00,0x00,0x7f,0x00] -0xff,0x5f,0x68,0xdc,0x00,0x00,0x7f,0x00 - -# CHECK: scratch_store_short off, v0, s0 ; encoding: [0x00,0x40,0x68,0xdc,0x00,0x00,0x00,0x00] -0x00,0x40,0x68,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: scratch_store_short off, v0, s0 offset:4095 ; encoding: [0xff,0x4f,0x68,0xdc,0x00,0x00,0x00,0x00] -0xff,0x4f,0x68,0xdc,0x00,0x00,0x00,0x00 - -# CHECK: scratch_store_short off, v0, s0 offset:-4096 ; encoding: [0x00,0x50,0x68,0xdc,0x00,0x00,0x00,0x00] -0x00,0x50,0x68,0xdc,0x00,0x00,0x00,0x00 diff --git a/llvm/test/MC/Disassembler/AMDGPU/literal_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9-aperture-regs.txt rename from llvm/test/MC/Disassembler/AMDGPU/literal_gfx9.txt rename to llvm/test/MC/Disassembler/AMDGPU/gfx9-aperture-regs.txt --- a/llvm/test/MC/Disassembler/AMDGPU/literal_gfx9.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9-aperture-regs.txt @@ -1,4 +1,16 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding %s | FileCheck -check-prefix=GFX9 %s +# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck -check-prefix=GFX9 %s + +# GFX9: v_mov_b32_e32 v1, src_shared_base ; encoding: [0xeb,0x02,0x02,0x7e] +0xeb 0x02 0x02 0x7e + +# GFX9: v_mov_b32_e32 v1, src_shared_limit ; encoding: [0xec,0x02,0x02,0x7e] +0xec 0x02 0x02 0x7e + +# GFX9: v_mov_b32_e32 v1, src_private_base ; encoding: [0xed,0x02,0x02,0x7e] +0xed 0x02 0x02 0x7e + +# GFX9: v_mov_b32_e32 v1, src_private_limit ; encoding: [0xee,0x02,0x02,0x7e] +0xee 0x02 0x02 0x7e # GFX9: buffer_atomic_add v0, off, s[0:3], src_shared_base offset:4095 ; encoding: [0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xeb] 0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xeb @@ -77,84 +89,3 @@ # GFX9: v_ceil_f32_sdwa v5, |src_shared_base| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x3a,0x0a,0x7e,0xeb,0x16,0xa6,0x00] 0xf9,0x3a,0x0a,0x7e,0xeb,0x16,0xa6,0x00 - -# GFX9: buffer_atomic_add v0, off, s[0:3], src_scc offset:4095 ; encoding: [0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xfd] -0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xfd - -# GFX9: s_add_i32 s0, src_vccz, s0 ; encoding: [0xfb,0x00,0x00,0x81] -0xfb,0x00,0x00,0x81 - -# GFX9: s_add_i32 s0, src_execz, s0 ; encoding: [0xfc,0x00,0x00,0x81] -0xfc,0x00,0x00,0x81 - -# GFX9: s_add_i32 s0, src_scc, s0 ; encoding: [0xfd,0x00,0x00,0x81] -0xfd,0x00,0x00,0x81 - -# GFX9: s_and_b64 s[0:1], s[0:1], src_vccz ; encoding: [0x00,0xfb,0x80,0x86] -0x00,0xfb,0x80,0x86 - -# GFX9: s_and_b64 s[0:1], s[0:1], src_execz ; encoding: [0x00,0xfc,0x80,0x86] -0x00,0xfc,0x80,0x86 - -# GFX9: s_and_b64 s[0:1], s[0:1], src_scc ; encoding: [0x00,0xfd,0x80,0x86] -0x00,0xfd,0x80,0x86 - -# GFX9: v_add_u16_e32 v0, src_vccz, v0 ; encoding: [0xfb,0x00,0x00,0x4c] -0xfb,0x00,0x00,0x4c - -# GFX9: v_add_u16_sdwa v0, src_scc, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0x00,0x00,0x4c,0xfd,0x06,0x86,0x06] -0xf9,0x00,0x00,0x4c,0xfd,0x06,0x86,0x06 - -# GFX9: v_add_u16_sdwa v0, v0, src_scc dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0xfa,0x01,0x4c,0x00,0x06,0x06,0x86] -0xf9,0xfa,0x01,0x4c,0x00,0x06,0x06,0x86 - -# GFX9: v_add_u32_e32 v0, src_execz, v0 ; encoding: [0xfc,0x00,0x00,0x68] -0xfc,0x00,0x00,0x68 - -# GFX9: v_add_u32_e64 v0, src_scc, v0 ; encoding: [0x00,0x00,0x34,0xd1,0xfd,0x00,0x02,0x00] -0x00,0x00,0x34,0xd1,0xfd,0x00,0x02,0x00 - -# GFX9: v_cmp_eq_i64_e32 vcc, src_scc, v[0:1] ; encoding: [0xfd,0x00,0xc4,0x7d] -0xfd,0x00,0xc4,0x7d - -# GFX9: v_max_f16_e32 v0, src_execz, v0 ; encoding: [0xfc,0x00,0x00,0x5a] -0xfc,0x00,0x00,0x5a - -# GFX9: v_max_f32_e32 v0, src_vccz, v0 ; encoding: [0xfb,0x00,0x00,0x16] -0xfb,0x00,0x00,0x16 - -# GFX9: v_max_f64 v[0:1], src_scc, v[0:1] ; encoding: [0x00,0x00,0x83,0xd2,0xfd,0x00,0x02,0x00] -0x00,0x00,0x83,0xd2,0xfd,0x00,0x02,0x00 - -# GFX9: v_pk_add_f16 v0, src_execz, v0 ; encoding: [0x00,0x40,0x8f,0xd3,0xfc,0x00,0x02,0x18] -0x00,0x00,0x8f,0xd3,0xfc,0x00,0x02,0x18 - -# GFX9: v_ceil_f16_e64 v0, -src_vccz ; encoding: [0x00,0x00,0x85,0xd1,0xfb,0x00,0x00,0x20] -0x00,0x00,0x85,0xd1,0xfb,0x00,0x00,0x20 - -# GFX9: v_ceil_f16_e64 v0, |src_scc| ; encoding: [0x00,0x01,0x85,0xd1,0xfd,0x00,0x00,0x00] -0x00,0x01,0x85,0xd1,0xfd,0x00,0x00,0x00 - -# GFX9: v_ceil_f64_e64 v[5:6], |src_execz| ; encoding: [0x05,0x01,0x58,0xd1,0xfc,0x00,0x00,0x00] -0x05,0x01,0x58,0xd1,0xfc,0x00,0x00,0x00 - -# GFX9: v_ceil_f64_e64 v[5:6], -vcc ; encoding: [0x05,0x00,0x58,0xd1,0x6a,0x00,0x00,0x20] -0x05,0x00,0x58,0xd1,0x6a,0x00,0x00,0x20 - -# GFX9: v_ceil_f32_e64 v0, -src_vccz ; encoding: [0x00,0x00,0x5d,0xd1,0xfb,0x00,0x00,0x20] -0x00,0x00,0x5d,0xd1,0xfb,0x00,0x00,0x20 - -# GFX9: v_ceil_f32_e64 v0, |src_execz| ; encoding: [0x00,0x01,0x5d,0xd1,0xfc,0x00,0x00,0x00] -0x00,0x01,0x5d,0xd1,0xfc,0x00,0x00,0x00 - -# GFX9: v_ceil_f16_sdwa v5, |src_vccz| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xfb,0x16,0xa6,0x00] -0xf9,0x8a,0x0a,0x7e,0xfb,0x16,0xa6,0x00 - -# GFX9: v_ceil_f16_sdwa v5, -src_scc dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xfd,0x16,0x96,0x00] -0xf9,0x8a,0x0a,0x7e,0xfd,0x16,0x96,0x00 - -# GFX9: v_ceil_f32_sdwa v5, src_vccz dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x3a,0x0a,0x7e,0xfb,0x16,0x86,0x00] -0xf9,0x3a,0x0a,0x7e,0xfb,0x16,0x86,0x00 - -# GFX9: v_ceil_f32_sdwa v5, |src_execz| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x3a,0x0a,0x7e,0xfc,0x16,0xa6,0x00] -0xf9,0x3a,0x0a,0x7e,0xfc,0x16,0xa6,0x00 diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx9-bool-regs.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9-bool-regs.txt new file mode 100644 --- /dev/null +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9-bool-regs.txt @@ -0,0 +1,79 @@ +# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding %s | FileCheck -check-prefix=GFX9 %s + +# GFX9: buffer_atomic_add v0, off, s[0:3], src_scc offset:4095 ; encoding: [0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xfd] +0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xfd + +# GFX9: s_add_i32 s0, src_vccz, s0 ; encoding: [0xfb,0x00,0x00,0x81] +0xfb,0x00,0x00,0x81 + +# GFX9: s_add_i32 s0, src_execz, s0 ; encoding: [0xfc,0x00,0x00,0x81] +0xfc,0x00,0x00,0x81 + +# GFX9: s_add_i32 s0, src_scc, s0 ; encoding: [0xfd,0x00,0x00,0x81] +0xfd,0x00,0x00,0x81 + +# GFX9: s_and_b64 s[0:1], s[0:1], src_vccz ; encoding: [0x00,0xfb,0x80,0x86] +0x00,0xfb,0x80,0x86 + +# GFX9: s_and_b64 s[0:1], s[0:1], src_execz ; encoding: [0x00,0xfc,0x80,0x86] +0x00,0xfc,0x80,0x86 + +# GFX9: s_and_b64 s[0:1], s[0:1], src_scc ; encoding: [0x00,0xfd,0x80,0x86] +0x00,0xfd,0x80,0x86 + +# GFX9: v_add_u16_e32 v0, src_vccz, v0 ; encoding: [0xfb,0x00,0x00,0x4c] +0xfb,0x00,0x00,0x4c + +# GFX9: v_add_u16_sdwa v0, src_scc, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0x00,0x00,0x4c,0xfd,0x06,0x86,0x06] +0xf9,0x00,0x00,0x4c,0xfd,0x06,0x86,0x06 + +# GFX9: v_add_u16_sdwa v0, v0, src_scc dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0xfa,0x01,0x4c,0x00,0x06,0x06,0x86] +0xf9,0xfa,0x01,0x4c,0x00,0x06,0x06,0x86 + +# GFX9: v_add_u32_e32 v0, src_execz, v0 ; encoding: [0xfc,0x00,0x00,0x68] +0xfc,0x00,0x00,0x68 + +# GFX9: v_add_u32_e64 v0, src_scc, v0 ; encoding: [0x00,0x00,0x34,0xd1,0xfd,0x00,0x02,0x00] +0x00,0x00,0x34,0xd1,0xfd,0x00,0x02,0x00 + +# GFX9: v_cmp_eq_i64_e32 vcc, src_scc, v[0:1] ; encoding: [0xfd,0x00,0xc4,0x7d] +0xfd,0x00,0xc4,0x7d + +# GFX9: v_max_f16_e32 v0, src_execz, v0 ; encoding: [0xfc,0x00,0x00,0x5a] +0xfc,0x00,0x00,0x5a + +# GFX9: v_max_f32_e32 v0, src_vccz, v0 ; encoding: [0xfb,0x00,0x00,0x16] +0xfb,0x00,0x00,0x16 + +# GFX9: v_max_f64 v[0:1], src_scc, v[0:1] ; encoding: [0x00,0x00,0x83,0xd2,0xfd,0x00,0x02,0x00] +0x00,0x00,0x83,0xd2,0xfd,0x00,0x02,0x00 + +# GFX9: v_pk_add_f16 v0, src_execz, v0 ; encoding: [0x00,0x40,0x8f,0xd3,0xfc,0x00,0x02,0x18] +0x00,0x00,0x8f,0xd3,0xfc,0x00,0x02,0x18 + +# GFX9: v_ceil_f16_e64 v0, -src_vccz ; encoding: [0x00,0x00,0x85,0xd1,0xfb,0x00,0x00,0x20] +0x00,0x00,0x85,0xd1,0xfb,0x00,0x00,0x20 + +# GFX9: v_ceil_f16_e64 v0, |src_scc| ; encoding: [0x00,0x01,0x85,0xd1,0xfd,0x00,0x00,0x00] +0x00,0x01,0x85,0xd1,0xfd,0x00,0x00,0x00 + +# GFX9: v_ceil_f64_e64 v[5:6], |src_execz| ; encoding: [0x05,0x01,0x58,0xd1,0xfc,0x00,0x00,0x00] +0x05,0x01,0x58,0xd1,0xfc,0x00,0x00,0x00 + +# GFX9: v_ceil_f32_e64 v0, -src_vccz ; encoding: [0x00,0x00,0x5d,0xd1,0xfb,0x00,0x00,0x20] +0x00,0x00,0x5d,0xd1,0xfb,0x00,0x00,0x20 + +# GFX9: v_ceil_f32_e64 v0, |src_execz| ; encoding: [0x00,0x01,0x5d,0xd1,0xfc,0x00,0x00,0x00] +0x00,0x01,0x5d,0xd1,0xfc,0x00,0x00,0x00 + +# GFX9: v_ceil_f16_sdwa v5, |src_vccz| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xfb,0x16,0xa6,0x00] +0xf9,0x8a,0x0a,0x7e,0xfb,0x16,0xa6,0x00 + +# GFX9: v_ceil_f16_sdwa v5, -src_scc dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xfd,0x16,0x96,0x00] +0xf9,0x8a,0x0a,0x7e,0xfd,0x16,0x96,0x00 + +# GFX9: v_ceil_f32_sdwa v5, src_vccz dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x3a,0x0a,0x7e,0xfb,0x16,0x86,0x00] +0xf9,0x3a,0x0a,0x7e,0xfb,0x16,0x86,0x00 + +# GFX9: v_ceil_f32_sdwa v5, |src_execz| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x3a,0x0a,0x7e,0xfc,0x16,0xa6,0x00] +0xf9,0x3a,0x0a,0x7e,0xfc,0x16,0xa6,0x00 diff --git a/llvm/test/MC/Disassembler/AMDGPU/lds_direct_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9-lds_direct.txt rename from llvm/test/MC/Disassembler/AMDGPU/lds_direct_gfx9.txt rename to llvm/test/MC/Disassembler/AMDGPU/gfx9-lds_direct.txt diff --git a/llvm/test/MC/Disassembler/AMDGPU/trap_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9-trap.txt rename from llvm/test/MC/Disassembler/AMDGPU/trap_gfx9.txt rename to llvm/test/MC/Disassembler/AMDGPU/gfx9-trap.txt diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx9_flat.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_flat.txt --- a/llvm/test/MC/Disassembler/AMDGPU/gfx9_flat.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9_flat.txt @@ -2390,3 +2390,99 @@ # CHECK: scratch_load_sshort off, s4 offset:2048 lds ; encoding: [0x00,0x68,0x4c,0xdc,0x00,0x00,0x04,0x00] 0x00,0x68,0x4c,0xdc,0x00,0x00,0x04,0x00 + +# CHECK: flat_atomic_add v[0:1], v0 ; encoding: [0x00,0x00,0x08,0xdd,0x00,0x00,0x00,0x00] +0x00,0x00,0x08,0xdd,0x00,0x00,0x00,0x00 + +# CHECK: flat_atomic_add v[0:1], v0 offset:7 ; encoding: [0x07,0x00,0x08,0xdd,0x00,0x00,0x00,0x00] +0x07,0x00,0x08,0xdd,0x00,0x00,0x00,0x00 + +# CHECK: flat_atomic_add v0, v[0:1], v0 offset:4095 glc ; encoding: [0xff,0x0f,0x09,0xdd,0x00,0x00,0x00,0x00] +0xff,0x0f,0x09,0xdd,0x00,0x00,0x00,0x00 + +# CHECK: flat_atomic_add v0, v[0:1], v0 offset:4095 glc slc ; encoding: [0xff,0x0f,0x0b,0xdd,0x00,0x00,0x00,0x00] +0xff,0x0f,0x0b,0xdd,0x00,0x00,0x00,0x00 + +# CHECK: flat_atomic_add v0, v[0:1], v0 glc ; encoding: [0x00,0x00,0x09,0xdd,0x00,0x00,0x00,0x00] +0x00,0x00,0x09,0xdd,0x00,0x00,0x00,0x00 + +# CHECK: flat_atomic_add v0, v[0:1], v0 glc slc ; encoding: [0x00,0x00,0x0b,0xdd,0x00,0x00,0x00,0x00] +0x00,0x00,0x0b,0xdd,0x00,0x00,0x00,0x00 + +# CHECK: flat_atomic_add v[0:1], v0 slc ; encoding: [0x00,0x00,0x0a,0xdd,0x00,0x00,0x00,0x00] +0x00,0x00,0x0a,0xdd,0x00,0x00,0x00,0x00 + +# CHECK: flat_atomic_add v[0:1], v0 offset:4095 slc ; encoding: [0xff,0x0f,0x0a,0xdd,0x00,0x00,0x00,0x00] +0xff,0x0f,0x0a,0xdd,0x00,0x00,0x00,0x00 + +# CHECK: flat_load_dword v0, v[0:1] ; encoding: [0x00,0x00,0x50,0xdc,0x00,0x00,0x00,0x00] +0x00,0x00,0x50,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: flat_load_dword v0, v[0:1] offset:7 ; encoding: [0x07,0x00,0x50,0xdc,0x00,0x00,0x00,0x00] +0x07,0x00,0x50,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: flat_load_dword v0, v[0:1] offset:4095 glc ; encoding: [0xff,0x0f,0x51,0xdc,0x00,0x00,0x00,0x00] +0xff,0x0f,0x51,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: flat_store_byte v[0:1], v0 ; encoding: [0x00,0x00,0x60,0xdc,0x00,0x00,0x00,0x00] +0x00,0x00,0x60,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: flat_store_byte v[0:1], v0 offset:7 ; encoding: [0x07,0x00,0x60,0xdc,0x00,0x00,0x00,0x00] +0x07,0x00,0x60,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: flat_store_byte v[0:1], v0 offset:4095 glc ; encoding: [0xff,0x0f,0x61,0xdc,0x00,0x00,0x00,0x00] +0xff,0x0f,0x61,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: global_atomic_add v2, v4, s[0:1] ; encoding: [0x00,0x80,0x08,0xdd,0x02,0x04,0x00,0x00] +0x00,0x80,0x08,0xdd,0x02,0x04,0x00,0x00 + +# CHECK: global_atomic_add v2, v4, s[0:1] offset:4095 ; encoding: [0xff,0x8f,0x08,0xdd,0x02,0x04,0x00,0x00] +0xff,0x8f,0x08,0xdd,0x02,0x04,0x00,0x00 + +# CHECK: global_atomic_add v2, v4, s[0:1] offset:-4096 ; encoding: [0x00,0x90,0x08,0xdd,0x02,0x04,0x00,0x00] +0x00,0x90,0x08,0xdd,0x02,0x04,0x00,0x00 + +# CHECK: global_atomic_add v0, v2, v4, s[0:1] offset:-1 glc ; encoding: [0xff,0x9f,0x09,0xdd,0x02,0x04,0x00,0x00] +0xff,0x9f,0x09,0xdd,0x02,0x04,0x00,0x00 + +# CHECK: global_load_sbyte v0, v2, s[0:1] ; encoding: [0x00,0x80,0x44,0xdc,0x02,0x00,0x00,0x00] +0x00,0x80,0x44,0xdc,0x02,0x00,0x00,0x00 + +# CHECK: global_load_sbyte v0, v2, s[0:1] offset:4095 ; encoding: [0xff,0x8f,0x44,0xdc,0x02,0x00,0x00,0x00] +0xff,0x8f,0x44,0xdc,0x02,0x00,0x00,0x00 + +# CHECK: global_load_sbyte v0, v2, s[0:1] offset:-4096 ; encoding: [0x00,0x90,0x44,0xdc,0x02,0x00,0x00,0x00] +0x00,0x90,0x44,0xdc,0x02,0x00,0x00,0x00 + +# CHECK: global_store_dwordx2 v2, v[4:5], s[0:1] ; encoding: [0x00,0x80,0x74,0xdc,0x02,0x04,0x00,0x00] +0x00,0x80,0x74,0xdc,0x02,0x04,0x00,0x00 + +# CHECK: global_store_dwordx2 v2, v[4:5], s[0:1] offset:4095 ; encoding: [0xff,0x8f,0x74,0xdc,0x02,0x04,0x00,0x00] +0xff,0x8f,0x74,0xdc,0x02,0x04,0x00,0x00 + +# CHECK: global_store_dwordx2 v2, v[4:5], s[0:1] offset:-4096 ; encoding: [0x00,0x90,0x74,0xdc,0x02,0x04,0x00,0x00] +0x00,0x90,0x74,0xdc,0x02,0x04,0x00,0x00 + +# CHECK: scratch_load_dword v0, v0, off offset:-1 ; encoding: [0xff,0x5f,0x50,0xdc,0x00,0x00,0x7f,0x00] +0xff,0x5f,0x50,0xdc,0x00,0x00,0x7f,0x00 + +# CHECK: scratch_load_dword v0, off, s0 ; encoding: [0x00,0x40,0x50,0xdc,0x00,0x00,0x00,0x00] +0x00,0x40,0x50,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: scratch_load_dword v0, off, s0 offset:4095 ; encoding: [0xff,0x4f,0x50,0xdc,0x00,0x00,0x00,0x00] +0xff,0x4f,0x50,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: scratch_load_dword v0, off, s0 offset:-4096 ; encoding: [0x00,0x50,0x50,0xdc,0x00,0x00,0x00,0x00] +0x00,0x50,0x50,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: scratch_store_short v0, v0, off offset:-1 ; encoding: [0xff,0x5f,0x68,0xdc,0x00,0x00,0x7f,0x00] +0xff,0x5f,0x68,0xdc,0x00,0x00,0x7f,0x00 + +# CHECK: scratch_store_short off, v0, s0 ; encoding: [0x00,0x40,0x68,0xdc,0x00,0x00,0x00,0x00] +0x00,0x40,0x68,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: scratch_store_short off, v0, s0 offset:4095 ; encoding: [0xff,0x4f,0x68,0xdc,0x00,0x00,0x00,0x00] +0xff,0x4f,0x68,0xdc,0x00,0x00,0x00,0x00 + +# CHECK: scratch_store_short off, v0, s0 offset:-4096 ; encoding: [0x00,0x50,0x68,0xdc,0x00,0x00,0x00,0x00] +0x00,0x50,0x68,0xdc,0x00,0x00,0x00,0x00 diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx9_mubuf.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_mubuf.txt --- a/llvm/test/MC/Disassembler/AMDGPU/gfx9_mubuf.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9_mubuf.txt @@ -3095,3 +3095,24 @@ # CHECK: buffer_atomic_dec_x2 v[5:6], off, s[8:11], s3 offset:4095 slc ; encoding: [0xff,0x0f,0xb2,0xe1,0x00,0x05,0x02,0x03] 0xff,0x0f,0xb2,0xe1,0x00,0x05,0x02,0x03 + +# CHECK: buffer_load_format_d16_hi_x v5, off, s[8:11], s3 offset:4095 glc slc ; encoding: [0xff,0x4f,0x9a,0xe0,0x00,0x05,0x02,0x03] +0xff,0x4f,0x9a,0xe0,0x00,0x05,0x02,0x03 + +# CHECK: buffer_load_format_d16_hi_x v5, v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x2f,0x98,0xe0,0x00,0x05,0x02,0x03] +0xff,0x2f,0x98,0xe0,0x00,0x05,0x02,0x03 + +# CHECK: buffer_load_format_d16_hi_x v5, v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x1f,0x98,0xe0,0x00,0x05,0x02,0x03] +0xff,0x1f,0x98,0xe0,0x00,0x05,0x02,0x03 + +# CHECK: buffer_store_format_d16_hi_x v1, v0, s[12:15], s4 idxen offset:4095 ; encoding: [0xff,0x2f,0x9c,0xe0,0x00,0x01,0x03,0x04] +0xff,0x2f,0x9c,0xe0,0x00,0x01,0x03,0x04 + +# CHECK: buffer_store_format_d16_hi_x v1, v0, s[12:15], s4 offen offset:4095 ; encoding: [0xff,0x1f,0x9c,0xe0,0x00,0x01,0x03,0x04] +0xff,0x1f,0x9c,0xe0,0x00,0x01,0x03,0x04 + +# CHECK: buffer_store_format_d16_hi_x v1, off, s[12:15], s4 offset:4095 glc ; encoding: [0xff,0x4f,0x9c,0xe0,0x00,0x01,0x03,0x04] +0xff,0x4f,0x9c,0xe0,0x00,0x01,0x03,0x04 + +# CHECK: buffer_store_format_d16_hi_x v1, off, s[12:15], s4 offset:4095 slc ; encoding: [0xff,0x0f,0x9e,0xe0,0x00,0x01,0x03,0x04] +0xff,0x0f,0x9e,0xe0,0x00,0x01,0x03,0x04 diff --git a/llvm/test/MC/Disassembler/AMDGPU/sdwa_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_sdwa_features.txt rename from llvm/test/MC/Disassembler/AMDGPU/sdwa_gfx9.txt rename to llvm/test/MC/Disassembler/AMDGPU/gfx9_sdwa_features.txt diff --git a/llvm/test/MC/Disassembler/AMDGPU/smem_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_smem_features.txt rename from llvm/test/MC/Disassembler/AMDGPU/smem_gfx9.txt rename to llvm/test/MC/Disassembler/AMDGPU/gfx9_smem_features.txt diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx9_sop1.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_sop1.txt --- a/llvm/test/MC/Disassembler/AMDGPU/gfx9_sop1.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9_sop1.txt @@ -2648,3 +2648,36 @@ # CHECK: s_set_gpr_idx_idx 0x3f717273 ; encoding: [0xff,0x32,0x80,0xbe,0x73,0x72,0x71,0x3f] 0xff,0x32,0x80,0xbe,0x73,0x72,0x71,0x3f + +# CHECK: s_andn1_saveexec_b64 s[10:11], s[2:3] ; encoding: [0x02,0x33,0x8a,0xbe] +0x02,0x33,0x8a,0xbe + +# CHECK: s_andn1_saveexec_b64 s[10:11], 0 ; encoding: [0x80,0x33,0x8a,0xbe] +0x80,0x33,0x8a,0xbe + +# CHECK: s_andn1_wrexec_b64 s[100:101], s[2:3] ; encoding: [0x02,0x35,0xe4,0xbe] +0x02,0x35,0xe4,0xbe + +# CHECK: s_andn1_wrexec_b64 s[10:11], 0xaf123456 ; encoding: [0xff,0x35,0x8a,0xbe,0x56,0x34,0x12,0xaf] +0xff,0x35,0x8a,0xbe,0x56,0x34,0x12,0xaf + +# CHECK: s_andn2_wrexec_b64 s[10:11], s[100:101] ; encoding: [0x64,0x36,0x8a,0xbe] +0x64,0x36,0x8a,0xbe + +# CHECK: s_andn2_wrexec_b64 s[10:11], -1 ; encoding: [0xc1,0x36,0x8a,0xbe] +0xc1,0x36,0x8a,0xbe + +# CHECK: s_orn1_saveexec_b64 s[10:11], -1 ; encoding: [0xc1,0x34,0x8a,0xbe] +0xc1,0x34,0x8a,0xbe + +# CHECK: s_orn1_saveexec_b64 s[10:11], 0x3f717273 ; encoding: [0xff,0x34,0x8a,0xbe,0x73,0x72,0x71,0x3f] +0xff,0x34,0x8a,0xbe,0x73,0x72,0x71,0x3f + +# CHECK: s_bitreplicate_b64_b32 s[10:11], s101 ; encoding: [0x65,0x37,0x8a,0xbe] +0x65,0x37,0x8a,0xbe + +# CHECK: s_bitreplicate_b64_b32 s[10:11], 0 ; encoding: [0x80,0x37,0x8a,0xbe] +0x80,0x37,0x8a,0xbe + +# CHECK: s_bitreplicate_b64_b32 s[10:11], 0xaf123456 ; encoding: [0xff,0x37,0x8a,0xbe,0x56,0x34,0x12,0xaf] +0xff,0x37,0x8a,0xbe,0x56,0x34,0x12,0xaf diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx9_sop2.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_sop2.txt --- a/llvm/test/MC/Disassembler/AMDGPU/gfx9_sop2.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9_sop2.txt @@ -4787,3 +4787,30 @@ # CHECK: s_pack_hh_b32_b16 s5, s1, 0x3f717273 ; encoding: [0x01,0xff,0x05,0x9a,0x73,0x72,0x71,0x3f] 0x01,0xff,0x05,0x9a,0x73,0x72,0x71,0x3f + +# CHECK: s_lshl1_add_u32 s5, 0, s2 ; encoding: [0x80,0x02,0x05,0x97] +0x80,0x02,0x05,0x97 + +# CHECK: s_lshl2_add_u32 s5, 0xaf123456, s2 ; encoding: [0xff,0x02,0x85,0x97,0x56,0x34,0x12,0xaf] +0xff,0x02,0x85,0x97,0x56,0x34,0x12,0xaf + +# CHECK: s_lshl3_add_u32 s5, s1, -1 ; encoding: [0x01,0xc1,0x05,0x98] +0x01,0xc1,0x05,0x98 + +# CHECK: s_lshl4_add_u32 s5, s1, 0xaf123456 ; encoding: [0x01,0xff,0x85,0x98,0x56,0x34,0x12,0xaf] +0x01,0xff,0x85,0x98,0x56,0x34,0x12,0xaf + +# CHECK: s_mul_hi_i32 s5, s101, s2 ; encoding: [0x65,0x02,0x85,0x96] +0x65,0x02,0x85,0x96 + +# CHECK: s_mul_hi_i32 s5, 0, s2 ; encoding: [0x80,0x02,0x85,0x96] +0x80,0x02,0x85,0x96 + +# CHECK: s_mul_hi_i32 s5, 0xaf123456, s2 ; encoding: [0xff,0x02,0x85,0x96,0x56,0x34,0x12,0xaf] +0xff,0x02,0x85,0x96,0x56,0x34,0x12,0xaf + +# CHECK: s_mul_hi_u32 s5, s1, -1 ; encoding: [0x01,0xc1,0x05,0x96] +0x01,0xc1,0x05,0x96 + +# CHECK: s_mul_hi_u32 s5, s1, 0xaf123456 ; encoding: [0x01,0xff,0x05,0x96,0x56,0x34,0x12,0xaf] +0x01,0xff,0x05,0x96,0x56,0x34,0x12,0xaf diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx9_sopk.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_sopk.txt --- a/llvm/test/MC/Disassembler/AMDGPU/gfx9_sopk.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9_sopk.txt @@ -569,3 +569,15 @@ # CHECK: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 5, 7), 0xa1b1c1d1 ; encoding: [0x41,0x31,0x00,0xba,0xd1,0xc1,0xb1,0xa1] 0x41,0x31,0x00,0xba,0xd1,0xc1,0xb1,0xa1 + +# CHECK: s_endpgm_ordered_ps_done ; encoding: [0x00,0x00,0x9e,0xbf] +0x00,0x00,0x9e,0xbf + +# CHECK: s_call_b64 s[10:11], 12609 ; encoding: [0x41,0x31,0x8a,0xba] +0x41,0x31,0x8a,0xba + +# CHECK: s_call_b64 s[100:101], 12609 ; encoding: [0x41,0x31,0xe4,0xba] +0x41,0x31,0xe4,0xba + +# CHECK: s_call_b64 s[10:11], 49617 ; encoding: [0xd1,0xc1,0x8a,0xba] +0xd1,0xc1,0x8a,0xba diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt --- a/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt @@ -3692,3 +3692,33 @@ # CHECK: v_swap_b32 v5, v255 ; encoding: [0xff,0xa3,0x0a,0x7e] 0xff,0xa3,0x0a,0x7e + +# CHECK: v_swap_b32 v1, v2 ; encoding: [0x02,0xa3,0x02,0x7e] +0x02 0xa3 0x02 0x7e + +# CHECK: v_cvt_norm_i16_f16_e32 v255, v1 ; encoding: [0x01,0x9b,0xfe,0x7f] +0x01,0x9b,0xfe,0x7f + +# CHECK: v_cvt_norm_i16_f16_e32 v5, 0.5 ; encoding: [0xf0,0x9a,0x0a,0x7e] +0xf0,0x9a,0x0a,0x7e + +# CHECK: v_cvt_norm_i16_f16_e32 v5, 0x3456 ; encoding: [0xff,0x9a,0x0a,0x7e,0x56,0x34,0x00,0x00] +0xff,0x9a,0x0a,0x7e,0x56,0x34,0x00,0x00 + +# CHECK: v_cvt_norm_u16_f16_e32 v5, s101 ; encoding: [0x65,0x9c,0x0a,0x7e] +0x65,0x9c,0x0a,0x7e + +# CHECK: v_sat_pk_u8_i16_e32 v5, v255 ; encoding: [0xff,0x9f,0x0a,0x7e] +0xff,0x9f,0x0a,0x7e + +# CHECK: v_sat_pk_u8_i16_e32 v5, -1 ; encoding: [0xc1,0x9e,0x0a,0x7e] +0xc1,0x9e,0x0a,0x7e + +# CHECK: v_sat_pk_u8_i16_e32 v5, 0x3f717273 ; encoding: [0xff,0x9e,0x0a,0x7e,0x73,0x72,0x71,0x3f] +0xff,0x9e,0x0a,0x7e,0x73,0x72,0x71,0x3f + +# CHECK: v_screen_partition_4se_b32_e32 v5, s101 ; encoding: [0x65,0x6e,0x0a,0x7e] +0x65,0x6e,0x0a,0x7e + +# CHECK: v_screen_partition_4se_b32_e32 v5, 0x3f717273 ; encoding: [0xff,0x6e,0x0a,0x7e,0x73,0x72,0x71,0x3f] +0xff,0x6e,0x0a,0x7e,0x73,0x72,0x71,0x3f diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1_dpp.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1_dpp.txt --- a/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1_dpp.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1_dpp.txt @@ -4283,3 +4283,6 @@ # CHECK: v_log_legacy_f32_dpp v5, |v1| quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x0 ; encoding: [0xfa,0x98,0x0a,0x7e,0x01,0xe4,0x20,0x00] 0xfa,0x98,0x0a,0x7e,0x01,0xe4,0x20,0x00 + +# CHECK: v_screen_partition_4se_b32_dpp v5, v1 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0xf ; encoding: [0xfa,0x6e,0x0a,0x7e,0x01,0xe4,0x00,0x0f] +0xfa,0x6e,0x0a,0x7e,0x01,0xe4,0x00,0x0f diff --git a/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt --- a/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt +++ b/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt @@ -22178,3 +22178,732 @@ # CHECK: v_pack_b32_f16 v5, v1, v2 op_sel:[1,1,1] ; encoding: [0x05,0x58,0xa0,0xd2,0x01,0x05,0x02,0x00] 0x05,0x58,0xa0,0xd2,0x01,0x05,0x02,0x00 + +# CHECK: v_fma_f16 v5, v1, v2, v3 ; encoding: [0x05,0x00,0x06,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x00,0x06,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_fma_f16 v5, -v1, v2, v3 ; encoding: [0x05,0x00,0x06,0xd2,0x01,0x05,0x0e,0x24] +0x05,0x00,0x06,0xd2,0x01,0x05,0x0e,0x24 + +# CHECK: v_fma_f16 v5, v1, |v2|, v3 ; encoding: [0x05,0x02,0x06,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x02,0x06,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_fma_f16 v5, v1, v2, v3 op_sel:[1,0,0,0] ; encoding: [0x05,0x08,0x06,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x08,0x06,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_fma_f16 v5, v1, v2, v3 op_sel:[1,1,1,1] ; encoding: [0x05,0x78,0x06,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x78,0x06,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_fma_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x06,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x80,0x06,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_fma_legacy_f16 v5, v1, v2, v3 ; encoding: [0x05,0x00,0xee,0xd1,0x01,0x05,0x0e,0x04] +0x05,0x00,0xee,0xd1,0x01,0x05,0x0e,0x04 + +# CHECK: v_fma_legacy_f16 v5, v1, v2, -v3 ; encoding: [0x05,0x00,0xee,0xd1,0x01,0x05,0x0e,0x84] +0x05,0x00,0xee,0xd1,0x01,0x05,0x0e,0x84 + +# CHECK: v_fma_legacy_f16 v5, |v1|, v2, v3 ; encoding: [0x05,0x01,0xee,0xd1,0x01,0x05,0x0e,0x04] +0x05,0x01,0xee,0xd1,0x01,0x05,0x0e,0x04 + +# CHECK: v_fma_legacy_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xee,0xd1,0x01,0x05,0x0e,0x04] +0x05,0x80,0xee,0xd1,0x01,0x05,0x0e,0x04 + +# CHECK: v_div_fixup_f16 v5, 0.5, v2, v3 ; encoding: [0x05,0x00,0x07,0xd2,0xf0,0x04,0x0e,0x04] +0x05,0x00,0x07,0xd2,0xf0,0x04,0x0e,0x04 + +# CHECK: v_div_fixup_f16 v5, v1, 0.5, v3 ; encoding: [0x05,0x00,0x07,0xd2,0x01,0xe1,0x0d,0x04] +0x05,0x00,0x07,0xd2,0x01,0xe1,0x0d,0x04 + +# CHECK: v_div_fixup_f16 v5, v1, v2, 0.5 ; encoding: [0x05,0x00,0x07,0xd2,0x01,0x05,0xc2,0x03] +0x05,0x00,0x07,0xd2,0x01,0x05,0xc2,0x03 + +# CHECK: v_div_fixup_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0x07,0xd2,0x01,0x05,0x0e,0xe4] +0x05,0x00,0x07,0xd2,0x01,0x05,0x0e,0xe4 + +# CHECK: v_div_fixup_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0x07,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x07,0x07,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_div_fixup_f16 v5, v1, v2, v3 op_sel:[1,0,0,0] ; encoding: [0x05,0x08,0x07,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x08,0x07,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_div_fixup_f16 v5, v1, v2, v3 op_sel:[0,0,1,0] ; encoding: [0x05,0x20,0x07,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x20,0x07,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_div_fixup_f16 v5, v1, v2, v3 op_sel:[0,0,0,1] ; encoding: [0x05,0x40,0x07,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x40,0x07,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_div_fixup_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x07,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x80,0x07,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_div_fixup_legacy_f16 v5, 0.5, v2, v3 ; encoding: [0x05,0x00,0xef,0xd1,0xf0,0x04,0x0e,0x04] +0x05,0x00,0xef,0xd1,0xf0,0x04,0x0e,0x04 + +# CHECK: v_div_fixup_legacy_f16 v5, v1, 0.5, v3 ; encoding: [0x05,0x00,0xef,0xd1,0x01,0xe1,0x0d,0x04] +0x05,0x00,0xef,0xd1,0x01,0xe1,0x0d,0x04 + +# CHECK: v_div_fixup_legacy_f16 v5, v1, v2, 0.5 ; encoding: [0x05,0x00,0xef,0xd1,0x01,0x05,0xc2,0x03] +0x05,0x00,0xef,0xd1,0x01,0x05,0xc2,0x03 + +# CHECK: v_div_fixup_legacy_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xef,0xd1,0x01,0x05,0x0e,0xe4] +0x05,0x00,0xef,0xd1,0x01,0x05,0x0e,0xe4 + +# CHECK: v_div_fixup_legacy_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xef,0xd1,0x01,0x05,0x0e,0x04] +0x05,0x07,0xef,0xd1,0x01,0x05,0x0e,0x04 + +# CHECK: v_div_fixup_legacy_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xef,0xd1,0x01,0x05,0x0e,0x04] +0x05,0x80,0xef,0xd1,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_f16 v5, 0.5, v2, v3 ; encoding: [0x05,0x00,0x03,0xd2,0xf0,0x04,0x0e,0x04] +0x05,0x00,0x03,0xd2,0xf0,0x04,0x0e,0x04 + +# CHECK: v_mad_f16 v5, v1, 0.5, v3 ; encoding: [0x05,0x00,0x03,0xd2,0x01,0xe1,0x0d,0x04] +0x05,0x00,0x03,0xd2,0x01,0xe1,0x0d,0x04 + +# CHECK: v_mad_f16 v5, v1, v2, 0.5 ; encoding: [0x05,0x00,0x03,0xd2,0x01,0x05,0xc2,0x03] +0x05,0x00,0x03,0xd2,0x01,0x05,0xc2,0x03 + +# CHECK: v_mad_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0x03,0xd2,0x01,0x05,0x0e,0xe4] +0x05,0x00,0x03,0xd2,0x01,0x05,0x0e,0xe4 + +# CHECK: v_mad_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0x03,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x07,0x03,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_f16 v5, v1, v2, v3 op_sel:[1,0,0,0] ; encoding: [0x05,0x08,0x03,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x08,0x03,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_f16 v5, v1, v2, v3 op_sel:[0,1,0,0] ; encoding: [0x05,0x10,0x03,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x10,0x03,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_f16 v5, v1, v2, v3 op_sel:[0,0,1,0] ; encoding: [0x05,0x20,0x03,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x20,0x03,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_f16 v5, v1, v2, v3 op_sel:[0,0,0,1] ; encoding: [0x05,0x40,0x03,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x40,0x03,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_f16 v5, v1, v2, v3 op_sel:[1,1,1,1] ; encoding: [0x05,0x78,0x03,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x78,0x03,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x03,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x80,0x03,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_i16 v5, 0, v2, v3 ; encoding: [0x05,0x00,0x05,0xd2,0x80,0x04,0x0e,0x04] +0x05,0x00,0x05,0xd2,0x80,0x04,0x0e,0x04 + +# CHECK: v_mad_i16 v5, v1, -1, v3 ; encoding: [0x05,0x00,0x05,0xd2,0x01,0x83,0x0d,0x04] +0x05,0x00,0x05,0xd2,0x01,0x83,0x0d,0x04 + +# CHECK: v_mad_i16 v5, v1, v2, 63 ; encoding: [0x05,0x00,0x05,0xd2,0x01,0x05,0xfe,0x02] +0x05,0x00,0x05,0xd2,0x01,0x05,0xfe,0x02 + +# CHECK: v_mad_i16 v5, v1, v2, v3 op_sel:[0,0,0,1] ; encoding: [0x05,0x40,0x05,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x40,0x05,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_i16 v5, v1, v2, v3 op_sel:[1,1,1,1] ; encoding: [0x05,0x78,0x05,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x78,0x05,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_i16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x05,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x80,0x05,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_legacy_f16 v5, 0.5, v2, v3 ; encoding: [0x05,0x00,0xea,0xd1,0xf0,0x04,0x0e,0x04] +0x05,0x00,0xea,0xd1,0xf0,0x04,0x0e,0x04 + +# CHECK: v_mad_legacy_f16 v5, v1, 0.5, v3 ; encoding: [0x05,0x00,0xea,0xd1,0x01,0xe1,0x0d,0x04] +0x05,0x00,0xea,0xd1,0x01,0xe1,0x0d,0x04 + +# CHECK: v_mad_legacy_f16 v5, v1, v2, 0.5 ; encoding: [0x05,0x00,0xea,0xd1,0x01,0x05,0xc2,0x03] +0x05,0x00,0xea,0xd1,0x01,0x05,0xc2,0x03 + +# CHECK: v_mad_legacy_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xea,0xd1,0x01,0x05,0x0e,0xe4] +0x05,0x00,0xea,0xd1,0x01,0x05,0x0e,0xe4 + +# CHECK: v_mad_legacy_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xea,0xd1,0x01,0x05,0x0e,0x04] +0x05,0x07,0xea,0xd1,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_legacy_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xea,0xd1,0x01,0x05,0x0e,0x04] +0x05,0x80,0xea,0xd1,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_legacy_i16 v5, 0, v2, v3 ; encoding: [0x05,0x00,0xec,0xd1,0x80,0x04,0x0e,0x04] +0x05,0x00,0xec,0xd1,0x80,0x04,0x0e,0x04 + +# CHECK: v_mad_legacy_i16 v5, v1, -1, v3 ; encoding: [0x05,0x00,0xec,0xd1,0x01,0x83,0x0d,0x04] +0x05,0x00,0xec,0xd1,0x01,0x83,0x0d,0x04 + +# CHECK: v_mad_legacy_i16 v5, v1, v2, 0xc400 ; encoding: [0x05,0x00,0xec,0xd1,0x01,0x05,0xfe,0x03] +0x05,0x00,0xec,0xd1,0x01,0x05,0xde,0x03 + +# CHECK: v_mad_legacy_i16 v5, v1, v2, 0xc400 clamp ; encoding: [0x05,0x80,0xec,0xd1,0x01,0x05,0xfe,0x03] +0x05,0x80,0xec,0xd1,0x01,0x05,0xde,0x03 + +# CHECK: v_mad_legacy_u16 v5, 0, v2, v3 ; encoding: [0x05,0x00,0xeb,0xd1,0x80,0x04,0x0e,0x04] +0x05,0x00,0xeb,0xd1,0x80,0x04,0x0e,0x04 + +# CHECK: v_mad_legacy_u16 v5, v1, -1, v3 ; encoding: [0x05,0x00,0xeb,0xd1,0x01,0x83,0x0d,0x04] +0x05,0x00,0xeb,0xd1,0x01,0x83,0x0d,0x04 + +# CHECK: v_mad_legacy_u16 v5, v1, v2, 0xc400 ; encoding: [0x05,0x00,0xeb,0xd1,0x01,0x05,0xfe,0x03] +0x05,0x00,0xeb,0xd1,0x01,0x05,0xde,0x03 + +# CHECK: v_mad_legacy_u16 v5, v1, v2, 0xc400 clamp ; encoding: [0x05,0x80,0xeb,0xd1,0x01,0x05,0xfe,0x03] +0x05,0x80,0xeb,0xd1,0x01,0x05,0xde,0x03 + +# CHECK: v_mad_u16 v5, 0, v2, v3 ; encoding: [0x05,0x00,0x04,0xd2,0x80,0x04,0x0e,0x04] +0x05,0x00,0x04,0xd2,0x80,0x04,0x0e,0x04 + +# CHECK: v_mad_u16 v5, v1, -1, v3 ; encoding: [0x05,0x00,0x04,0xd2,0x01,0x83,0x0d,0x04] +0x05,0x00,0x04,0xd2,0x01,0x83,0x0d,0x04 + +# CHECK: v_mad_u16 v5, v1, v2, 63 ; encoding: [0x05,0x00,0x04,0xd2,0x01,0x05,0xfe,0x02] +0x05,0x00,0x04,0xd2,0x01,0x05,0xfe,0x02 + +# CHECK: v_mad_u16 v5, v1, v2, v3 op_sel:[1,0,0,0] ; encoding: [0x05,0x08,0x04,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x08,0x04,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_u16 v5, v1, v2, v3 op_sel:[0,0,0,1] ; encoding: [0x05,0x40,0x04,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x40,0x04,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_u16 v5, v1, v2, v3 op_sel:[1,1,1,1] ; encoding: [0x05,0x78,0x04,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x78,0x04,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_u16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x04,0xd2,0x01,0x05,0x0e,0x04] +0x05,0x80,0x04,0xd2,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v255, v1, v2, v3 ; encoding: [0xff,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0xff,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v255, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0xff,0x05,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0xff,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, s1, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x01,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, s101, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x65,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x65,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, flat_scratch_lo, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x66,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x66,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, flat_scratch_hi, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x67,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x67,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, xnack_mask_hi, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x69,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x69,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, vcc_lo, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x6a,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x6a,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, vcc_hi, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x6b,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x6b,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, m0, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x7c,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x7c,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, exec_lo, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x7e,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x7e,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, exec_hi, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x7f,0x04,0x0e,0x04] +0x05,0x00,0xa0,0xd3,0x7f,0x04,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v255, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xff,0x0f,0x04] +0x05,0x00,0xa0,0xd3,0x01,0xff,0x0f,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, s2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0c,0x04] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x0c,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, s101, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xcb,0x0c,0x04] +0x05,0x00,0xa0,0xd3,0x01,0xcb,0x0c,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, flat_scratch_lo, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xcd,0x0c,0x04] +0x05,0x00,0xa0,0xd3,0x01,0xcd,0x0c,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, flat_scratch_hi, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xcf,0x0c,0x04] +0x05,0x00,0xa0,0xd3,0x01,0xcf,0x0c,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, vcc_lo, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xd5,0x0c,0x04] +0x05,0x00,0xa0,0xd3,0x01,0xd5,0x0c,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, vcc_hi, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xd7,0x0c,0x04] +0x05,0x00,0xa0,0xd3,0x01,0xd7,0x0c,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, m0, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xf9,0x0c,0x04] +0x05,0x00,0xa0,0xd3,0x01,0xf9,0x0c,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, exec_lo, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xfd,0x0c,0x04] +0x05,0x00,0xa0,0xd3,0x01,0xfd,0x0c,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, exec_hi, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xff,0x0c,0x04] +0x05,0x00,0xa0,0xd3,0x01,0xff,0x0c,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v255 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xfe,0x07] +0x05,0x00,0xa0,0xd3,0x01,0x05,0xfe,0x07 + +# CHECK: v_mad_mix_f32 v5, v1, v2, s3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x00] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x00 + +# CHECK: v_mad_mix_f32 v5, v1, v2, s101 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x96,0x01] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x96,0x01 + +# CHECK: v_mad_mix_f32 v5, v1, v2, flat_scratch_lo ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x9a,0x01] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x9a,0x01 + +# CHECK: v_mad_mix_f32 v5, v1, v2, flat_scratch_hi ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x9e,0x01] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x9e,0x01 + +# CHECK: v_mad_mix_f32 v5, v1, v2, vcc_lo ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xaa,0x01] +0x05,0x00,0xa0,0xd3,0x01,0x05,0xaa,0x01 + +# CHECK: v_mad_mix_f32 v5, v1, v2, vcc_hi ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xae,0x01] +0x05,0x00,0xa0,0xd3,0x01,0x05,0xae,0x01 + +# CHECK: v_mad_mix_f32 v5, v1, v2, m0 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xf2,0x01] +0x05,0x00,0xa0,0xd3,0x01,0x05,0xf2,0x01 + +# CHECK: v_mad_mix_f32 v5, v1, v2, exec_lo ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xfa,0x01] +0x05,0x00,0xa0,0xd3,0x01,0x05,0xfa,0x01 + +# CHECK: v_mad_mix_f32 v5, v1, v2, exec_hi ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xfe,0x01] +0x05,0x00,0xa0,0xd3,0x01,0x05,0xfe,0x01 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 op_sel:[1,0,0] ; encoding: [0x05,0x08,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x08,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 op_sel:[0,1,0] ; encoding: [0x05,0x10,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x10,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 op_sel:[0,0,1] ; encoding: [0x05,0x20,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x20,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 op_sel:[1,1,1] ; encoding: [0x05,0x38,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x38,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 op_sel_hi:[1,0,0] ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x0c] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x0c + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x14] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x14 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x40,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 op_sel_hi:[1,1,1] ; encoding: [0x05,0x40,0xa0,0xd3,0x01,0x05,0x0e,0x1c] +0x05,0x40,0xa0,0xd3,0x01,0x05,0x0e,0x1c + +# CHECK: v_mad_mix_f32 v5, -v1, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x24] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x24 + +# CHECK: v_mad_mix_f32 v5, v1, -v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x44] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x44 + +# CHECK: v_mad_mix_f32 v5, v1, v2, -v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x84] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x84 + +# CHECK: v_mad_mix_f32 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0xe4] +0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0xe4 + +# CHECK: v_mad_mix_f32 v5, |v1|, v2, v3 ; encoding: [0x05,0x01,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x01,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, |v2|, v3 ; encoding: [0x05,0x02,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x02,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v2, |v3| ; encoding: [0x05,0x04,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x04,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x07,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mix_f32 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xa0,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x80,0xa0,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v255, v1, v2, v3 ; encoding: [0xff,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0xff,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v255, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0xff,0x05,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0xff,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, s1, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x04,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x01,0x04,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, s101, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x65,0x04,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x65,0x04,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, flat_scratch_lo, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x66,0x04,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x66,0x04,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, flat_scratch_hi, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x67,0x04,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x67,0x04,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, vcc_lo, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x6a,0x04,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x6a,0x04,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, vcc_hi, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x6b,0x04,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x6b,0x04,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, m0, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x7c,0x04,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x7c,0x04,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, exec_lo, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x7e,0x04,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x7e,0x04,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, exec_hi, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x7f,0x04,0x0e,0x04] +0x05,0x00,0xa2,0xd3,0x7f,0x04,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v255, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xff,0x0f,0x04] +0x05,0x00,0xa2,0xd3,0x01,0xff,0x0f,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, s2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0c,0x04] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x0c,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, s101, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xcb,0x0c,0x04] +0x05,0x00,0xa2,0xd3,0x01,0xcb,0x0c,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, flat_scratch_lo, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xcd,0x0c,0x04] +0x05,0x00,0xa2,0xd3,0x01,0xcd,0x0c,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, flat_scratch_hi, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xcf,0x0c,0x04] +0x05,0x00,0xa2,0xd3,0x01,0xcf,0x0c,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, vcc_lo, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xd5,0x0c,0x04] +0x05,0x00,0xa2,0xd3,0x01,0xd5,0x0c,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, vcc_hi, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xd7,0x0c,0x04] +0x05,0x00,0xa2,0xd3,0x01,0xd7,0x0c,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, m0, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xf9,0x0c,0x04] +0x05,0x00,0xa2,0xd3,0x01,0xf9,0x0c,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, exec_lo, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xfd,0x0c,0x04] +0x05,0x00,0xa2,0xd3,0x01,0xfd,0x0c,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, exec_hi, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xff,0x0c,0x04] +0x05,0x00,0xa2,0xd3,0x01,0xff,0x0c,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v255 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xfe,0x07] +0x05,0x00,0xa2,0xd3,0x01,0x05,0xfe,0x07 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x00] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x00 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, s101 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x96,0x01] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x96,0x01 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, flat_scratch_lo ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x9a,0x01] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x9a,0x01 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, flat_scratch_hi ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x9e,0x01] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x9e,0x01 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, vcc_lo ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xaa,0x01] +0x05,0x00,0xa2,0xd3,0x01,0x05,0xaa,0x01 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, vcc_hi ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xae,0x01] +0x05,0x00,0xa2,0xd3,0x01,0x05,0xae,0x01 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, m0 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xf2,0x01] +0x05,0x00,0xa2,0xd3,0x01,0x05,0xf2,0x01 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, exec_lo ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xfa,0x01] +0x05,0x00,0xa2,0xd3,0x01,0x05,0xfa,0x01 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, exec_hi ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xfe,0x01] +0x05,0x00,0xa2,0xd3,0x01,0x05,0xfe,0x01 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel:[1,0,0] ; encoding: [0x05,0x08,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x08,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel:[0,1,0] ; encoding: [0x05,0x10,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x10,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel:[0,0,1] ; encoding: [0x05,0x20,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x20,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel:[1,1,1] ; encoding: [0x05,0x38,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x38,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel_hi:[1,0,0] ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x0c] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x0c + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x14] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x14 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x40,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel_hi:[1,1,1] ; encoding: [0x05,0x40,0xa2,0xd3,0x01,0x05,0x0e,0x1c] +0x05,0x40,0xa2,0xd3,0x01,0x05,0x0e,0x1c + +# CHECK: v_mad_mixhi_f16 v5, -v1, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x24] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x24 + +# CHECK: v_mad_mixhi_f16 v5, v1, -v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x44] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x44 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, -v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x84] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x84 + +# CHECK: v_mad_mixhi_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0xe4] +0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0xe4 + +# CHECK: v_mad_mixhi_f16 v5, |v1|, v2, v3 ; encoding: [0x05,0x01,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x01,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, |v2|, v3 ; encoding: [0x05,0x02,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x02,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, |v3| ; encoding: [0x05,0x04,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x04,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x07,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixhi_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xa2,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x80,0xa2,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v255, v1, v2, v3 ; encoding: [0xff,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0xff,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v255, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0xff,0x05,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0xff,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, s1, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x04,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x01,0x04,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, s101, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x65,0x04,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x65,0x04,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, flat_scratch_lo, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x66,0x04,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x66,0x04,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, flat_scratch_hi, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x67,0x04,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x67,0x04,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, vcc_lo, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x6a,0x04,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x6a,0x04,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, vcc_hi, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x6b,0x04,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x6b,0x04,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, m0, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x7c,0x04,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x7c,0x04,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, exec_lo, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x7e,0x04,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x7e,0x04,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, exec_hi, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x7f,0x04,0x0e,0x04] +0x05,0x00,0xa1,0xd3,0x7f,0x04,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v255, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xff,0x0f,0x04] +0x05,0x00,0xa1,0xd3,0x01,0xff,0x0f,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, s2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0c,0x04] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x0c,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, s101, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xcb,0x0c,0x04] +0x05,0x00,0xa1,0xd3,0x01,0xcb,0x0c,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, flat_scratch_lo, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xcd,0x0c,0x04] +0x05,0x00,0xa1,0xd3,0x01,0xcd,0x0c,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, flat_scratch_hi, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xcf,0x0c,0x04] +0x05,0x00,0xa1,0xd3,0x01,0xcf,0x0c,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, vcc_lo, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xd5,0x0c,0x04] +0x05,0x00,0xa1,0xd3,0x01,0xd5,0x0c,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, vcc_hi, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xd7,0x0c,0x04] +0x05,0x00,0xa1,0xd3,0x01,0xd7,0x0c,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, m0, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xf9,0x0c,0x04] +0x05,0x00,0xa1,0xd3,0x01,0xf9,0x0c,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, exec_lo, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xfd,0x0c,0x04] +0x05,0x00,0xa1,0xd3,0x01,0xfd,0x0c,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, exec_hi, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xff,0x0c,0x04] +0x05,0x00,0xa1,0xd3,0x01,0xff,0x0c,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v255 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xfe,0x07] +0x05,0x00,0xa1,0xd3,0x01,0x05,0xfe,0x07 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x00] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x00 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, s101 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x96,0x01] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x96,0x01 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, flat_scratch_lo ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x9a,0x01] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x9a,0x01 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, flat_scratch_hi ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x9e,0x01] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x9e,0x01 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, vcc_lo ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xaa,0x01] +0x05,0x00,0xa1,0xd3,0x01,0x05,0xaa,0x01 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, vcc_hi ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xae,0x01] +0x05,0x00,0xa1,0xd3,0x01,0x05,0xae,0x01 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, m0 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xf2,0x01] +0x05,0x00,0xa1,0xd3,0x01,0x05,0xf2,0x01 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, exec_lo ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xfa,0x01] +0x05,0x00,0xa1,0xd3,0x01,0x05,0xfa,0x01 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, exec_hi ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xfe,0x01] +0x05,0x00,0xa1,0xd3,0x01,0x05,0xfe,0x01 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel:[1,0,0] ; encoding: [0x05,0x08,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x08,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel:[0,1,0] ; encoding: [0x05,0x10,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x10,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel:[0,0,1] ; encoding: [0x05,0x20,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x20,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel:[1,1,1] ; encoding: [0x05,0x38,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x38,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel_hi:[1,0,0] ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x0c] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x0c + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x14] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x14 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x40,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel_hi:[1,1,1] ; encoding: [0x05,0x40,0xa1,0xd3,0x01,0x05,0x0e,0x1c] +0x05,0x40,0xa1,0xd3,0x01,0x05,0x0e,0x1c + +# CHECK: v_mad_mixlo_f16 v5, -v1, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x24] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x24 + +# CHECK: v_mad_mixlo_f16 v5, v1, -v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x44] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x44 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, -v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x84] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x84 + +# CHECK: v_mad_mixlo_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0xe4] +0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0xe4 + +# CHECK: v_mad_mixlo_f16 v5, |v1|, v2, v3 ; encoding: [0x05,0x01,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x01,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, |v2|, v3 ; encoding: [0x05,0x02,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x02,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, |v3| ; encoding: [0x05,0x04,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x04,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x07,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_mad_mixlo_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xa1,0xd3,0x01,0x05,0x0e,0x04] +0x05,0x80,0xa1,0xd3,0x01,0x05,0x0e,0x04 + +# CHECK: v_interp_p2_f16 v5, v2, attr0.x, v3 ; encoding: [0x05,0x00,0x77,0xd2,0x00,0x04,0x0e,0x04] +0x05,0x00,0x77,0xd2,0x00,0x04,0x0e,0x04 + +# CHECK: v_interp_p2_f16 v5, -v2, attr0.x, v3 ; encoding: [0x05,0x00,0x77,0xd2,0x00,0x04,0x0e,0x44] +0x05,0x00,0x77,0xd2,0x00,0x04,0x0e,0x44 + +# CHECK: v_interp_p2_f16 v5, v2, attr0.x, |v3| ; encoding: [0x05,0x04,0x77,0xd2,0x00,0x04,0x0e,0x04] +0x05,0x04,0x77,0xd2,0x00,0x04,0x0e,0x04 + +# CHECK: v_interp_p2_f16 v5, v2, attr0.w, v3 ; encoding: [0x05,0x00,0x77,0xd2,0xc0,0x04,0x0e,0x04] +0x05,0x00,0x77,0xd2,0xc0,0x04,0x0e,0x04 + +# CHECK: v_interp_p2_f16 v5, v2, attr0.x, v3 high ; encoding: [0x05,0x00,0x77,0xd2,0x00,0x05,0x0e,0x04] +0x05,0x00,0x77,0xd2,0x00,0x05,0x0e,0x04 + +# CHECK: v_interp_p2_f16 v5, v2, attr0.x, v3 clamp ; encoding: [0x05,0x80,0x77,0xd2,0x00,0x04,0x0e,0x04] +0x05,0x80,0x77,0xd2,0x00,0x04,0x0e,0x04 + +# CHECK: v_interp_p2_legacy_f16 v5, v2, attr31.x, v3 ; encoding: [0x05,0x00,0x76,0xd2,0x1f,0x04,0x0e,0x04] +0x05,0x00,0x76,0xd2,0x1f,0x04,0x0e,0x04 + +# CHECK: v_interp_p2_legacy_f16 v5, -v2, attr0.x, v3 ; encoding: [0x05,0x00,0x76,0xd2,0x00,0x04,0x0e,0x44] +0x05,0x00,0x76,0xd2,0x00,0x04,0x0e,0x44 + +# CHECK: v_interp_p2_legacy_f16 v5, v2, attr0.x, |v3| ; encoding: [0x05,0x04,0x76,0xd2,0x00,0x04,0x0e,0x04] +0x05,0x04,0x76,0xd2,0x00,0x04,0x0e,0x04 + +# CHECK: v_interp_p2_legacy_f16 v5, v2, attr0.w, v3 ; encoding: [0x05,0x00,0x76,0xd2,0xc0,0x04,0x0e,0x04] +0x05,0x00,0x76,0xd2,0xc0,0x04,0x0e,0x04 + +# CHECK: v_interp_p2_legacy_f16 v5, v2, attr0.x, v3 high ; encoding: [0x05,0x00,0x76,0xd2,0x00,0x05,0x0e,0x04] +0x05,0x00,0x76,0xd2,0x00,0x05,0x0e,0x04 + +# CHECK: v_interp_p2_legacy_f16 v5, v2, attr0.x, v3 clamp ; encoding: [0x05,0x80,0x76,0xd2,0x00,0x04,0x0e,0x04] +0x05,0x80,0x76,0xd2,0x00,0x04,0x0e,0x04 + +# CHECK: v_add_f64 v[5:6], xnack_mask, v[2:3] ; encoding: [0x05,0x00,0x80,0xd2,0x68,0x04,0x02,0x00] +0x05,0x00,0x80,0xd2,0x68,0x04,0x02,0x00 + +# CHECK: v_cvt_norm_i16_f16_e64 v5, -4.0 ; encoding: [0x05,0x00,0x8d,0xd1,0xf7,0x00,0x00,0x00] +0x05,0x00,0x8d,0xd1,0xf7,0x00,0x00,0x00 + +# CHECK: v_cvt_norm_i16_f16_e64 v5, -v1 ; encoding: [0x05,0x00,0x8d,0xd1,0x01,0x01,0x00,0x20] +0x05,0x00,0x8d,0xd1,0x01,0x01,0x00,0x20 + +# CHECK: v_cvt_norm_i16_f16_e64 v5, |v1| ; encoding: [0x05,0x01,0x8d,0xd1,0x01,0x01,0x00,0x00] +0x05,0x01,0x8d,0xd1,0x01,0x01,0x00,0x00 + +# CHECK: v_cvt_norm_u16_f16_e64 v255, v1 ; encoding: [0xff,0x00,0x8e,0xd1,0x01,0x01,0x00,0x00] +0xff,0x00,0x8e,0xd1,0x01,0x01,0x00,0x00 + +# CHECK: v_cvt_norm_u16_f16_e64 v5, v255 ; encoding: [0x05,0x00,0x8e,0xd1,0xff,0x01,0x00,0x00] +0x05,0x00,0x8e,0xd1,0xff,0x01,0x00,0x00 + +# CHECK: v_sat_pk_u8_i16_e64 v5, -1 ; encoding: [0x05,0x00,0x8f,0xd1,0xc1,0x00,0x00,0x00] +0x05,0x00,0x8f,0xd1,0xc1,0x00,0x00,0x00 + +# CHECK: v_sat_pk_u8_i16_e64 v255, v1 ; encoding: [0xff,0x00,0x8f,0xd1,0x01,0x01,0x00,0x00] +0xff,0x00,0x8f,0xd1,0x01,0x01,0x00,0x00 + +# CHECK: v_screen_partition_4se_b32_e64 v5, v1 ; encoding: [0x05,0x00,0x77,0xd1,0x01,0x01,0x00,0x00] +0x05,0x00,0x77,0xd1,0x01,0x01,0x00,0x00 + +# CHECK: v_add_u32_e64 v84, v13, s31 clamp ; encoding: [0x54,0x80,0x34,0xd1,0x0d,0x3f,0x00,0x00] +0x54,0x80,0x34,0xd1,0x0d,0x3f,0x00,0x00 + +# CHECK: v_sub_u32_e64 v84, v13, s31 clamp ; encoding: [0x54,0x80,0x35,0xd1,0x0d,0x3f,0x00,0x00] +0x54,0x80,0x35,0xd1,0x0d,0x3f,0x00,0x00 + +# CHECK: v_subrev_u32_e64 v84, v13, s31 clamp ; encoding: [0x54,0x80,0x36,0xd1,0x0d,0x3f,0x00,0x00] +0x54,0x80,0x36,0xd1,0x0d,0x3f,0x00,0x00 + +# CHECK: v_addc_co_u32_e64 v84, s[4:5], v13, v31, vcc clamp ; encoding: [0x54,0x84,0x1c,0xd1,0x0d,0x3f,0xaa,0x01] +0x54,0x84,0x1c,0xd1,0x0d,0x3f,0xaa,0x01 + +# CHECK: v_subb_co_u32_e64 v84, s[2:3], v13, v31, vcc clamp ; encoding: [0x54,0x82,0x1d,0xd1,0x0d,0x3f,0xaa,0x01] +0x54,0x82,0x1d,0xd1,0x0d,0x3f,0xaa,0x01 + +# CHECK: v_subbrev_co_u32_e64 v84, vcc, v13, v31, s[6:7] clamp ; encoding: [0x54,0xea,0x1e,0xd1,0x0d,0x3f,0x1a,0x00] +0x54,0xea,0x1e,0xd1,0x0d,0x3f,0x1a,0x00 + +# CHECK: v_add_co_u32_e64 v84, s[4:5], v13, v31 clamp ; encoding: [0x54,0x84,0x19,0xd1,0x0d,0x3f,0x02,0x00] +0x54,0x84,0x19,0xd1,0x0d,0x3f,0x02,0x00 + +# CHECK: v_sub_co_u32_e64 v84, s[2:3], v13, v31 clamp ; encoding: [0x54,0x82,0x1a,0xd1,0x0d,0x3f,0x02,0x00] +0x54,0x82,0x1a,0xd1,0x0d,0x3f,0x02,0x00 + +# CHECK: v_subrev_co_u32_e64 v84, vcc, v13, v31 clamp ; encoding: [0x54,0xea,0x1b,0xd1,0x0d,0x3f,0x02,0x00] +0x54,0xea,0x1b,0xd1,0x0d,0x3f,0x02,0x00 + +# CHECK: v_add_i32 v1, v2, v3 clamp ; encoding: [0x01,0x80,0x9c,0xd2,0x02,0x07,0x02,0x00] +0x01,0x80,0x9c,0xd2,0x02,0x07,0x02,0x00 + +# CHECK: v_sub_i32 v1, v2, v3 clamp ; encoding: [0x01,0x80,0x9d,0xd2,0x02,0x07,0x02,0x00] +0x01,0x80,0x9d,0xd2,0x02,0x07,0x02,0x00 diff --git a/llvm/test/MC/Disassembler/AMDGPU/vop3p_opsel.txt b/llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3p_opsel.txt rename from llvm/test/MC/Disassembler/AMDGPU/vop3p_opsel.txt rename to llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3p_opsel.txt diff --git a/llvm/test/MC/Disassembler/AMDGPU/mubuf_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/mubuf_gfx9.txt deleted file mode 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/mubuf_gfx9.txt +++ /dev/null @@ -1,22 +0,0 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck %s -check-prefix=GFX9 - -# GFX9: buffer_load_format_d16_hi_x v5, off, s[8:11], s3 offset:4095 glc slc ; encoding: [0xff,0x4f,0x9a,0xe0,0x00,0x05,0x02,0x03] -0xff,0x4f,0x9a,0xe0,0x00,0x05,0x02,0x03 - -# GFX9: buffer_load_format_d16_hi_x v5, v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x2f,0x98,0xe0,0x00,0x05,0x02,0x03] -0xff,0x2f,0x98,0xe0,0x00,0x05,0x02,0x03 - -# GFX9: buffer_load_format_d16_hi_x v5, v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x1f,0x98,0xe0,0x00,0x05,0x02,0x03] -0xff,0x1f,0x98,0xe0,0x00,0x05,0x02,0x03 - -# GFX9: buffer_store_format_d16_hi_x v1, v0, s[12:15], s4 idxen offset:4095 ; encoding: [0xff,0x2f,0x9c,0xe0,0x00,0x01,0x03,0x04] -0xff,0x2f,0x9c,0xe0,0x00,0x01,0x03,0x04 - -# GFX9: buffer_store_format_d16_hi_x v1, v0, s[12:15], s4 offen offset:4095 ; encoding: [0xff,0x1f,0x9c,0xe0,0x00,0x01,0x03,0x04] -0xff,0x1f,0x9c,0xe0,0x00,0x01,0x03,0x04 - -# GFX9: buffer_store_format_d16_hi_x v1, off, s[12:15], s4 offset:4095 glc ; encoding: [0xff,0x4f,0x9c,0xe0,0x00,0x01,0x03,0x04] -0xff,0x4f,0x9c,0xe0,0x00,0x01,0x03,0x04 - -# GFX9: buffer_store_format_d16_hi_x v1, off, s[12:15], s4 offset:4095 slc ; encoding: [0xff,0x0f,0x9e,0xe0,0x00,0x01,0x03,0x04] -0xff,0x0f,0x9e,0xe0,0x00,0x01,0x03,0x04 diff --git a/llvm/test/MC/Disassembler/AMDGPU/sop1_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/sop1_gfx9.txt deleted file mode 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/sop1_gfx9.txt +++ /dev/null @@ -1,34 +0,0 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck %s --check-prefix=GFX9 - -# GFX9: s_andn1_saveexec_b64 s[10:11], s[2:3] ; encoding: [0x02,0x33,0x8a,0xbe] -0x02,0x33,0x8a,0xbe - -# GFX9: s_andn1_saveexec_b64 s[10:11], 0 ; encoding: [0x80,0x33,0x8a,0xbe] -0x80,0x33,0x8a,0xbe - -# GFX9: s_andn1_wrexec_b64 s[100:101], s[2:3] ; encoding: [0x02,0x35,0xe4,0xbe] -0x02,0x35,0xe4,0xbe - -# GFX9: s_andn1_wrexec_b64 s[10:11], 0xaf123456 ; encoding: [0xff,0x35,0x8a,0xbe,0x56,0x34,0x12,0xaf] -0xff,0x35,0x8a,0xbe,0x56,0x34,0x12,0xaf - -# GFX9: s_andn2_wrexec_b64 s[10:11], s[100:101] ; encoding: [0x64,0x36,0x8a,0xbe] -0x64,0x36,0x8a,0xbe - -# GFX9: s_andn2_wrexec_b64 s[10:11], -1 ; encoding: [0xc1,0x36,0x8a,0xbe] -0xc1,0x36,0x8a,0xbe - -# GFX9: s_orn1_saveexec_b64 s[10:11], -1 ; encoding: [0xc1,0x34,0x8a,0xbe] -0xc1,0x34,0x8a,0xbe - -# GFX9: s_orn1_saveexec_b64 s[10:11], 0x3f717273 ; encoding: [0xff,0x34,0x8a,0xbe,0x73,0x72,0x71,0x3f] -0xff,0x34,0x8a,0xbe,0x73,0x72,0x71,0x3f - -# GFX9: s_bitreplicate_b64_b32 s[10:11], s101 ; encoding: [0x65,0x37,0x8a,0xbe] -0x65,0x37,0x8a,0xbe - -# GFX9: s_bitreplicate_b64_b32 s[10:11], 0 ; encoding: [0x80,0x37,0x8a,0xbe] -0x80,0x37,0x8a,0xbe - -# GFX9: s_bitreplicate_b64_b32 s[10:11], 0xaf123456 ; encoding: [0xff,0x37,0x8a,0xbe,0x56,0x34,0x12,0xaf] -0xff,0x37,0x8a,0xbe,0x56,0x34,0x12,0xaf diff --git a/llvm/test/MC/Disassembler/AMDGPU/sop2_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/sop2_gfx9.txt deleted file mode 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/sop2_gfx9.txt +++ /dev/null @@ -1,28 +0,0 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck %s -check-prefix=GFX9 - -# GFX9: s_lshl1_add_u32 s5, 0, s2 ; encoding: [0x80,0x02,0x05,0x97] -0x80,0x02,0x05,0x97 - -# GFX9: s_lshl2_add_u32 s5, 0xaf123456, s2 ; encoding: [0xff,0x02,0x85,0x97,0x56,0x34,0x12,0xaf] -0xff,0x02,0x85,0x97,0x56,0x34,0x12,0xaf - -# GFX9: s_lshl3_add_u32 s5, s1, -1 ; encoding: [0x01,0xc1,0x05,0x98] -0x01,0xc1,0x05,0x98 - -# GFX9: s_lshl4_add_u32 s5, s1, 0xaf123456 ; encoding: [0x01,0xff,0x85,0x98,0x56,0x34,0x12,0xaf] -0x01,0xff,0x85,0x98,0x56,0x34,0x12,0xaf - -# GFX9: s_mul_hi_i32 s5, s101, s2 ; encoding: [0x65,0x02,0x85,0x96] -0x65,0x02,0x85,0x96 - -# GFX9: s_mul_hi_i32 s5, 0, s2 ; encoding: [0x80,0x02,0x85,0x96] -0x80,0x02,0x85,0x96 - -# GFX9: s_mul_hi_i32 s5, 0xaf123456, s2 ; encoding: [0xff,0x02,0x85,0x96,0x56,0x34,0x12,0xaf] -0xff,0x02,0x85,0x96,0x56,0x34,0x12,0xaf - -# GFX9: s_mul_hi_u32 s5, s1, -1 ; encoding: [0x01,0xc1,0x05,0x96] -0x01,0xc1,0x05,0x96 - -# GFX9: s_mul_hi_u32 s5, s1, 0xaf123456 ; encoding: [0x01,0xff,0x05,0x96,0x56,0x34,0x12,0xaf] -0x01,0xff,0x05,0x96,0x56,0x34,0x12,0xaf diff --git a/llvm/test/MC/Disassembler/AMDGPU/sopk_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/sopk_gfx9.txt deleted file mode 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/sopk_gfx9.txt +++ /dev/null @@ -1,13 +0,0 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck %s -check-prefix=GFX9 - -# GFX9: s_endpgm_ordered_ps_done ; encoding: [0x00,0x00,0x9e,0xbf] -0x00,0x00,0x9e,0xbf - -# GFX9: s_call_b64 s[10:11], 12609 ; encoding: [0x41,0x31,0x8a,0xba] -0x41,0x31,0x8a,0xba - -# GFX9: s_call_b64 s[100:101], 12609 ; encoding: [0x41,0x31,0xe4,0xba] -0x41,0x31,0xe4,0xba - -# GFX9: s_call_b64 s[10:11], 49617 ; encoding: [0xd1,0xc1,0x8a,0xba] -0xd1,0xc1,0x8a,0xba diff --git a/llvm/test/MC/Disassembler/AMDGPU/vop1_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/vop1_gfx9.txt deleted file mode 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/vop1_gfx9.txt +++ /dev/null @@ -1,31 +0,0 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck %s -check-prefix=GFX9 - -# GFX9: v_swap_b32 v1, v2 ; encoding: [0x02,0xa3,0x02,0x7e] -0x02 0xa3 0x02 0x7e - -# GFX9: v_cvt_norm_i16_f16_e32 v255, v1 ; encoding: [0x01,0x9b,0xfe,0x7f] -0x01,0x9b,0xfe,0x7f - -# GFX9: v_cvt_norm_i16_f16_e32 v5, 0.5 ; encoding: [0xf0,0x9a,0x0a,0x7e] -0xf0,0x9a,0x0a,0x7e - -# GFX9: v_cvt_norm_i16_f16_e32 v5, 0x3456 ; encoding: [0xff,0x9a,0x0a,0x7e,0x56,0x34,0x00,0x00] -0xff,0x9a,0x0a,0x7e,0x56,0x34,0x00,0x00 - -# GFX9: v_cvt_norm_u16_f16_e32 v5, s101 ; encoding: [0x65,0x9c,0x0a,0x7e] -0x65,0x9c,0x0a,0x7e - -# GFX9: v_sat_pk_u8_i16_e32 v5, v255 ; encoding: [0xff,0x9f,0x0a,0x7e] -0xff,0x9f,0x0a,0x7e - -# GFX9: v_sat_pk_u8_i16_e32 v5, -1 ; encoding: [0xc1,0x9e,0x0a,0x7e] -0xc1,0x9e,0x0a,0x7e - -# GFX9: v_sat_pk_u8_i16_e32 v5, 0x3f717273 ; encoding: [0xff,0x9e,0x0a,0x7e,0x73,0x72,0x71,0x3f] -0xff,0x9e,0x0a,0x7e,0x73,0x72,0x71,0x3f - -# GFX9: v_screen_partition_4se_b32_e32 v5, s101 ; encoding: [0x65,0x6e,0x0a,0x7e] -0x65,0x6e,0x0a,0x7e - -# GFX9: v_screen_partition_4se_b32_e32 v5, 0x3f717273 ; encoding: [0xff,0x6e,0x0a,0x7e,0x73,0x72,0x71,0x3f] -0xff,0x6e,0x0a,0x7e,0x73,0x72,0x71,0x3f diff --git a/llvm/test/MC/Disassembler/AMDGPU/vop3_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/vop3_gfx9.txt deleted file mode 100644 --- a/llvm/test/MC/Disassembler/AMDGPU/vop3_gfx9.txt +++ /dev/null @@ -1,730 +0,0 @@ -# RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck %s -check-prefix=GFX9 - -# GFX9: v_fma_f16 v5, v1, v2, v3 ; encoding: [0x05,0x00,0x06,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x00,0x06,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_fma_f16 v5, -v1, v2, v3 ; encoding: [0x05,0x00,0x06,0xd2,0x01,0x05,0x0e,0x24] -0x05,0x00,0x06,0xd2,0x01,0x05,0x0e,0x24 - -# GFX9: v_fma_f16 v5, v1, |v2|, v3 ; encoding: [0x05,0x02,0x06,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x02,0x06,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_fma_f16 v5, v1, v2, v3 op_sel:[1,0,0,0] ; encoding: [0x05,0x08,0x06,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x08,0x06,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_fma_f16 v5, v1, v2, v3 op_sel:[1,1,1,1] ; encoding: [0x05,0x78,0x06,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x78,0x06,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_fma_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x06,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x80,0x06,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_fma_legacy_f16 v5, v1, v2, v3 ; encoding: [0x05,0x00,0xee,0xd1,0x01,0x05,0x0e,0x04] -0x05,0x00,0xee,0xd1,0x01,0x05,0x0e,0x04 - -# GFX9: v_fma_legacy_f16 v5, v1, v2, -v3 ; encoding: [0x05,0x00,0xee,0xd1,0x01,0x05,0x0e,0x84] -0x05,0x00,0xee,0xd1,0x01,0x05,0x0e,0x84 - -# GFX9: v_fma_legacy_f16 v5, |v1|, v2, v3 ; encoding: [0x05,0x01,0xee,0xd1,0x01,0x05,0x0e,0x04] -0x05,0x01,0xee,0xd1,0x01,0x05,0x0e,0x04 - -# GFX9: v_fma_legacy_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xee,0xd1,0x01,0x05,0x0e,0x04] -0x05,0x80,0xee,0xd1,0x01,0x05,0x0e,0x04 - -# GFX9: v_div_fixup_f16 v5, 0.5, v2, v3 ; encoding: [0x05,0x00,0x07,0xd2,0xf0,0x04,0x0e,0x04] -0x05,0x00,0x07,0xd2,0xf0,0x04,0x0e,0x04 - -# GFX9: v_div_fixup_f16 v5, v1, 0.5, v3 ; encoding: [0x05,0x00,0x07,0xd2,0x01,0xe1,0x0d,0x04] -0x05,0x00,0x07,0xd2,0x01,0xe1,0x0d,0x04 - -# GFX9: v_div_fixup_f16 v5, v1, v2, 0.5 ; encoding: [0x05,0x00,0x07,0xd2,0x01,0x05,0xc2,0x03] -0x05,0x00,0x07,0xd2,0x01,0x05,0xc2,0x03 - -# GFX9: v_div_fixup_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0x07,0xd2,0x01,0x05,0x0e,0xe4] -0x05,0x00,0x07,0xd2,0x01,0x05,0x0e,0xe4 - -# GFX9: v_div_fixup_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0x07,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x07,0x07,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_div_fixup_f16 v5, v1, v2, v3 op_sel:[1,0,0,0] ; encoding: [0x05,0x08,0x07,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x08,0x07,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_div_fixup_f16 v5, v1, v2, v3 op_sel:[0,0,1,0] ; encoding: [0x05,0x20,0x07,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x20,0x07,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_div_fixup_f16 v5, v1, v2, v3 op_sel:[0,0,0,1] ; encoding: [0x05,0x40,0x07,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x40,0x07,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_div_fixup_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x07,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x80,0x07,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_div_fixup_legacy_f16 v5, 0.5, v2, v3 ; encoding: [0x05,0x00,0xef,0xd1,0xf0,0x04,0x0e,0x04] -0x05,0x00,0xef,0xd1,0xf0,0x04,0x0e,0x04 - -# GFX9: v_div_fixup_legacy_f16 v5, v1, 0.5, v3 ; encoding: [0x05,0x00,0xef,0xd1,0x01,0xe1,0x0d,0x04] -0x05,0x00,0xef,0xd1,0x01,0xe1,0x0d,0x04 - -# GFX9: v_div_fixup_legacy_f16 v5, v1, v2, 0.5 ; encoding: [0x05,0x00,0xef,0xd1,0x01,0x05,0xc2,0x03] -0x05,0x00,0xef,0xd1,0x01,0x05,0xc2,0x03 - -# GFX9: v_div_fixup_legacy_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xef,0xd1,0x01,0x05,0x0e,0xe4] -0x05,0x00,0xef,0xd1,0x01,0x05,0x0e,0xe4 - -# GFX9: v_div_fixup_legacy_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xef,0xd1,0x01,0x05,0x0e,0x04] -0x05,0x07,0xef,0xd1,0x01,0x05,0x0e,0x04 - -# GFX9: v_div_fixup_legacy_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xef,0xd1,0x01,0x05,0x0e,0x04] -0x05,0x80,0xef,0xd1,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_f16 v5, 0.5, v2, v3 ; encoding: [0x05,0x00,0x03,0xd2,0xf0,0x04,0x0e,0x04] -0x05,0x00,0x03,0xd2,0xf0,0x04,0x0e,0x04 - -# GFX9: v_mad_f16 v5, v1, 0.5, v3 ; encoding: [0x05,0x00,0x03,0xd2,0x01,0xe1,0x0d,0x04] -0x05,0x00,0x03,0xd2,0x01,0xe1,0x0d,0x04 - -# GFX9: v_mad_f16 v5, v1, v2, 0.5 ; encoding: [0x05,0x00,0x03,0xd2,0x01,0x05,0xc2,0x03] -0x05,0x00,0x03,0xd2,0x01,0x05,0xc2,0x03 - -# GFX9: v_mad_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0x03,0xd2,0x01,0x05,0x0e,0xe4] -0x05,0x00,0x03,0xd2,0x01,0x05,0x0e,0xe4 - -# GFX9: v_mad_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0x03,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x07,0x03,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_f16 v5, v1, v2, v3 op_sel:[1,0,0,0] ; encoding: [0x05,0x08,0x03,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x08,0x03,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_f16 v5, v1, v2, v3 op_sel:[0,1,0,0] ; encoding: [0x05,0x10,0x03,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x10,0x03,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_f16 v5, v1, v2, v3 op_sel:[0,0,1,0] ; encoding: [0x05,0x20,0x03,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x20,0x03,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_f16 v5, v1, v2, v3 op_sel:[0,0,0,1] ; encoding: [0x05,0x40,0x03,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x40,0x03,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_f16 v5, v1, v2, v3 op_sel:[1,1,1,1] ; encoding: [0x05,0x78,0x03,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x78,0x03,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x03,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x80,0x03,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_i16 v5, 0, v2, v3 ; encoding: [0x05,0x00,0x05,0xd2,0x80,0x04,0x0e,0x04] -0x05,0x00,0x05,0xd2,0x80,0x04,0x0e,0x04 - -# GFX9: v_mad_i16 v5, v1, -1, v3 ; encoding: [0x05,0x00,0x05,0xd2,0x01,0x83,0x0d,0x04] -0x05,0x00,0x05,0xd2,0x01,0x83,0x0d,0x04 - -# GFX9: v_mad_i16 v5, v1, v2, 63 ; encoding: [0x05,0x00,0x05,0xd2,0x01,0x05,0xfe,0x02] -0x05,0x00,0x05,0xd2,0x01,0x05,0xfe,0x02 - -# GFX9: v_mad_i16 v5, v1, v2, v3 op_sel:[0,0,0,1] ; encoding: [0x05,0x40,0x05,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x40,0x05,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_i16 v5, v1, v2, v3 op_sel:[1,1,1,1] ; encoding: [0x05,0x78,0x05,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x78,0x05,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_i16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x05,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x80,0x05,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_legacy_f16 v5, 0.5, v2, v3 ; encoding: [0x05,0x00,0xea,0xd1,0xf0,0x04,0x0e,0x04] -0x05,0x00,0xea,0xd1,0xf0,0x04,0x0e,0x04 - -# GFX9: v_mad_legacy_f16 v5, v1, 0.5, v3 ; encoding: [0x05,0x00,0xea,0xd1,0x01,0xe1,0x0d,0x04] -0x05,0x00,0xea,0xd1,0x01,0xe1,0x0d,0x04 - -# GFX9: v_mad_legacy_f16 v5, v1, v2, 0.5 ; encoding: [0x05,0x00,0xea,0xd1,0x01,0x05,0xc2,0x03] -0x05,0x00,0xea,0xd1,0x01,0x05,0xc2,0x03 - -# GFX9: v_mad_legacy_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xea,0xd1,0x01,0x05,0x0e,0xe4] -0x05,0x00,0xea,0xd1,0x01,0x05,0x0e,0xe4 - -# GFX9: v_mad_legacy_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xea,0xd1,0x01,0x05,0x0e,0x04] -0x05,0x07,0xea,0xd1,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_legacy_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xea,0xd1,0x01,0x05,0x0e,0x04] -0x05,0x80,0xea,0xd1,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_legacy_i16 v5, 0, v2, v3 ; encoding: [0x05,0x00,0xec,0xd1,0x80,0x04,0x0e,0x04] -0x05,0x00,0xec,0xd1,0x80,0x04,0x0e,0x04 - -# GFX9: v_mad_legacy_i16 v5, v1, -1, v3 ; encoding: [0x05,0x00,0xec,0xd1,0x01,0x83,0x0d,0x04] -0x05,0x00,0xec,0xd1,0x01,0x83,0x0d,0x04 - -# GFX9: v_mad_legacy_i16 v5, v1, v2, 0xc400 ; encoding: [0x05,0x00,0xec,0xd1,0x01,0x05,0xfe,0x03] -0x05,0x00,0xec,0xd1,0x01,0x05,0xde,0x03 - -# GFX9: v_mad_legacy_i16 v5, v1, v2, 0xc400 clamp ; encoding: [0x05,0x80,0xec,0xd1,0x01,0x05,0xfe,0x03] -0x05,0x80,0xec,0xd1,0x01,0x05,0xde,0x03 - -# GFX9: v_mad_legacy_u16 v5, 0, v2, v3 ; encoding: [0x05,0x00,0xeb,0xd1,0x80,0x04,0x0e,0x04] -0x05,0x00,0xeb,0xd1,0x80,0x04,0x0e,0x04 - -# GFX9: v_mad_legacy_u16 v5, v1, -1, v3 ; encoding: [0x05,0x00,0xeb,0xd1,0x01,0x83,0x0d,0x04] -0x05,0x00,0xeb,0xd1,0x01,0x83,0x0d,0x04 - -# GFX9: v_mad_legacy_u16 v5, v1, v2, 0xc400 ; encoding: [0x05,0x00,0xeb,0xd1,0x01,0x05,0xfe,0x03] -0x05,0x00,0xeb,0xd1,0x01,0x05,0xde,0x03 - -# GFX9: v_mad_legacy_u16 v5, v1, v2, 0xc400 clamp ; encoding: [0x05,0x80,0xeb,0xd1,0x01,0x05,0xfe,0x03] -0x05,0x80,0xeb,0xd1,0x01,0x05,0xde,0x03 - -# GFX9: v_mad_u16 v5, 0, v2, v3 ; encoding: [0x05,0x00,0x04,0xd2,0x80,0x04,0x0e,0x04] -0x05,0x00,0x04,0xd2,0x80,0x04,0x0e,0x04 - -# GFX9: v_mad_u16 v5, v1, -1, v3 ; encoding: [0x05,0x00,0x04,0xd2,0x01,0x83,0x0d,0x04] -0x05,0x00,0x04,0xd2,0x01,0x83,0x0d,0x04 - -# GFX9: v_mad_u16 v5, v1, v2, 63 ; encoding: [0x05,0x00,0x04,0xd2,0x01,0x05,0xfe,0x02] -0x05,0x00,0x04,0xd2,0x01,0x05,0xfe,0x02 - -# GFX9: v_mad_u16 v5, v1, v2, v3 op_sel:[1,0,0,0] ; encoding: [0x05,0x08,0x04,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x08,0x04,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_u16 v5, v1, v2, v3 op_sel:[0,0,0,1] ; encoding: [0x05,0x40,0x04,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x40,0x04,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_u16 v5, v1, v2, v3 op_sel:[1,1,1,1] ; encoding: [0x05,0x78,0x04,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x78,0x04,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_u16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0x04,0xd2,0x01,0x05,0x0e,0x04] -0x05,0x80,0x04,0xd2,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v255, v1, v2, v3 ; encoding: [0xff,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0xff,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v255, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0xff,0x05,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0xff,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, s1, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x01,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, s101, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x65,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x65,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, flat_scratch_lo, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x66,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x66,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, flat_scratch_hi, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x67,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x67,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, xnack_mask_hi, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x69,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x69,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, vcc_lo, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x6a,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x6a,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, vcc_hi, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x6b,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x6b,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, m0, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x7c,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x7c,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, exec_lo, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x7e,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x7e,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, exec_hi, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x7f,0x04,0x0e,0x04] -0x05,0x00,0xa0,0xd3,0x7f,0x04,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v255, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xff,0x0f,0x04] -0x05,0x00,0xa0,0xd3,0x01,0xff,0x0f,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, s2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0c,0x04] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x0c,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, s101, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xcb,0x0c,0x04] -0x05,0x00,0xa0,0xd3,0x01,0xcb,0x0c,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, flat_scratch_lo, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xcd,0x0c,0x04] -0x05,0x00,0xa0,0xd3,0x01,0xcd,0x0c,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, flat_scratch_hi, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xcf,0x0c,0x04] -0x05,0x00,0xa0,0xd3,0x01,0xcf,0x0c,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, vcc_lo, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xd5,0x0c,0x04] -0x05,0x00,0xa0,0xd3,0x01,0xd5,0x0c,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, vcc_hi, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xd7,0x0c,0x04] -0x05,0x00,0xa0,0xd3,0x01,0xd7,0x0c,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, m0, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xf9,0x0c,0x04] -0x05,0x00,0xa0,0xd3,0x01,0xf9,0x0c,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, exec_lo, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xfd,0x0c,0x04] -0x05,0x00,0xa0,0xd3,0x01,0xfd,0x0c,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, exec_hi, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0xff,0x0c,0x04] -0x05,0x00,0xa0,0xd3,0x01,0xff,0x0c,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v255 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xfe,0x07] -0x05,0x00,0xa0,0xd3,0x01,0x05,0xfe,0x07 - -# GFX9: v_mad_mix_f32 v5, v1, v2, s3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x00] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x00 - -# GFX9: v_mad_mix_f32 v5, v1, v2, s101 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x96,0x01] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x96,0x01 - -# GFX9: v_mad_mix_f32 v5, v1, v2, flat_scratch_lo ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x9a,0x01] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x9a,0x01 - -# GFX9: v_mad_mix_f32 v5, v1, v2, flat_scratch_hi ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x9e,0x01] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x9e,0x01 - -# GFX9: v_mad_mix_f32 v5, v1, v2, vcc_lo ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xaa,0x01] -0x05,0x00,0xa0,0xd3,0x01,0x05,0xaa,0x01 - -# GFX9: v_mad_mix_f32 v5, v1, v2, vcc_hi ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xae,0x01] -0x05,0x00,0xa0,0xd3,0x01,0x05,0xae,0x01 - -# GFX9: v_mad_mix_f32 v5, v1, v2, m0 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xf2,0x01] -0x05,0x00,0xa0,0xd3,0x01,0x05,0xf2,0x01 - -# GFX9: v_mad_mix_f32 v5, v1, v2, exec_lo ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xfa,0x01] -0x05,0x00,0xa0,0xd3,0x01,0x05,0xfa,0x01 - -# GFX9: v_mad_mix_f32 v5, v1, v2, exec_hi ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0xfe,0x01] -0x05,0x00,0xa0,0xd3,0x01,0x05,0xfe,0x01 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 op_sel:[1,0,0] ; encoding: [0x05,0x08,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x08,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 op_sel:[0,1,0] ; encoding: [0x05,0x10,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x10,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 op_sel:[0,0,1] ; encoding: [0x05,0x20,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x20,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 op_sel:[1,1,1] ; encoding: [0x05,0x38,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x38,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 op_sel_hi:[1,0,0] ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x0c] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x0c - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x14] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x14 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x40,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 op_sel_hi:[1,1,1] ; encoding: [0x05,0x40,0xa0,0xd3,0x01,0x05,0x0e,0x1c] -0x05,0x40,0xa0,0xd3,0x01,0x05,0x0e,0x1c - -# GFX9: v_mad_mix_f32 v5, -v1, v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x24] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x24 - -# GFX9: v_mad_mix_f32 v5, v1, -v2, v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x44] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x44 - -# GFX9: v_mad_mix_f32 v5, v1, v2, -v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x84] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0x84 - -# GFX9: v_mad_mix_f32 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0xe4] -0x05,0x00,0xa0,0xd3,0x01,0x05,0x0e,0xe4 - -# GFX9: v_mad_mix_f32 v5, |v1|, v2, v3 ; encoding: [0x05,0x01,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x01,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, |v2|, v3 ; encoding: [0x05,0x02,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x02,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v2, |v3| ; encoding: [0x05,0x04,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x04,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x07,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mix_f32 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xa0,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x80,0xa0,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v255, v1, v2, v3 ; encoding: [0xff,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0xff,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v255, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0xff,0x05,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0xff,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, s1, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x04,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x01,0x04,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, s101, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x65,0x04,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x65,0x04,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, flat_scratch_lo, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x66,0x04,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x66,0x04,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, flat_scratch_hi, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x67,0x04,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x67,0x04,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, vcc_lo, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x6a,0x04,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x6a,0x04,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, vcc_hi, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x6b,0x04,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x6b,0x04,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, m0, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x7c,0x04,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x7c,0x04,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, exec_lo, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x7e,0x04,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x7e,0x04,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, exec_hi, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x7f,0x04,0x0e,0x04] -0x05,0x00,0xa2,0xd3,0x7f,0x04,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v255, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xff,0x0f,0x04] -0x05,0x00,0xa2,0xd3,0x01,0xff,0x0f,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, s2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0c,0x04] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x0c,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, s101, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xcb,0x0c,0x04] -0x05,0x00,0xa2,0xd3,0x01,0xcb,0x0c,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, flat_scratch_lo, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xcd,0x0c,0x04] -0x05,0x00,0xa2,0xd3,0x01,0xcd,0x0c,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, flat_scratch_hi, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xcf,0x0c,0x04] -0x05,0x00,0xa2,0xd3,0x01,0xcf,0x0c,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, vcc_lo, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xd5,0x0c,0x04] -0x05,0x00,0xa2,0xd3,0x01,0xd5,0x0c,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, vcc_hi, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xd7,0x0c,0x04] -0x05,0x00,0xa2,0xd3,0x01,0xd7,0x0c,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, m0, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xf9,0x0c,0x04] -0x05,0x00,0xa2,0xd3,0x01,0xf9,0x0c,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, exec_lo, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xfd,0x0c,0x04] -0x05,0x00,0xa2,0xd3,0x01,0xfd,0x0c,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, exec_hi, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0xff,0x0c,0x04] -0x05,0x00,0xa2,0xd3,0x01,0xff,0x0c,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v255 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xfe,0x07] -0x05,0x00,0xa2,0xd3,0x01,0x05,0xfe,0x07 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x00] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x00 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, s101 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x96,0x01] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x96,0x01 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, flat_scratch_lo ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x9a,0x01] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x9a,0x01 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, flat_scratch_hi ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x9e,0x01] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x9e,0x01 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, vcc_lo ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xaa,0x01] -0x05,0x00,0xa2,0xd3,0x01,0x05,0xaa,0x01 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, vcc_hi ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xae,0x01] -0x05,0x00,0xa2,0xd3,0x01,0x05,0xae,0x01 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, m0 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xf2,0x01] -0x05,0x00,0xa2,0xd3,0x01,0x05,0xf2,0x01 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, exec_lo ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xfa,0x01] -0x05,0x00,0xa2,0xd3,0x01,0x05,0xfa,0x01 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, exec_hi ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0xfe,0x01] -0x05,0x00,0xa2,0xd3,0x01,0x05,0xfe,0x01 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel:[1,0,0] ; encoding: [0x05,0x08,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x08,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel:[0,1,0] ; encoding: [0x05,0x10,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x10,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel:[0,0,1] ; encoding: [0x05,0x20,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x20,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel:[1,1,1] ; encoding: [0x05,0x38,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x38,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel_hi:[1,0,0] ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x0c] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x0c - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x14] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x14 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x40,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 op_sel_hi:[1,1,1] ; encoding: [0x05,0x40,0xa2,0xd3,0x01,0x05,0x0e,0x1c] -0x05,0x40,0xa2,0xd3,0x01,0x05,0x0e,0x1c - -# GFX9: v_mad_mixhi_f16 v5, -v1, v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x24] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x24 - -# GFX9: v_mad_mixhi_f16 v5, v1, -v2, v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x44] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x44 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, -v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x84] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0x84 - -# GFX9: v_mad_mixhi_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0xe4] -0x05,0x00,0xa2,0xd3,0x01,0x05,0x0e,0xe4 - -# GFX9: v_mad_mixhi_f16 v5, |v1|, v2, v3 ; encoding: [0x05,0x01,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x01,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, |v2|, v3 ; encoding: [0x05,0x02,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x02,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, |v3| ; encoding: [0x05,0x04,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x04,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x07,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixhi_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xa2,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x80,0xa2,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v255, v1, v2, v3 ; encoding: [0xff,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0xff,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v255, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0xff,0x05,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0xff,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, s1, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x04,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x01,0x04,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, s101, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x65,0x04,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x65,0x04,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, flat_scratch_lo, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x66,0x04,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x66,0x04,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, flat_scratch_hi, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x67,0x04,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x67,0x04,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, vcc_lo, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x6a,0x04,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x6a,0x04,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, vcc_hi, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x6b,0x04,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x6b,0x04,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, m0, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x7c,0x04,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x7c,0x04,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, exec_lo, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x7e,0x04,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x7e,0x04,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, exec_hi, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x7f,0x04,0x0e,0x04] -0x05,0x00,0xa1,0xd3,0x7f,0x04,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v255, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xff,0x0f,0x04] -0x05,0x00,0xa1,0xd3,0x01,0xff,0x0f,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, s2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0c,0x04] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x0c,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, s101, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xcb,0x0c,0x04] -0x05,0x00,0xa1,0xd3,0x01,0xcb,0x0c,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, flat_scratch_lo, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xcd,0x0c,0x04] -0x05,0x00,0xa1,0xd3,0x01,0xcd,0x0c,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, flat_scratch_hi, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xcf,0x0c,0x04] -0x05,0x00,0xa1,0xd3,0x01,0xcf,0x0c,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, vcc_lo, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xd5,0x0c,0x04] -0x05,0x00,0xa1,0xd3,0x01,0xd5,0x0c,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, vcc_hi, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xd7,0x0c,0x04] -0x05,0x00,0xa1,0xd3,0x01,0xd7,0x0c,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, m0, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xf9,0x0c,0x04] -0x05,0x00,0xa1,0xd3,0x01,0xf9,0x0c,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, exec_lo, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xfd,0x0c,0x04] -0x05,0x00,0xa1,0xd3,0x01,0xfd,0x0c,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, exec_hi, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0xff,0x0c,0x04] -0x05,0x00,0xa1,0xd3,0x01,0xff,0x0c,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v255 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xfe,0x07] -0x05,0x00,0xa1,0xd3,0x01,0x05,0xfe,0x07 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x00] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x00 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, s101 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x96,0x01] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x96,0x01 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, flat_scratch_lo ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x9a,0x01] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x9a,0x01 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, flat_scratch_hi ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x9e,0x01] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x9e,0x01 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, vcc_lo ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xaa,0x01] -0x05,0x00,0xa1,0xd3,0x01,0x05,0xaa,0x01 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, vcc_hi ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xae,0x01] -0x05,0x00,0xa1,0xd3,0x01,0x05,0xae,0x01 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, m0 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xf2,0x01] -0x05,0x00,0xa1,0xd3,0x01,0x05,0xf2,0x01 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, exec_lo ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xfa,0x01] -0x05,0x00,0xa1,0xd3,0x01,0x05,0xfa,0x01 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, exec_hi ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0xfe,0x01] -0x05,0x00,0xa1,0xd3,0x01,0x05,0xfe,0x01 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel:[1,0,0] ; encoding: [0x05,0x08,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x08,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel:[0,1,0] ; encoding: [0x05,0x10,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x10,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel:[0,0,1] ; encoding: [0x05,0x20,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x20,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel:[1,1,1] ; encoding: [0x05,0x38,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x38,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel_hi:[1,0,0] ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x0c] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x0c - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel_hi:[0,1,0] ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x14] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x14 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel_hi:[0,0,1] ; encoding: [0x05,0x40,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x40,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 op_sel_hi:[1,1,1] ; encoding: [0x05,0x40,0xa1,0xd3,0x01,0x05,0x0e,0x1c] -0x05,0x40,0xa1,0xd3,0x01,0x05,0x0e,0x1c - -# GFX9: v_mad_mixlo_f16 v5, -v1, v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x24] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x24 - -# GFX9: v_mad_mixlo_f16 v5, v1, -v2, v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x44] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x44 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, -v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x84] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0x84 - -# GFX9: v_mad_mixlo_f16 v5, -v1, -v2, -v3 ; encoding: [0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0xe4] -0x05,0x00,0xa1,0xd3,0x01,0x05,0x0e,0xe4 - -# GFX9: v_mad_mixlo_f16 v5, |v1|, v2, v3 ; encoding: [0x05,0x01,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x01,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, |v2|, v3 ; encoding: [0x05,0x02,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x02,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, |v3| ; encoding: [0x05,0x04,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x04,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, |v1|, |v2|, |v3| ; encoding: [0x05,0x07,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x07,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_mad_mixlo_f16 v5, v1, v2, v3 clamp ; encoding: [0x05,0x80,0xa1,0xd3,0x01,0x05,0x0e,0x04] -0x05,0x80,0xa1,0xd3,0x01,0x05,0x0e,0x04 - -# GFX9: v_interp_p2_f16 v5, v2, attr0.x, v3 ; encoding: [0x05,0x00,0x77,0xd2,0x00,0x04,0x0e,0x04] -0x05,0x00,0x77,0xd2,0x00,0x04,0x0e,0x04 - -# GFX9: v_interp_p2_f16 v5, -v2, attr0.x, v3 ; encoding: [0x05,0x00,0x77,0xd2,0x00,0x04,0x0e,0x44] -0x05,0x00,0x77,0xd2,0x00,0x04,0x0e,0x44 - -# GFX9: v_interp_p2_f16 v5, v2, attr0.x, |v3| ; encoding: [0x05,0x04,0x77,0xd2,0x00,0x04,0x0e,0x04] -0x05,0x04,0x77,0xd2,0x00,0x04,0x0e,0x04 - -# GFX9: v_interp_p2_f16 v5, v2, attr0.w, v3 ; encoding: [0x05,0x00,0x77,0xd2,0xc0,0x04,0x0e,0x04] -0x05,0x00,0x77,0xd2,0xc0,0x04,0x0e,0x04 - -# GFX9: v_interp_p2_f16 v5, v2, attr0.x, v3 high ; encoding: [0x05,0x00,0x77,0xd2,0x00,0x05,0x0e,0x04] -0x05,0x00,0x77,0xd2,0x00,0x05,0x0e,0x04 - -# GFX9: v_interp_p2_f16 v5, v2, attr0.x, v3 clamp ; encoding: [0x05,0x80,0x77,0xd2,0x00,0x04,0x0e,0x04] -0x05,0x80,0x77,0xd2,0x00,0x04,0x0e,0x04 - -# GFX9: v_interp_p2_legacy_f16 v5, v2, attr31.x, v3 ; encoding: [0x05,0x00,0x76,0xd2,0x1f,0x04,0x0e,0x04] -0x05,0x00,0x76,0xd2,0x1f,0x04,0x0e,0x04 - -# GFX9: v_interp_p2_legacy_f16 v5, -v2, attr0.x, v3 ; encoding: [0x05,0x00,0x76,0xd2,0x00,0x04,0x0e,0x44] -0x05,0x00,0x76,0xd2,0x00,0x04,0x0e,0x44 - -# GFX9: v_interp_p2_legacy_f16 v5, v2, attr0.x, |v3| ; encoding: [0x05,0x04,0x76,0xd2,0x00,0x04,0x0e,0x04] -0x05,0x04,0x76,0xd2,0x00,0x04,0x0e,0x04 - -# GFX9: v_interp_p2_legacy_f16 v5, v2, attr0.w, v3 ; encoding: [0x05,0x00,0x76,0xd2,0xc0,0x04,0x0e,0x04] -0x05,0x00,0x76,0xd2,0xc0,0x04,0x0e,0x04 - -# GFX9: v_interp_p2_legacy_f16 v5, v2, attr0.x, v3 high ; encoding: [0x05,0x00,0x76,0xd2,0x00,0x05,0x0e,0x04] -0x05,0x00,0x76,0xd2,0x00,0x05,0x0e,0x04 - -# GFX9: v_interp_p2_legacy_f16 v5, v2, attr0.x, v3 clamp ; encoding: [0x05,0x80,0x76,0xd2,0x00,0x04,0x0e,0x04] -0x05,0x80,0x76,0xd2,0x00,0x04,0x0e,0x04 - -# GFX9: v_add_f64 v[5:6], xnack_mask, v[2:3] ; encoding: [0x05,0x00,0x80,0xd2,0x68,0x04,0x02,0x00] -0x05,0x00,0x80,0xd2,0x68,0x04,0x02,0x00 - -# GFX9: v_cvt_norm_i16_f16_e64 v5, -4.0 ; encoding: [0x05,0x00,0x8d,0xd1,0xf7,0x00,0x00,0x00] -0x05,0x00,0x8d,0xd1,0xf7,0x00,0x00,0x00 - -# GFX9: v_cvt_norm_i16_f16_e64 v5, -v1 ; encoding: [0x05,0x00,0x8d,0xd1,0x01,0x01,0x00,0x20] -0x05,0x00,0x8d,0xd1,0x01,0x01,0x00,0x20 - -# GFX9: v_cvt_norm_i16_f16_e64 v5, |v1| ; encoding: [0x05,0x01,0x8d,0xd1,0x01,0x01,0x00,0x00] -0x05,0x01,0x8d,0xd1,0x01,0x01,0x00,0x00 - -# GFX9: v_cvt_norm_u16_f16_e64 v255, v1 ; encoding: [0xff,0x00,0x8e,0xd1,0x01,0x01,0x00,0x00] -0xff,0x00,0x8e,0xd1,0x01,0x01,0x00,0x00 - -# GFX9: v_cvt_norm_u16_f16_e64 v5, v255 ; encoding: [0x05,0x00,0x8e,0xd1,0xff,0x01,0x00,0x00] -0x05,0x00,0x8e,0xd1,0xff,0x01,0x00,0x00 - -# GFX9: v_sat_pk_u8_i16_e64 v5, -1 ; encoding: [0x05,0x00,0x8f,0xd1,0xc1,0x00,0x00,0x00] -0x05,0x00,0x8f,0xd1,0xc1,0x00,0x00,0x00 - -# GFX9: v_sat_pk_u8_i16_e64 v255, v1 ; encoding: [0xff,0x00,0x8f,0xd1,0x01,0x01,0x00,0x00] -0xff,0x00,0x8f,0xd1,0x01,0x01,0x00,0x00 - -# GFX9: v_screen_partition_4se_b32_e64 v5, v1 ; encoding: [0x05,0x00,0x77,0xd1,0x01,0x01,0x00,0x00] -0x05,0x00,0x77,0xd1,0x01,0x01,0x00,0x00 - -# GFX9: v_add_u32_e64 v84, v13, s31 clamp ; encoding: [0x54,0x80,0x34,0xd1,0x0d,0x3f,0x00,0x00] -0x54,0x80,0x34,0xd1,0x0d,0x3f,0x00,0x00 - -# GFX9: v_sub_u32_e64 v84, v13, s31 clamp ; encoding: [0x54,0x80,0x35,0xd1,0x0d,0x3f,0x00,0x00] -0x54,0x80,0x35,0xd1,0x0d,0x3f,0x00,0x00 - -# GFX9: v_subrev_u32_e64 v84, v13, s31 clamp ; encoding: [0x54,0x80,0x36,0xd1,0x0d,0x3f,0x00,0x00] -0x54,0x80,0x36,0xd1,0x0d,0x3f,0x00,0x00 - -# GFX9: v_addc_co_u32_e64 v84, s[4:5], v13, v31, vcc clamp ; encoding: [0x54,0x84,0x1c,0xd1,0x0d,0x3f,0xaa,0x01] -0x54,0x84,0x1c,0xd1,0x0d,0x3f,0xaa,0x01 - -# GFX9: v_subb_co_u32_e64 v84, s[2:3], v13, v31, vcc clamp ; encoding: [0x54,0x82,0x1d,0xd1,0x0d,0x3f,0xaa,0x01] -0x54,0x82,0x1d,0xd1,0x0d,0x3f,0xaa,0x01 - -# GFX9: v_subbrev_co_u32_e64 v84, vcc, v13, v31, s[6:7] clamp ; encoding: [0x54,0xea,0x1e,0xd1,0x0d,0x3f,0x1a,0x00] -0x54,0xea,0x1e,0xd1,0x0d,0x3f,0x1a,0x00 - -# GFX9: v_add_co_u32_e64 v84, s[4:5], v13, v31 clamp ; encoding: [0x54,0x84,0x19,0xd1,0x0d,0x3f,0x02,0x00] -0x54,0x84,0x19,0xd1,0x0d,0x3f,0x02,0x00 - -# GFX9: v_sub_co_u32_e64 v84, s[2:3], v13, v31 clamp ; encoding: [0x54,0x82,0x1a,0xd1,0x0d,0x3f,0x02,0x00] -0x54,0x82,0x1a,0xd1,0x0d,0x3f,0x02,0x00 - -# GFX9: v_subrev_co_u32_e64 v84, vcc, v13, v31 clamp ; encoding: [0x54,0xea,0x1b,0xd1,0x0d,0x3f,0x02,0x00] -0x54,0xea,0x1b,0xd1,0x0d,0x3f,0x02,0x00 - -# GFX9: v_add_i32 v1, v2, v3 clamp ; encoding: [0x01,0x80,0x9c,0xd2,0x02,0x07,0x02,0x00] -0x01,0x80,0x9c,0xd2,0x02,0x07,0x02,0x00 - -# GFX9: v_sub_i32 v1, v2, v3 clamp ; encoding: [0x01,0x80,0x9d,0xd2,0x02,0x07,0x02,0x00] -0x01,0x80,0x9d,0xd2,0x02,0x07,0x02,0x00