1 # RUN: llvm-mc -triple=amdgcn -mcpu=gfx1010 -mattr=+wavefrontsize32,-wavefrontsize64 -disassemble -show-encoding < %s | FileCheck -strict-whitespace -check-prefix=GFX10 %s
2 # RUN: llvm-mc -triple=amdgcn -mcpu=gfx1010 -mattr=-wavefrontsize32,+wavefrontsize64 -disassemble -show-encoding < %s | FileCheck -strict-whitespace -check-prefix=GFX10 %s
5 # GFX10: s_barrier ; encoding: [0x00,0x00,0x8a,0xbf]
8 # GFX10: s_branch 0 ; encoding: [0x00,0x00,0x82,0xbf]
11 # GFX10: s_branch 4660 ; encoding: [0x34,0x12,0x82,0xbf]
14 # GFX10: s_branch 49617 ; encoding: [0xd1,0xc1,0x82,0xbf]
17 # GFX10: s_cbranch_cdbgsys 0 ; encoding: [0x00,0x00,0x97,0xbf]
20 # GFX10: s_cbranch_cdbgsys 4660 ; encoding: [0x34,0x12,0x97,0xbf]
23 # GFX10: s_cbranch_cdbgsys 49617 ; encoding: [0xd1,0xc1,0x97,0xbf]
26 # GFX10: s_cbranch_cdbgsys_and_user 0 ; encoding: [0x00,0x00,0x9a,0xbf]
29 # GFX10: s_cbranch_cdbgsys_and_user 4660 ; encoding: [0x34,0x12,0x9a,0xbf]
32 # GFX10: s_cbranch_cdbgsys_and_user 49617 ; encoding: [0xd1,0xc1,0x9a,0xbf]
35 # GFX10: s_cbranch_cdbgsys_or_user 0 ; encoding: [0x00,0x00,0x99,0xbf]
38 # GFX10: s_cbranch_cdbgsys_or_user 4660 ; encoding: [0x34,0x12,0x99,0xbf]
41 # GFX10: s_cbranch_cdbgsys_or_user 49617 ; encoding: [0xd1,0xc1,0x99,0xbf]
44 # GFX10: s_cbranch_cdbguser 0 ; encoding: [0x00,0x00,0x98,0xbf]
47 # GFX10: s_cbranch_cdbguser 4660 ; encoding: [0x34,0x12,0x98,0xbf]
50 # GFX10: s_cbranch_cdbguser 49617 ; encoding: [0xd1,0xc1,0x98,0xbf]
53 # GFX10: s_cbranch_execnz 0 ; encoding: [0x00,0x00,0x89,0xbf]
56 # GFX10: s_cbranch_execnz 4660 ; encoding: [0x34,0x12,0x89,0xbf]
59 # GFX10: s_cbranch_execnz 49617 ; encoding: [0xd1,0xc1,0x89,0xbf]
62 # GFX10: s_cbranch_execz 0 ; encoding: [0x00,0x00,0x88,0xbf]
65 # GFX10: s_cbranch_execz 4660 ; encoding: [0x34,0x12,0x88,0xbf]
68 # GFX10: s_cbranch_execz 49617 ; encoding: [0xd1,0xc1,0x88,0xbf]
71 # GFX10: s_cbranch_scc0 0 ; encoding: [0x00,0x00,0x84,0xbf]
74 # GFX10: s_cbranch_scc0 4660 ; encoding: [0x34,0x12,0x84,0xbf]
77 # GFX10: s_cbranch_scc0 49617 ; encoding: [0xd1,0xc1,0x84,0xbf]
80 # GFX10: s_cbranch_scc1 0 ; encoding: [0x00,0x00,0x85,0xbf]
83 # GFX10: s_cbranch_scc1 4660 ; encoding: [0x34,0x12,0x85,0xbf]
86 # GFX10: s_cbranch_scc1 49617 ; encoding: [0xd1,0xc1,0x85,0xbf]
89 # GFX10: s_cbranch_vccnz 0 ; encoding: [0x00,0x00,0x87,0xbf]
92 # GFX10: s_cbranch_vccnz 4660 ; encoding: [0x34,0x12,0x87,0xbf]
95 # GFX10: s_cbranch_vccnz 49617 ; encoding: [0xd1,0xc1,0x87,0xbf]
98 # GFX10: s_cbranch_vccz 0 ; encoding: [0x00,0x00,0x86,0xbf]
101 # GFX10: s_cbranch_vccz 4660 ; encoding: [0x34,0x12,0x86,0xbf]
104 # GFX10: s_cbranch_vccz 49617 ; encoding: [0xd1,0xc1,0x86,0xbf]
107 # GFX10: s_clause 0x0 ; encoding: [0x00,0x00,0xa1,0xbf]
110 # GFX10: s_clause 0x1234 ; encoding: [0x34,0x12,0xa1,0xbf]
113 # GFX10: s_clause 0xc1d1 ; encoding: [0xd1,0xc1,0xa1,0xbf]
116 # GFX10: s_code_end ; encoding: [0x00,0x00,0x9f,0xbf]
119 # GFX10: s_decperflevel 0 ; encoding: [0x00,0x00,0x95,0xbf]
122 # GFX10: s_decperflevel 0x1234 ; encoding: [0x34,0x12,0x95,0xbf]
125 # GFX10: s_decperflevel 0xc1d1 ; encoding: [0xd1,0xc1,0x95,0xbf]
128 # GFX10: s_denorm_mode 0 ; encoding: [0x00,0x00,0xa5,0xbf]
131 # GFX10: s_denorm_mode 0x1234 ; encoding: [0x34,0x12,0xa5,0xbf]
134 # GFX10: s_denorm_mode 0xc1d1 ; encoding: [0xd1,0xc1,0xa5,0xbf]
137 # GFX10: s_endpgm ; encoding: [0x00,0x00,0x81,0xbf]
140 # GFX10: s_endpgm 1 ; encoding: [0x01,0x00,0x81,0xbf]
143 # GFX10: s_endpgm 65535 ; encoding: [0xff,0xff,0x81,0xbf]
146 # GFX10: s_endpgm_ordered_ps_done ; encoding: [0x00,0x00,0x9e,0xbf]
149 # GFX10: s_endpgm_saved ; encoding: [0x00,0x00,0x9b,0xbf]
152 # GFX10: s_icache_inv ; encoding: [0x00,0x00,0x93,0xbf]
155 # GFX10: s_incperflevel 0 ; encoding: [0x00,0x00,0x94,0xbf]
158 # GFX10: s_incperflevel 0x1234 ; encoding: [0x34,0x12,0x94,0xbf]
161 # GFX10: s_incperflevel 0xc1d1 ; encoding: [0xd1,0xc1,0x94,0xbf]
164 # GFX10: s_inst_prefetch 0x0 ; encoding: [0x00,0x00,0xa0,0xbf]
167 # GFX10: s_inst_prefetch 0x1234 ; encoding: [0x34,0x12,0xa0,0xbf]
170 # GFX10: s_inst_prefetch 0xc1d1 ; encoding: [0xd1,0xc1,0xa0,0xbf]
173 # GFX10: s_nop 0 ; encoding: [0x00,0x00,0x80,0xbf]
176 # GFX10: s_nop 0x1234 ; encoding: [0x34,0x12,0x80,0xbf]
179 # GFX10: s_nop 0xc1d1 ; encoding: [0xd1,0xc1,0x80,0xbf]
182 # GFX10: s_round_mode 0x0 ; encoding: [0x00,0x00,0xa4,0xbf]
185 # GFX10: s_round_mode 0x1234 ; encoding: [0x34,0x12,0xa4,0xbf]
188 # GFX10: s_round_mode 0xc1d1 ; encoding: [0xd1,0xc1,0xa4,0xbf]
191 # GFX10: s_sendmsg sendmsg(0, 0, 0) ; encoding: [0x00,0x00,0x90,0xbf]
194 # GFX10: s_sendmsg 4660 ; encoding: [0x34,0x12,0x90,0xbf]
197 # GFX10: s_sendmsg 49617 ; encoding: [0xd1,0xc1,0x90,0xbf]
200 # GFX10: s_sendmsghalt sendmsg(0, 0, 0) ; encoding: [0x00,0x00,0x91,0xbf]
203 # GFX10: s_sendmsghalt 4660 ; encoding: [0x34,0x12,0x91,0xbf]
206 # GFX10: s_sendmsghalt 49617 ; encoding: [0xd1,0xc1,0x91,0xbf]
209 # GFX10: s_sethalt 0 ; encoding: [0x00,0x00,0x8d,0xbf]
212 # GFX10: s_sethalt 0x1234 ; encoding: [0x34,0x12,0x8d,0xbf]
215 # GFX10: s_sethalt 0xc1d1 ; encoding: [0xd1,0xc1,0x8d,0xbf]
218 # GFX10: s_setkill 0 ; encoding: [0x00,0x00,0x8b,0xbf]
221 # GFX10: s_setkill 0x1234 ; encoding: [0x34,0x12,0x8b,0xbf]
224 # GFX10: s_setkill 0xc1d1 ; encoding: [0xd1,0xc1,0x8b,0xbf]
227 # GFX10: s_setprio 0 ; encoding: [0x00,0x00,0x8f,0xbf]
230 # GFX10: s_setprio 0x1234 ; encoding: [0x34,0x12,0x8f,0xbf]
233 # GFX10: s_setprio 0xc1d1 ; encoding: [0xd1,0xc1,0x8f,0xbf]
236 # GFX10: s_sleep 0 ; encoding: [0x00,0x00,0x8e,0xbf]
239 # GFX10: s_sleep 0x1234 ; encoding: [0x34,0x12,0x8e,0xbf]
242 # GFX10: s_sleep 0xc1d1 ; encoding: [0xd1,0xc1,0x8e,0xbf]
245 # GFX10: s_trap 0 ; encoding: [0x00,0x00,0x92,0xbf]
248 # GFX10: s_trap 0x1234 ; encoding: [0x34,0x12,0x92,0xbf]
251 # GFX10: s_trap 0xc1d1 ; encoding: [0xd1,0xc1,0x92,0xbf]
254 # GFX10: s_ttracedata ; encoding: [0x00,0x00,0x96,0xbf]
257 # GFX10: s_ttracedata_imm 0x0 ; encoding: [0x00,0x00,0xa8,0xbf]
260 # GFX10: s_ttracedata_imm 0x1234 ; encoding: [0x34,0x12,0xa8,0xbf]
263 # GFX10: s_ttracedata_imm 0xc1d1 ; encoding: [0xd1,0xc1,0xa8,0xbf]
266 # GFX10: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; encoding: [0x00,0x00,0x8c,0xbf]
269 # GFX10: s_waitcnt vmcnt(4) expcnt(3) lgkmcnt(18) ; encoding: [0x34,0x12,0x8c,0xbf]
272 # GFX10: s_waitcnt vmcnt(49) expcnt(5) lgkmcnt(1) ; encoding: [0x51,0xc1,0x8c,0xbf]
275 # GFX10: s_wait_idle ; encoding: [0x00,0x00,0xa2,0xbf]
278 # GFX10: s_wakeup ; encoding: [0x00,0x00,0x83,0xbf]
281 #===------------------------------------------------------------------------===#
283 #===------------------------------------------------------------------------===#
285 # GFX10: s_waitcnt_depctr 0x20 ; encoding: [0x20,0x00,0xa3,0xbf]
288 # GFX10: s_waitcnt_depctr 0x40 ; encoding: [0x40,0x00,0xa3,0xbf]
291 # GFX10: s_waitcnt_depctr 0x60 ; encoding: [0x60,0x00,0xa3,0xbf]
294 # GFX10: s_waitcnt_depctr 0x80 ; encoding: [0x80,0x00,0xa3,0xbf]
297 # GFX10: s_waitcnt_depctr 0xffff ; encoding: [0xff,0xff,0xa3,0xbf]
300 # GFX10: s_waitcnt_depctr depctr_sa_sdst(0) ; encoding: [0x1e,0xff,0xa3,0xbf]
303 # GFX10: s_waitcnt_depctr depctr_va_vdst(0) ; encoding: [0x1f,0x0f,0xa3,0xbf]
306 # GFX10: s_waitcnt_depctr depctr_va_vdst(1) ; encoding: [0x1f,0x1f,0xa3,0xbf]
309 # GFX10: s_waitcnt_depctr depctr_va_vdst(14) ; encoding: [0x1f,0xef,0xa3,0xbf]
312 # GFX10: s_waitcnt_depctr depctr_va_sdst(0) ; encoding: [0x1f,0xf1,0xa3,0xbf]
315 # GFX10: s_waitcnt_depctr depctr_va_sdst(6) ; encoding: [0x1f,0xfd,0xa3,0xbf]
318 # GFX10: s_waitcnt_depctr depctr_va_ssrc(0) ; encoding: [0x1f,0xfe,0xa3,0xbf]
321 # GFX10: s_waitcnt_depctr depctr_va_vcc(0) ; encoding: [0x1d,0xff,0xa3,0xbf]
324 # GFX10: s_waitcnt_depctr depctr_vm_vsrc(0) ; encoding: [0x03,0xff,0xa3,0xbf]
327 # GFX10: s_waitcnt_depctr depctr_vm_vsrc(1) ; encoding: [0x07,0xff,0xa3,0xbf]
330 # GFX10: s_waitcnt_depctr depctr_vm_vsrc(6) ; encoding: [0x1b,0xff,0xa3,0xbf]
333 # GFX10: s_waitcnt_depctr depctr_sa_sdst(0) depctr_va_vdst(0) depctr_va_sdst(0) depctr_va_ssrc(0) depctr_va_vcc(0) depctr_vm_vsrc(0) ; encoding: [0x00,0x00,0xa3,0xbf]
336 # GFX10: s_waitcnt_depctr depctr_va_vdst(1) depctr_va_sdst(1) depctr_vm_vsrc(1) ; encoding: [0x07,0x13,0xa3,0xbf]
339 # GFX10: s_waitcnt_depctr depctr_va_vdst(14) depctr_va_sdst(6) depctr_vm_vsrc(6) ; encoding: [0x1b,0xed,0xa3,0xbf]