summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorDmitry Preobrazhensky <dmitry.preobrazhensky@amd.com>2019-05-17 14:57:04 +0000
committerDmitry Preobrazhensky <dmitry.preobrazhensky@amd.com>2019-05-17 14:57:04 +0000
commit5ae3113969b737f8e90e820e5ad4dc4c0095fe2f (patch)
tree707c04f62bfbb63ca234d02ef3753e8c86e76edb /llvm/test
parente92a9c99d66d6a23bcd15b9bdf5ff8d02406446a (diff)
downloadbcm5719-llvm-5ae3113969b737f8e90e820e5ad4dc4c0095fe2f.tar.gz
bcm5719-llvm-5ae3113969b737f8e90e820e5ad4dc4c0095fe2f.zip
[AMDGPU][MC] Enabled labels with s_call_b64 and s_cbranch_i_fork
See https://bugs.llvm.org/show_bug.cgi?id=41888 Reviewers: artem.tamazov, arsenm Differential Revision: https://reviews.llvm.org/D62016 llvm-svn: 361040
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/MC/AMDGPU/labels-branch-gfx9.s19
-rw-r--r--llvm/test/MC/AMDGPU/sopk.s10
-rw-r--r--llvm/test/MC/Disassembler/AMDGPU/sopk_gfx9.txt6
-rw-r--r--llvm/test/MC/Disassembler/AMDGPU/sopk_vi.txt2
4 files changed, 28 insertions, 9 deletions
diff --git a/llvm/test/MC/AMDGPU/labels-branch-gfx9.s b/llvm/test/MC/AMDGPU/labels-branch-gfx9.s
new file mode 100644
index 00000000000..b66036d5546
--- /dev/null
+++ b/llvm/test/MC/AMDGPU/labels-branch-gfx9.s
@@ -0,0 +1,19 @@
+// RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -show-encoding %s | FileCheck %s --check-prefix=GFX9
+// RUN: llvm-mc -arch=amdgcn -mcpu=gfx900 -filetype=obj %s | llvm-objdump -disassemble -mcpu=gfx900 - | FileCheck %s --check-prefix=BIN
+
+loop_start:
+
+s_call_b64 s[10:11], loop_end
+// GFX9: s_call_b64 s[10:11], loop_end ; encoding: [A,A,0x8a,0xba]
+// GFX9-NEXT: ; fixup A - offset: 0, value: loop_end, kind: fixup_si_sopp_br
+// BIN: loop_start:
+// BIN-NEXT: s_call_b64 s[10:11], loop_end // 000000000000: BA8A0001
+
+s_call_b64 s[10:11], loop_start
+// GFX9: s_call_b64 s[10:11], loop_start ; encoding: [A,A,0x8a,0xba]
+// GFX9-NEXT: ; fixup A - offset: 0, value: loop_start, kind: fixup_si_sopp_br
+// BIN: s_call_b64 s[10:11], loop_start // 000000000004: BA8AFFFE
+// BIN: loop_end:
+
+loop_end:
+ s_nop 0
diff --git a/llvm/test/MC/AMDGPU/sopk.s b/llvm/test/MC/AMDGPU/sopk.s
index fabac112054..e5d854c924e 100644
--- a/llvm/test/MC/AMDGPU/sopk.s
+++ b/llvm/test/MC/AMDGPU/sopk.s
@@ -88,8 +88,8 @@ s_mulk_i32 s2, 0xFFFF
// VI9: s_mulk_i32 s2, 0xffff ; encoding: [0xff,0xff,0x82,0xb7]
s_cbranch_i_fork s[2:3], 0x6
-// SICI: s_cbranch_i_fork s[2:3], 0x6 ; encoding: [0x06,0x00,0x82,0xb8]
-// VI9: s_cbranch_i_fork s[2:3], 0x6 ; encoding: [0x06,0x00,0x02,0xb8]
+// SICI: s_cbranch_i_fork s[2:3], 6 ; encoding: [0x06,0x00,0x82,0xb8]
+// VI9: s_cbranch_i_fork s[2:3], 6 ; encoding: [0x06,0x00,0x02,0xb8]
// raw number mapped to known HW register
s_getreg_b32 s2, 0x6
@@ -282,13 +282,13 @@ s_endpgm_ordered_ps_done
// NOSICIVI: error: instruction not supported on this GPU
s_call_b64 s[12:13], 12609
-// GFX9: s_call_b64 s[12:13], 0x3141 ; encoding: [0x41,0x31,0x8c,0xba]
+// GFX9: s_call_b64 s[12:13], 12609 ; encoding: [0x41,0x31,0x8c,0xba]
// NOSICIVI: error: instruction not supported on this GPU
s_call_b64 s[100:101], 12609
-// GFX9: s_call_b64 s[100:101], 0x3141 ; encoding: [0x41,0x31,0xe4,0xba]
+// GFX9: s_call_b64 s[100:101], 12609 ; encoding: [0x41,0x31,0xe4,0xba]
// NOSICIVI: error: instruction not supported on this GPU
s_call_b64 s[10:11], 49617
-// GFX9: s_call_b64 s[10:11], 0xc1d1 ; encoding: [0xd1,0xc1,0x8a,0xba]
+// GFX9: s_call_b64 s[10:11], 49617 ; encoding: [0xd1,0xc1,0x8a,0xba]
// NOSICIVI: error: instruction not supported on this GPU
diff --git a/llvm/test/MC/Disassembler/AMDGPU/sopk_gfx9.txt b/llvm/test/MC/Disassembler/AMDGPU/sopk_gfx9.txt
index 7d8159f9eff..f7cacbc6fd3 100644
--- a/llvm/test/MC/Disassembler/AMDGPU/sopk_gfx9.txt
+++ b/llvm/test/MC/Disassembler/AMDGPU/sopk_gfx9.txt
@@ -3,11 +3,11 @@
# GFX9: s_endpgm_ordered_ps_done ; encoding: [0x00,0x00,0x9e,0xbf]
0x00,0x00,0x9e,0xbf
-# GFX9: s_call_b64 s[10:11], 0x3141 ; encoding: [0x41,0x31,0x8a,0xba]
+# GFX9: s_call_b64 s[10:11], 12609 ; encoding: [0x41,0x31,0x8a,0xba]
0x41,0x31,0x8a,0xba
-# GFX9: s_call_b64 s[100:101], 0x3141 ; encoding: [0x41,0x31,0xe4,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], 0xc1d1 ; encoding: [0xd1,0xc1,0x8a,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/sopk_vi.txt b/llvm/test/MC/Disassembler/AMDGPU/sopk_vi.txt
index 499b862884d..c3b5ffeb62e 100644
--- a/llvm/test/MC/Disassembler/AMDGPU/sopk_vi.txt
+++ b/llvm/test/MC/Disassembler/AMDGPU/sopk_vi.txt
@@ -45,7 +45,7 @@
# VI: s_mulk_i32 s2, 0x6 ; encoding: [0x06,0x00,0x82,0xb7]
0x06 0x00 0x82 0xb7
-# VI: s_cbranch_i_fork s[2:3], 0x6 ; encoding: [0x06,0x00,0x02,0xb8]
+# VI: s_cbranch_i_fork s[2:3], 6 ; encoding: [0x06,0x00,0x02,0xb8]
0x06 0x00 0x02 0xb8
# VI: s_getreg_b32 s2, hwreg(HW_REG_LDS_ALLOC) ; encoding: [0x06,0xf8,0x82,0xb8]
OpenPOWER on IntegriCloud