121
|
1 // RUN: not llvm-mc -arch=amdgcn -mcpu=gfx900 -show-encoding %s | FileCheck -check-prefix=GFX9 -check-prefix=GCN %s
|
|
2 // RUN: not llvm-mc -arch=amdgcn -mcpu=gfx900 -show-encoding 2>&1 %s | FileCheck -check-prefix=GFX9-ERR -check-prefix=GCNERR %s
|
|
3 // RUN: not llvm-mc -arch=amdgcn -mcpu=tonga -show-encoding 2>&1 %s | FileCheck -check-prefix=VI-ERR -check-prefix=GCNERR %s
|
|
4
|
|
5 global_load_ubyte v1, v[3:4], off
|
|
6 // GFX9: global_load_ubyte v1, v[3:4], off ; encoding: [0x00,0x80,0x40,0xdc,0x03,0x00,0x7f,0x01]
|
|
7 // VI-ERR: instruction not supported on this GPU
|
|
8
|
|
9 global_load_sbyte v1, v[3:4], off
|
|
10 // GFX9: global_load_sbyte v1, v[3:4], off ; encoding: [0x00,0x80,0x44,0xdc,0x03,0x00,0x7f,0x01]
|
|
11 // VI-ERR: instruction not supported on this GPU
|
|
12
|
|
13 global_load_ushort v1, v[3:4], off
|
|
14 // GFX9: global_load_ushort v1, v[3:4], off ; encoding: [0x00,0x80,0x48,0xdc,0x03,0x00,0x7f,0x01]
|
|
15 // VI-ERR: instruction not supported on this GPU
|
|
16
|
|
17 global_load_sshort v1, v[3:4], off
|
|
18 // GFX9: global_load_sshort v1, v[3:4], off ; encoding: [0x00,0x80,0x4c,0xdc,0x03,0x00,0x7f,0x01]
|
|
19 // VI-ERR: instruction not supported on this GPU
|
|
20
|
|
21 global_load_dword v1, v[3:4], off
|
|
22 // GFX9: global_load_dword v1, v[3:4], off ; encoding: [0x00,0x80,0x50,0xdc,0x03,0x00,0x7f,0x01]
|
|
23 // VI-ERR: instruction not supported on this GPU
|
|
24
|
|
25 global_load_dwordx2 v[1:2], v[3:4], off
|
|
26 // GFX9: global_load_dwordx2 v[1:2], v[3:4], off ; encoding: [0x00,0x80,0x54,0xdc,0x03,0x00,0x7f,0x01]
|
|
27 // VI-ERR: instruction not supported on this GPU
|
|
28
|
|
29 global_load_dwordx3 v[1:3], v[3:4], off
|
|
30 // GFX9: global_load_dwordx3 v[1:3], v[3:4], off ; encoding: [0x00,0x80,0x58,0xdc,0x03,0x00,0x7f,0x01]
|
|
31 // VI-ERR: instruction not supported on this GPU
|
|
32
|
|
33 global_load_dwordx4 v[1:4], v[3:4], off
|
|
34 // GFX9: global_load_dwordx4 v[1:4], v[3:4], off ; encoding: [0x00,0x80,0x5c,0xdc,0x03,0x00,0x7f,0x01]
|
|
35 // VI-ERR: instruction not supported on this GPU
|
|
36
|
|
37 // FIXME: VI error should be instruction nto supported
|
|
38 global_load_dword v1, v[3:4], off offset:0
|
|
39 // GFX9: global_load_dword v1, v[3:4], off ; encoding: [0x00,0x80,0x50,0xdc,0x03,0x00,0x7f,0x01]
|
|
40 // VI-ERR: :41: error: not a valid operand.
|
|
41
|
|
42 global_load_dword v1, v[3:4], off offset:4095
|
|
43 // GFX9: global_load_dword v1, v[3:4], off offset:4095 ; encoding: [0xff,0x8f,0x50,0xdc,0x03,0x00,0x7f,0x01]
|
|
44 // VI-ERR: :41: error: not a valid operand.
|
|
45
|
|
46 global_load_dword v1, v[3:4], off offset:-1
|
|
47 // GFX9: global_load_dword v1, v[3:4], off offset:-1 ; encoding: [0xff,0x9f,0x50,0xdc,0x03,0x00,0x7f,0x01]
|
|
48 // VI-ERR: :41: error: not a valid operand.
|
|
49
|
|
50 global_load_dword v1, v[3:4], off offset:-4096
|
|
51 // GFX9: global_load_dword v1, v[3:4], off offset:-4096 ; encoding: [0x00,0x90,0x50,0xdc,0x03,0x00,0x7f,0x01]
|
|
52 // VI-ERR: :41: error: not a valid operand.
|
|
53
|
|
54 global_load_dword v1, v[3:4], off offset:4096
|
|
55 // GFX9-ERR: :35: error: invalid operand for instruction
|
|
56 // VI-ERR: :41: error: not a valid operand.
|
|
57
|
|
58 global_load_dword v1, v[3:4] off, offset:-4097
|
|
59 // GFX9-ERR: :35: error: invalid operand for instruction
|
|
60 // VI-ERR: :41: error: not a valid operand.
|
|
61
|
|
62 global_store_byte v[3:4], v1, off
|
|
63 // GFX9: global_store_byte v[3:4], v1, off ; encoding: [0x00,0x80,0x60,0xdc,0x03,0x01,0x7f,0x00]
|
|
64 // VI-ERR: instruction not supported on this GPU
|
|
65
|
|
66 global_store_short v[3:4], v1, off
|
|
67 // GFX9: global_store_short v[3:4], v1, off ; encoding: [0x00,0x80,0x68,0xdc,0x03,0x01,0x7f,0x00]
|
|
68 // VI-ERR: instruction not supported on this GPU
|
|
69
|
|
70 global_store_dword v[3:4], v1, off
|
|
71 // GFX9: global_store_dword v[3:4], v1, off ; encoding: [0x00,0x80,0x70,0xdc,0x03,0x01,0x7f,0x00]
|
|
72 // VI-ERR: instruction not supported on this GPU
|
|
73
|
|
74 global_store_dwordx2 v[3:4], v[1:2], off
|
|
75 // GFX9: global_store_dwordx2 v[3:4], v[1:2], off ; encoding: [0x00,0x80,0x74,0xdc,0x03,0x01,0x7f,0x00]
|
|
76 // VI-ERR: instruction not supported on this GPU
|
|
77
|
|
78 global_store_dwordx3 v[3:4], v[1:3], off
|
|
79 // GFX9: global_store_dwordx3 v[3:4], v[1:3], off ; encoding: [0x00,0x80,0x78,0xdc,0x03,0x01,0x7f,0x00]
|
|
80 // VI-ERR: instruction not supported on this GPU
|
|
81
|
|
82 global_store_dwordx4 v[3:4], v[1:4], off
|
|
83 // GFX9: global_store_dwordx4 v[3:4], v[1:4], off ; encoding: [0x00,0x80,0x7c,0xdc,0x03,0x01,0x7f,0x00]
|
|
84 // VI-ERR: instruction not supported on this GPU
|
|
85
|
|
86 global_store_dword v[3:4], v1, off offset:12
|
|
87 // GFX9: global_store_dword v[3:4], v1, off offset:12 ; encoding: [0x0c,0x80,0x70,0xdc,0x03,0x01,0x7f,0x00]
|
|
88 // VI-ERR: :42: error: not a valid operand
|
|
89
|
|
90 global_load_dword v1, v[3:4], s[2:3]
|
|
91 // GFX9: global_load_dword v1, v[3:4], s[2:3] ; encoding: [0x00,0x80,0x50,0xdc,0x03,0x00,0x02,0x01]
|
|
92 // VI-ERR: instruction not supported on this GPU
|
|
93
|
|
94 global_load_dword v1, v[3:4], s[2:3] offset:24
|
|
95 // GFX9: global_load_dword v1, v[3:4], s[2:3] offset:24 ; encoding: [0x18,0x80,0x50,0xdc,0x03,0x00,0x02,0x01]
|
|
96 // VI-ERR: :44: error: not a valid operand.
|
|
97
|
|
98 global_load_dword v1, v[3:4], s[2:3] offset:-8
|
|
99 // GFX9: global_load_dword v1, v[3:4], s[2:3] offset:-8 ; encoding: [0xf8,0x9f,0x50,0xdc,0x03,0x00,0x02,0x01]
|
|
100 // VI-ERR: :44: error: not a valid operand.
|
|
101
|
|
102 global_store_dword v[3:4], v1, s[2:3]
|
|
103 // GFX9: global_store_dword v[3:4], v1, s[2:3] ; encoding: [0x00,0x80,0x70,0xdc,0x03,0x01,0x02,0x00]
|
|
104 // VI-ERR: instruction not supported on this GPU
|
|
105
|
|
106 global_store_dword v[3:4], v1, s[2:3] offset:24
|
|
107 // GFX9: global_store_dword v[3:4], v1, s[2:3] offset:24 ; encoding: [0x18,0x80,0x70,0xdc,0x03,0x01,0x02,0x00]
|
|
108 // VI-ERR: :45: error: not a valid operand.
|
|
109
|
|
110 global_store_dword v[3:4], v1, s[2:3] offset:-8
|
|
111 // GFX9: global_store_dword v[3:4], v1, s[2:3] offset:-8 ; encoding: [0xf8,0x9f,0x70,0xdc,0x03,0x01,0x02,0x00]
|
|
112 // VI-ERR: :45: error: not a valid operand.
|
|
113
|
|
114 // XXX: Is this valid?
|
|
115 global_store_dword v[3:4], v1, exec
|
|
116 // GFX9: global_store_dword v[3:4], v1, exec ; encoding: [0x00,0x80,0x70,0xdc,0x03,0x01,0x7e,0x00]
|
|
117 // VI-ERR: instruction not supported on this GPU
|
|
118
|
|
119 global_load_dword v1, v[3:4], s2
|
|
120 // GFX9-ERR: :31: error: invalid operand for instruction
|
|
121 // VI-ERR: :31: error: invalid operand for instruction
|
|
122
|
|
123 global_load_dword v1, v[3:4], exec_hi
|
|
124 // GFX9-ERR: :31: error: invalid operand for instruction
|
|
125 // VI-ERR: :31: error: invalid operand for instruction
|
|
126
|
|
127 global_atomic_cmpswap v[3:4], v[5:6], off
|
|
128 // GFX9: global_atomic_cmpswap v[3:4], v[5:6], off ; encoding: [0x00,0x80,0x04,0xdd,0x03,0x05,0x7f,0x00]
|
|
129 // VI-ERR: error: instruction not supported on this GPU
|
|
130
|
|
131 global_atomic_cmpswap_x2 v[3:4], v[5:8], off
|
|
132 // GFX9: global_atomic_cmpswap_x2 v[3:4], v[5:8], off ; encoding: [0x00,0x80,0x84,0xdd,0x03,0x05,0x7f,0x00]
|
|
133 // VI-ERR: error: instruction not supported on this GPU
|
|
134
|
|
135 global_atomic_swap v[3:4], v5, off
|
|
136 // GFX9: global_atomic_swap v[3:4], v5, off ; encoding: [0x00,0x80,0x00,0xdd,0x03,0x05,0x7f,0x00]
|
|
137 // VI-ERR: error: instruction not supported on this GPU
|
|
138
|
|
139 global_atomic_swap_x2 v[3:4], v[5:6], off
|
|
140 // GFX9: global_atomic_swap_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0x80,0xdd,0x03,0x05,0x7f,0x00]
|
|
141 // VI-ERR: error: instruction not supported on this GPU
|
|
142
|
|
143 global_atomic_add v[3:4], v5, off
|
|
144 // GFX9: global_atomic_add v[3:4], v5, off ; encoding: [0x00,0x80,0x08,0xdd,0x03,0x05,0x7f,0x00]
|
|
145 // VI-ERR: instruction not supported on this GPU
|
|
146
|
|
147 global_atomic_sub v[3:4], v5, off
|
|
148 // GFX9: global_atomic_sub v[3:4], v5, off ; encoding: [0x00,0x80,0x0c,0xdd,0x03,0x05,0x7f,0x00]
|
|
149 // VI-ERR: instruction not supported on this GPU
|
|
150
|
|
151 global_atomic_smin v[3:4], v5, off
|
|
152 // GFX9: global_atomic_smin v[3:4], v5, off ; encoding: [0x00,0x80,0x10,0xdd,0x03,0x05,0x7f,0x00]
|
|
153 // VI-ERR: instruction not supported on this GPU
|
|
154
|
|
155 global_atomic_umin v[3:4], v5, off
|
|
156 // GFX9: global_atomic_umin v[3:4], v5, off ; encoding: [0x00,0x80,0x14,0xdd,0x03,0x05,0x7f,0x00]
|
|
157 // VI-ERR: instruction not supported on this GPU
|
|
158
|
|
159 global_atomic_smax v[3:4], v5, off
|
|
160 // GFX9: global_atomic_smax v[3:4], v5, off ; encoding: [0x00,0x80,0x18,0xdd,0x03,0x05,0x7f,0x00]
|
|
161 // VI-ERR: instruction not supported on this GPU
|
|
162
|
|
163 global_atomic_umax v[3:4], v5, off
|
|
164 // GFX9: global_atomic_umax v[3:4], v5, off ; encoding: [0x00,0x80,0x1c,0xdd,0x03,0x05,0x7f,0x00]
|
|
165 // VI-ERR: instruction not supported on this GPU
|
|
166
|
|
167 global_atomic_and v[3:4], v5, off
|
|
168 // GFX9: global_atomic_and v[3:4], v5, off ; encoding: [0x00,0x80,0x20,0xdd,0x03,0x05,0x7f,0x00]
|
|
169 // VI-ERR: instruction not supported on this GPU
|
|
170
|
|
171 global_atomic_or v[3:4], v5, off
|
|
172 // GFX9: global_atomic_or v[3:4], v5, off ; encoding: [0x00,0x80,0x24,0xdd,0x03,0x05,0x7f,0x00]
|
|
173 // VI-ERR: instruction not supported on this GPU
|
|
174
|
|
175 global_atomic_xor v[3:4], v5, off
|
|
176 // GFX9: global_atomic_xor v[3:4], v5, off ; encoding: [0x00,0x80,0x28,0xdd,0x03,0x05,0x7f,0x00]
|
|
177 // VI-ERR: instruction not supported on this GPU
|
|
178
|
|
179 global_atomic_inc v[3:4], v5, off
|
|
180 // GFX9: global_atomic_inc v[3:4], v5, off ; encoding: [0x00,0x80,0x2c,0xdd,0x03,0x05,0x7f,0x00]
|
|
181 // VI-ERR: instruction not supported on this GPU
|
|
182
|
|
183 global_atomic_dec v[3:4], v5, off
|
|
184 // GFX9: global_atomic_dec v[3:4], v5, off ; encoding: [0x00,0x80,0x30,0xdd,0x03,0x05,0x7f,0x00]
|
|
185 // VI-ERR: instruction not supported on this GPU
|
|
186
|
|
187 global_atomic_add_x2 v[3:4], v[5:6], off
|
|
188 // GFX9: global_atomic_add_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0x88,0xdd,0x03,0x05,0x7f,0x00]
|
|
189 // VI-ERR: instruction not supported on this GPU
|
|
190
|
|
191 global_atomic_sub_x2 v[3:4], v[5:6], off
|
|
192 // GFX9: global_atomic_sub_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0x8c,0xdd,0x03,0x05,0x7f,0x00]
|
|
193 // VI-ERR: instruction not supported on this GPU
|
|
194
|
|
195 global_atomic_smin_x2 v[3:4], v[5:6], off
|
|
196 // GFX9: global_atomic_smin_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0x90,0xdd,0x03,0x05,0x7f,0x00]
|
|
197 // VI-ERR: instruction not supported on this GPU
|
|
198
|
|
199 global_atomic_umin_x2 v[3:4], v[5:6], off
|
|
200 // GFX9: global_atomic_umin_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0x94,0xdd,0x03,0x05,0x7f,0x00]
|
|
201 // VI-ERR: instruction not supported on this GPU
|
|
202
|
|
203 global_atomic_smax_x2 v[3:4], v[5:6], off
|
|
204 // GFX9: global_atomic_smax_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0x98,0xdd,0x03,0x05,0x7f,0x00]
|
|
205 // VI-ERR: instruction not supported on this GPU
|
|
206
|
|
207 global_atomic_umax_x2 v[3:4], v[5:6], off
|
|
208 // GFX9: global_atomic_umax_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0x9c,0xdd,0x03,0x05,0x7f,0x00]
|
|
209 // VI-ERR: instruction not supported on this GPU
|
|
210
|
|
211 global_atomic_and_x2 v[3:4], v[5:6], off
|
|
212 // GFX9: global_atomic_and_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0xa0,0xdd,0x03,0x05,0x7f,0x00]
|
|
213 // VI-ERR: instruction not supported on this GPU
|
|
214
|
|
215 global_atomic_or_x2 v[3:4], v[5:6], off
|
|
216 // GFX9: global_atomic_or_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0xa4,0xdd,0x03,0x05,0x7f,0x00]
|
|
217 // VI-ERR: instruction not supported on this GPU
|
|
218
|
|
219 global_atomic_xor_x2 v[3:4], v[5:6], off
|
|
220 // GFX9: global_atomic_xor_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0xa8,0xdd,0x03,0x05,0x7f,0x00]
|
|
221 // VI-ERR: instruction not supported on this GPU
|
|
222
|
|
223 global_atomic_inc_x2 v[3:4], v[5:6], off
|
|
224 // GFX9: global_atomic_inc_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0xac,0xdd,0x03,0x05,0x7f,0x00]
|
|
225 // VI-ERR: instruction not supported on this GPU
|
|
226
|
|
227 global_atomic_dec_x2 v[3:4], v[5:6], off
|
|
228 // GFX9: global_atomic_dec_x2 v[3:4], v[5:6], off ; encoding: [0x00,0x80,0xb0,0xdd,0x03,0x05,0x7f,0x00]
|
|
229 // VI-ERR: error: instruction not supported on this GPU
|
|
230
|
|
231 global_atomic_cmpswap v[3:4], v[5:6], off offset:-16
|
|
232 // GFX9: global_atomic_cmpswap v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0x04,0xdd,0x03,0x05,0x7f,0x00]
|
|
233 // VI-ERR: :49: error: not a valid operand.
|
|
234
|
|
235 global_atomic_cmpswap_x2 v[3:4], v[5:8], off offset:-16
|
|
236 // GFX9: global_atomic_cmpswap_x2 v[3:4], v[5:8], off offset:-16 ; encoding: [0xf0,0x9f,0x84,0xdd,0x03,0x05,0x7f,0x00]
|
|
237 // VI-ERR: :52: error: not a valid operand.
|
|
238
|
|
239 global_atomic_swap v[3:4], v5, off offset:-16
|
|
240 // GFX9: global_atomic_swap v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x00,0xdd,0x03,0x05,0x7f,0x00]
|
|
241 // VI-ERR: :42: error: not a valid operand
|
|
242
|
|
243 global_atomic_swap_x2 v[3:4], v[5:6], off offset:-16
|
|
244 // GFX9: global_atomic_swap_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0x80,0xdd,0x03,0x05,0x7f,0x00]
|
|
245 // VI-ERR: :49: error: not a valid operand
|
|
246
|
|
247 global_atomic_add v[3:4], v5, off offset:-16
|
|
248 // GFX9: global_atomic_add v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x08,0xdd,0x03,0x05,0x7f,0x00]
|
|
249 // VI-ERR: :41: error: not a valid operand
|
|
250
|
|
251 global_atomic_sub v[3:4], v5, off offset:-16
|
|
252 // GFX9: global_atomic_sub v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x0c,0xdd,0x03,0x05,0x7f,0x00]
|
|
253 // VI-ERR: :41: error: not a valid operand
|
|
254
|
|
255 global_atomic_smin v[3:4], v5, off offset:-16
|
|
256 // GFX9: global_atomic_smin v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x10,0xdd,0x03,0x05,0x7f,0x00]
|
|
257 // VI-ERR: :42: error: not a valid operand
|
|
258
|
|
259 global_atomic_umin v[3:4], v5, off offset:-16
|
|
260 // GFX9: global_atomic_umin v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x14,0xdd,0x03,0x05,0x7f,0x00]
|
|
261 // VI-ERR: :42: error: not a valid operand
|
|
262
|
|
263 global_atomic_smax v[3:4], v5, off offset:-16
|
|
264 // GFX9: global_atomic_smax v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x18,0xdd,0x03,0x05,0x7f,0x00]
|
|
265 // VI-ERR: :42: error: not a valid operand
|
|
266
|
|
267 global_atomic_umax v[3:4], v5, off offset:-16
|
|
268 // GFX9: global_atomic_umax v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x1c,0xdd,0x03,0x05,0x7f,0x00]
|
|
269 // VI-ERR: :42: error: not a valid operand
|
|
270
|
|
271 global_atomic_and v[3:4], v5, off offset:-16
|
|
272 // GFX9: global_atomic_and v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x20,0xdd,0x03,0x05,0x7f,0x00]
|
|
273 // VI-ERR: :41: error: not a valid operand
|
|
274
|
|
275 global_atomic_or v[3:4], v5, off offset:-16
|
|
276 // GFX9: global_atomic_or v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x24,0xdd,0x03,0x05,0x7f,0x00]
|
|
277 // VI-ERR: :40: error: not a valid operand
|
|
278
|
|
279 global_atomic_xor v[3:4], v5, off offset:-16
|
|
280 // GFX9: global_atomic_xor v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x28,0xdd,0x03,0x05,0x7f,0x00]
|
|
281 // VI-ERR: :41: error: not a valid operand
|
|
282
|
|
283 global_atomic_inc v[3:4], v5, off offset:-16
|
|
284 // GFX9: global_atomic_inc v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x2c,0xdd,0x03,0x05,0x7f,0x00]
|
|
285 // VI-ERR: :41: error: not a valid operand
|
|
286
|
|
287 global_atomic_dec v[3:4], v5, off offset:-16
|
|
288 // GFX9: global_atomic_dec v[3:4], v5, off offset:-16 ; encoding: [0xf0,0x9f,0x30,0xdd,0x03,0x05,0x7f,0x00]
|
|
289 // VI-ERR: :41: error: not a valid operand
|
|
290
|
|
291 global_atomic_add_x2 v[3:4], v[5:6], off offset:-16
|
|
292 // GFX9: global_atomic_add_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0x88,0xdd,0x03,0x05,0x7f,0x00]
|
|
293 // VI-ERR: :48: error: not a valid operand
|
|
294
|
|
295 global_atomic_sub_x2 v[3:4], v[5:6], off offset:-16
|
|
296 // GFX9: global_atomic_sub_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0x8c,0xdd,0x03,0x05,0x7f,0x00]
|
|
297 // VI-ERR: :48: error: not a valid operand
|
|
298
|
|
299 global_atomic_smin_x2 v[3:4], v[5:6], off offset:-16
|
|
300 // GFX9: global_atomic_smin_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0x90,0xdd,0x03,0x05,0x7f,0x00]
|
|
301 // VI-ERR: :49: error: not a valid operand
|
|
302
|
|
303 global_atomic_umin_x2 v[3:4], v[5:6], off offset:-16
|
|
304 // GFX9: global_atomic_umin_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0x94,0xdd,0x03,0x05,0x7f,0x00]
|
|
305 // VI-ERR: :49: error: not a valid operand
|
|
306
|
|
307 global_atomic_smax_x2 v[3:4], v[5:6], off offset:-16
|
|
308 // GFX9: global_atomic_smax_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0x98,0xdd,0x03,0x05,0x7f,0x00]
|
|
309 // VI-ERR: :49: error: not a valid operand
|
|
310
|
|
311 global_atomic_umax_x2 v[3:4], v[5:6], off offset:-16
|
|
312 // GFX9: global_atomic_umax_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0x9c,0xdd,0x03,0x05,0x7f,0x00]
|
|
313 // VI-ERR: :49: error: not a valid operand
|
|
314
|
|
315 global_atomic_and_x2 v[3:4], v[5:6], off offset:-16
|
|
316 // GFX9: global_atomic_and_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0xa0,0xdd,0x03,0x05,0x7f,0x00]
|
|
317 // VI-ERR: :48: error: not a valid operand
|
|
318
|
|
319 global_atomic_or_x2 v[3:4], v[5:6], off offset:-16
|
|
320 // GFX9: global_atomic_or_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0xa4,0xdd,0x03,0x05,0x7f,0x00]
|
|
321 // VI-ERR: :47: error: not a valid operand
|
|
322
|
|
323 global_atomic_xor_x2 v[3:4], v[5:6], off offset:-16
|
|
324 // GFX9: global_atomic_xor_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0xa8,0xdd,0x03,0x05,0x7f,0x00]
|
|
325 // VI-ERR: :48: error: not a valid operand
|
|
326
|
|
327 global_atomic_inc_x2 v[3:4], v[5:6], off offset:-16
|
|
328 // GFX9: global_atomic_inc_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0xac,0xdd,0x03,0x05,0x7f,0x00]
|
|
329 // VI-ERR: :48: error: not a valid operand
|
|
330
|
|
331 global_atomic_dec_x2 v[3:4], v[5:6], off offset:-16
|
|
332 // GFX9: global_atomic_dec_x2 v[3:4], v[5:6], off offset:-16 ; encoding: [0xf0,0x9f,0xb0,0xdd,0x03,0x05,0x7f,0x00]
|
|
333 // VI-ERR: :48: error: not a valid operand
|
|
334
|
|
335 global_load_ubyte_d16 v1, v[3:4], off
|
|
336 // GFX9: global_load_ubyte_d16 v1, v[3:4], off ; encoding: [0x00,0x80,0x80,0xdc,0x03,0x00,0x7f,0x01]
|
|
337 // VI-ERR: instruction not supported on this GPU
|
|
338
|
|
339 global_load_ubyte_d16_hi v1, v[3:4], off
|
|
340 // GFX9: global_load_ubyte_d16_hi v1, v[3:4], off ; encoding: [0x00,0x80,0x84,0xdc,0x03,0x00,0x7f,0x01]
|
|
341 // VI-ERR: instruction not supported on this GPU
|
|
342
|
|
343 global_load_sbyte_d16 v1, v[3:4], off
|
|
344 // GFX9: global_load_sbyte_d16 v1, v[3:4], off ; encoding: [0x00,0x80,0x88,0xdc,0x03,0x00,0x7f,0x01]
|
|
345 // VI-ERR: instruction not supported on this GPU
|
|
346
|
|
347 global_load_sbyte_d16_hi v1, v[3:4], off
|
|
348 // GFX9: global_load_sbyte_d16_hi v1, v[3:4], off ; encoding: [0x00,0x80,0x8c,0xdc,0x03,0x00,0x7f,0x01]
|
|
349 // VI-ERR: instruction not supported on this GPU
|
|
350
|
|
351 global_load_short_d16 v1, v[3:4], off
|
|
352 // GFX9: global_load_short_d16 v1, v[3:4], off ; encoding: [0x00,0x80,0x90,0xdc,0x03,0x00,0x7f,0x01]
|
|
353 // VI-ERR: instruction not supported on this GPU
|
|
354
|
|
355 global_load_short_d16_hi v1, v[3:4], off
|
|
356 // GFX9: global_load_short_d16_hi v1, v[3:4], off ; encoding: [0x00,0x80,0x94,0xdc,0x03,0x00,0x7f,0x01]
|
|
357 // VI-ERR: instruction not supported on this GPU
|
|
358
|
|
359 global_store_byte_d16_hi v[3:4], v1, off
|
|
360 // GFX9: global_store_byte_d16_hi v[3:4], v1, off ; encoding: [0x00,0x80,0x64,0xdc,0x03,0x01,0x7f,0x00]
|
|
361 // VI-ERR: instruction not supported on this GPU
|
|
362
|
|
363 global_store_short_d16_hi v[3:4], v1, off
|
|
364 // GFX9: global_store_short_d16_hi v[3:4], v1, off ; encoding: [0x00,0x80,0x6c,0xdc,0x03,0x01,0x7f,0x00]
|
|
365 // VI-ERR: instruction not supported on this GPU
|