summaryrefslogtreecommitdiffstats
path: root/llvm/test/MC/Disassembler/AMDGPU
diff options
context:
space:
mode:
authorDmitry Preobrazhensky <dmitry.preobrazhensky@amd.com>2019-03-20 15:40:52 +0000
committerDmitry Preobrazhensky <dmitry.preobrazhensky@amd.com>2019-03-20 15:40:52 +0000
commit137976fae22df17daa16dd9002a2c74cd38b9c67 (patch)
tree762176ef05d5573bf5d595d7a731fee5beaaa316 /llvm/test/MC/Disassembler/AMDGPU
parent9e7af8d02688254ecf762cc82cd28d178afac57f (diff)
downloadbcm5719-llvm-137976fae22df17daa16dd9002a2c74cd38b9c67.tar.gz
bcm5719-llvm-137976fae22df17daa16dd9002a2c74cd38b9c67.zip
[AMDGPU][MC][GFX9] Added support of operands shared_base, shared_limit, private_base, private_limit, pops_exiting_wave_id
See bug 39297: https://bugs.llvm.org/show_bug.cgi?id=39297 Reviewers: artem.tamazov, arsenm, rampitec Differential Revision: https://reviews.llvm.org/D59290 llvm-svn: 356561
Diffstat (limited to 'llvm/test/MC/Disassembler/AMDGPU')
-rw-r--r--llvm/test/MC/Disassembler/AMDGPU/literal_gfx9.txt79
1 files changed, 79 insertions, 0 deletions
diff --git a/llvm/test/MC/Disassembler/AMDGPU/literal_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/literal_gfx9.txt
new file mode 100644
index 00000000000..7b3d2a83bc1
--- /dev/null
+++ b/llvm/test/MC/Disassembler/AMDGPU/literal_gfx9.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_shared_base offset:4095 ; encoding: [0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xeb]
+0xff,0x0f,0x08,0xe1,0x00,0x00,0x00,0xeb
+
+# GFX9: s_add_i32 s0, src_shared_base, s0 ; encoding: [0xeb,0x00,0x00,0x81]
+0xeb,0x00,0x00,0x81
+
+# GFX9: s_add_i32 s0, src_shared_limit, s0 ; encoding: [0xec,0x00,0x00,0x81]
+0xec,0x00,0x00,0x81
+
+# GFX9: s_add_i32 s0, src_private_base, s0 ; encoding: [0xed,0x00,0x00,0x81]
+0xed,0x00,0x00,0x81
+
+# GFX9: s_add_i32 s0, src_private_limit, s0 ; encoding: [0xee,0x00,0x00,0x81]
+0xee,0x00,0x00,0x81
+
+# GFX9: s_add_i32 s0, src_pops_exiting_wave_id, s0 ; encoding: [0xef,0x00,0x00,0x81]
+0xef,0x00,0x00,0x81
+
+# GFX9: s_and_b64 s[0:1], s[0:1], src_shared_base ; encoding: [0x00,0xeb,0x80,0x86]
+0x00,0xeb,0x80,0x86
+
+# GFX9: v_add_u16_sdwa v0, src_shared_base, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0x00,0x00,0x4c,0xeb,0x06,0x86,0x06]
+0xf9,0x00,0x00,0x4c,0xeb,0x06,0x86,0x06
+
+# GFX9: v_add_u16_sdwa v0, v0, src_shared_base dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD ; encoding: [0xf9,0xd6,0x01,0x4c,0x00,0x06,0x06,0x86]
+0xf9,0xd6,0x01,0x4c,0x00,0x06,0x06,0x86
+
+# GFX9: v_add_u32_e32 v0, src_shared_base, v0 ; encoding: [0xeb,0x00,0x00,0x68]
+0xeb,0x00,0x00,0x68
+
+# GFX9: v_add_u32_e64 v0, src_shared_base, v0 ; encoding: [0x00,0x00,0x34,0xd1,0xeb,0x00,0x02,0x00]
+0x00,0x00,0x34,0xd1,0xeb,0x00,0x02,0x00
+
+# GFX9: v_cmp_eq_i64_e32 vcc, src_shared_base, v[0:1] ; encoding: [0xeb,0x00,0xc4,0x7d]
+0xeb,0x00,0xc4,0x7d
+
+# GFX9: v_max_f16_e32 v0, src_shared_base, v0 ; encoding: [0xeb,0x00,0x00,0x5a]
+0xeb,0x00,0x00,0x5a
+
+# GFX9: v_max_f32_e32 v0, src_shared_base, v0 ; encoding: [0xeb,0x00,0x00,0x16]
+0xeb,0x00,0x00,0x16
+
+# GFX9: v_max_f64 v[0:1], src_shared_base, v[0:1] ; encoding: [0x00,0x00,0x83,0xd2,0xeb,0x00,0x02,0x00]
+0x00,0x00,0x83,0xd2,0xeb,0x00,0x02,0x00
+
+# GFX9: v_pk_add_f16 v0, src_shared_base, v0 ; encoding: [0x00,0x00,0x8f,0xd3,0xeb,0x00,0x02,0x18]
+0x00,0x00,0x8f,0xd3,0xeb,0x00,0x02,0x18
+
+# GFX9: v_ceil_f16_e64 v0, -src_shared_base ; encoding: [0x00,0x00,0x85,0xd1,0xeb,0x00,0x00,0x20]
+0x00,0x00,0x85,0xd1,0xeb,0x00,0x00,0x20
+
+# GFX9: v_ceil_f16_e64 v0, |src_shared_base| ; encoding: [0x00,0x01,0x85,0xd1,0xeb,0x00,0x00,0x00]
+0x00,0x01,0x85,0xd1,0xeb,0x00,0x00,0x00
+
+# GFX9: v_ceil_f64_e64 v[5:6], |src_shared_base| ; encoding: [0x05,0x01,0x58,0xd1,0xeb,0x00,0x00,0x00]
+0x05,0x01,0x58,0xd1,0xeb,0x00,0x00,0x00
+
+# GFX9: v_ceil_f64_e64 v[5:6], -src_shared_base ; encoding: [0x05,0x00,0x58,0xd1,0xeb,0x00,0x00,0x20]
+0x05,0x00,0x58,0xd1,0xeb,0x00,0x00,0x20
+
+# GFX9: v_ceil_f32_e64 v0, -src_shared_base ; encoding: [0x00,0x00,0x5d,0xd1,0xeb,0x00,0x00,0x20]
+0x00,0x00,0x5d,0xd1,0xeb,0x00,0x00,0x20
+
+# GFX9: v_ceil_f32_e64 v0, |src_shared_base| ; encoding: [0x00,0x01,0x5d,0xd1,0xeb,0x00,0x00,0x00]
+0x00,0x01,0x5d,0xd1,0xeb,0x00,0x00,0x00
+
+# GFX9: v_ceil_f16_sdwa v5, |src_shared_base| dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xeb,0x16,0xa6,0x00]
+0xf9,0x8a,0x0a,0x7e,0xeb,0x16,0xa6,0x00
+
+# GFX9: v_ceil_f16_sdwa v5, -src_shared_base dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD ; encoding: [0xf9,0x8a,0x0a,0x7e,0xeb,0x16,0x96,0x00]
+0xf9,0x8a,0x0a,0x7e,0xeb,0x16,0x96,0x00
+
+# 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,0x86,0x00]
+0xf9,0x3a,0x0a,0x7e,0xeb,0x16,0x86,0x00
+
+# 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
OpenPOWER on IntegriCloud