Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / MC / AMDGPU / gfx8_asm_flat.s
blob4e622969623c83a542fcc2302851f251b3dfd8e9
1 // RUN: llvm-mc -triple=amdgcn -mcpu=tonga -show-encoding %s | FileCheck %s
3 flat_load_ubyte v5, v[1:2]
4 // CHECK: [0x00,0x00,0x40,0xdc,0x01,0x00,0x00,0x05]
6 flat_load_ubyte v255, v[1:2]
7 // CHECK: [0x00,0x00,0x40,0xdc,0x01,0x00,0x00,0xff]
9 flat_load_ubyte v5, v[254:255]
10 // CHECK: [0x00,0x00,0x40,0xdc,0xfe,0x00,0x00,0x05]
12 flat_load_ubyte v5, v[1:2] glc
13 // CHECK: [0x00,0x00,0x41,0xdc,0x01,0x00,0x00,0x05]
15 flat_load_ubyte v5, v[1:2] slc
16 // CHECK: [0x00,0x00,0x42,0xdc,0x01,0x00,0x00,0x05]
18 flat_load_sbyte v5, v[1:2]
19 // CHECK: [0x00,0x00,0x44,0xdc,0x01,0x00,0x00,0x05]
21 flat_load_sbyte v255, v[1:2]
22 // CHECK: [0x00,0x00,0x44,0xdc,0x01,0x00,0x00,0xff]
24 flat_load_sbyte v5, v[254:255]
25 // CHECK: [0x00,0x00,0x44,0xdc,0xfe,0x00,0x00,0x05]
27 flat_load_sbyte v5, v[1:2] glc
28 // CHECK: [0x00,0x00,0x45,0xdc,0x01,0x00,0x00,0x05]
30 flat_load_sbyte v5, v[1:2] slc
31 // CHECK: [0x00,0x00,0x46,0xdc,0x01,0x00,0x00,0x05]
33 flat_load_ushort v5, v[1:2]
34 // CHECK: [0x00,0x00,0x48,0xdc,0x01,0x00,0x00,0x05]
36 flat_load_ushort v255, v[1:2]
37 // CHECK: [0x00,0x00,0x48,0xdc,0x01,0x00,0x00,0xff]
39 flat_load_ushort v5, v[254:255]
40 // CHECK: [0x00,0x00,0x48,0xdc,0xfe,0x00,0x00,0x05]
42 flat_load_ushort v5, v[1:2] glc
43 // CHECK: [0x00,0x00,0x49,0xdc,0x01,0x00,0x00,0x05]
45 flat_load_ushort v5, v[1:2] slc
46 // CHECK: [0x00,0x00,0x4a,0xdc,0x01,0x00,0x00,0x05]
48 flat_load_sshort v5, v[1:2]
49 // CHECK: [0x00,0x00,0x4c,0xdc,0x01,0x00,0x00,0x05]
51 flat_load_sshort v255, v[1:2]
52 // CHECK: [0x00,0x00,0x4c,0xdc,0x01,0x00,0x00,0xff]
54 flat_load_sshort v5, v[254:255]
55 // CHECK: [0x00,0x00,0x4c,0xdc,0xfe,0x00,0x00,0x05]
57 flat_load_sshort v5, v[1:2] glc
58 // CHECK: [0x00,0x00,0x4d,0xdc,0x01,0x00,0x00,0x05]
60 flat_load_sshort v5, v[1:2] slc
61 // CHECK: [0x00,0x00,0x4e,0xdc,0x01,0x00,0x00,0x05]
63 flat_load_dword v5, v[1:2]
64 // CHECK: [0x00,0x00,0x50,0xdc,0x01,0x00,0x00,0x05]
66 flat_load_dword v255, v[1:2]
67 // CHECK: [0x00,0x00,0x50,0xdc,0x01,0x00,0x00,0xff]
69 flat_load_dword v5, v[254:255]
70 // CHECK: [0x00,0x00,0x50,0xdc,0xfe,0x00,0x00,0x05]
72 flat_load_dword v5, v[1:2] glc
73 // CHECK: [0x00,0x00,0x51,0xdc,0x01,0x00,0x00,0x05]
75 flat_load_dword v5, v[1:2] slc
76 // CHECK: [0x00,0x00,0x52,0xdc,0x01,0x00,0x00,0x05]
78 flat_load_dwordx2 v[5:6], v[1:2]
79 // CHECK: [0x00,0x00,0x54,0xdc,0x01,0x00,0x00,0x05]
81 flat_load_dwordx2 v[254:255], v[1:2]
82 // CHECK: [0x00,0x00,0x54,0xdc,0x01,0x00,0x00,0xfe]
84 flat_load_dwordx2 v[5:6], v[254:255]
85 // CHECK: [0x00,0x00,0x54,0xdc,0xfe,0x00,0x00,0x05]
87 flat_load_dwordx2 v[5:6], v[1:2] glc
88 // CHECK: [0x00,0x00,0x55,0xdc,0x01,0x00,0x00,0x05]
90 flat_load_dwordx2 v[5:6], v[1:2] slc
91 // CHECK: [0x00,0x00,0x56,0xdc,0x01,0x00,0x00,0x05]
93 flat_load_dwordx3 v[5:7], v[1:2]
94 // CHECK: [0x00,0x00,0x58,0xdc,0x01,0x00,0x00,0x05]
96 flat_load_dwordx3 v[253:255], v[1:2]
97 // CHECK: [0x00,0x00,0x58,0xdc,0x01,0x00,0x00,0xfd]
99 flat_load_dwordx3 v[5:7], v[254:255]
100 // CHECK: [0x00,0x00,0x58,0xdc,0xfe,0x00,0x00,0x05]
102 flat_load_dwordx3 v[5:7], v[1:2] glc
103 // CHECK: [0x00,0x00,0x59,0xdc,0x01,0x00,0x00,0x05]
105 flat_load_dwordx3 v[5:7], v[1:2] slc
106 // CHECK: [0x00,0x00,0x5a,0xdc,0x01,0x00,0x00,0x05]
108 flat_load_dwordx4 v[5:8], v[1:2]
109 // CHECK: [0x00,0x00,0x5c,0xdc,0x01,0x00,0x00,0x05]
111 flat_load_dwordx4 v[252:255], v[1:2]
112 // CHECK: [0x00,0x00,0x5c,0xdc,0x01,0x00,0x00,0xfc]
114 flat_load_dwordx4 v[5:8], v[254:255]
115 // CHECK: [0x00,0x00,0x5c,0xdc,0xfe,0x00,0x00,0x05]
117 flat_load_dwordx4 v[5:8], v[1:2] glc
118 // CHECK: [0x00,0x00,0x5d,0xdc,0x01,0x00,0x00,0x05]
120 flat_load_dwordx4 v[5:8], v[1:2] slc
121 // CHECK: [0x00,0x00,0x5e,0xdc,0x01,0x00,0x00,0x05]
123 flat_store_byte v[1:2], v2
124 // CHECK: [0x00,0x00,0x60,0xdc,0x01,0x02,0x00,0x00]
126 flat_store_byte v[254:255], v2
127 // CHECK: [0x00,0x00,0x60,0xdc,0xfe,0x02,0x00,0x00]
129 flat_store_byte v[1:2], v255
130 // CHECK: [0x00,0x00,0x60,0xdc,0x01,0xff,0x00,0x00]
132 flat_store_byte v[1:2], v2 glc
133 // CHECK: [0x00,0x00,0x61,0xdc,0x01,0x02,0x00,0x00]
135 flat_store_byte v[1:2], v2 slc
136 // CHECK: [0x00,0x00,0x62,0xdc,0x01,0x02,0x00,0x00]
138 flat_store_short v[1:2], v2
139 // CHECK: [0x00,0x00,0x68,0xdc,0x01,0x02,0x00,0x00]
141 flat_store_short v[254:255], v2
142 // CHECK: [0x00,0x00,0x68,0xdc,0xfe,0x02,0x00,0x00]
144 flat_store_short v[1:2], v255
145 // CHECK: [0x00,0x00,0x68,0xdc,0x01,0xff,0x00,0x00]
147 flat_store_short v[1:2], v2 glc
148 // CHECK: [0x00,0x00,0x69,0xdc,0x01,0x02,0x00,0x00]
150 flat_store_short v[1:2], v2 slc
151 // CHECK: [0x00,0x00,0x6a,0xdc,0x01,0x02,0x00,0x00]
153 flat_store_dword v[1:2], v2
154 // CHECK: [0x00,0x00,0x70,0xdc,0x01,0x02,0x00,0x00]
156 flat_store_dword v[254:255], v2
157 // CHECK: [0x00,0x00,0x70,0xdc,0xfe,0x02,0x00,0x00]
159 flat_store_dword v[1:2], v255
160 // CHECK: [0x00,0x00,0x70,0xdc,0x01,0xff,0x00,0x00]
162 flat_store_dword v[1:2], v2 glc
163 // CHECK: [0x00,0x00,0x71,0xdc,0x01,0x02,0x00,0x00]
165 flat_store_dword v[1:2], v2 slc
166 // CHECK: [0x00,0x00,0x72,0xdc,0x01,0x02,0x00,0x00]
168 flat_store_dwordx2 v[1:2], v[2:3]
169 // CHECK: [0x00,0x00,0x74,0xdc,0x01,0x02,0x00,0x00]
171 flat_store_dwordx2 v[254:255], v[2:3]
172 // CHECK: [0x00,0x00,0x74,0xdc,0xfe,0x02,0x00,0x00]
174 flat_store_dwordx2 v[1:2], v[254:255]
175 // CHECK: [0x00,0x00,0x74,0xdc,0x01,0xfe,0x00,0x00]
177 flat_store_dwordx2 v[1:2], v[2:3] glc
178 // CHECK: [0x00,0x00,0x75,0xdc,0x01,0x02,0x00,0x00]
180 flat_store_dwordx2 v[1:2], v[2:3] slc
181 // CHECK: [0x00,0x00,0x76,0xdc,0x01,0x02,0x00,0x00]
183 flat_store_dwordx3 v[1:2], v[2:4]
184 // CHECK: [0x00,0x00,0x78,0xdc,0x01,0x02,0x00,0x00]
186 flat_store_dwordx3 v[254:255], v[2:4]
187 // CHECK: [0x00,0x00,0x78,0xdc,0xfe,0x02,0x00,0x00]
189 flat_store_dwordx3 v[1:2], v[253:255]
190 // CHECK: [0x00,0x00,0x78,0xdc,0x01,0xfd,0x00,0x00]
192 flat_store_dwordx3 v[1:2], v[2:4] glc
193 // CHECK: [0x00,0x00,0x79,0xdc,0x01,0x02,0x00,0x00]
195 flat_store_dwordx3 v[1:2], v[2:4] slc
196 // CHECK: [0x00,0x00,0x7a,0xdc,0x01,0x02,0x00,0x00]
198 flat_store_dwordx4 v[1:2], v[2:5]
199 // CHECK: [0x00,0x00,0x7c,0xdc,0x01,0x02,0x00,0x00]
201 flat_store_dwordx4 v[254:255], v[2:5]
202 // CHECK: [0x00,0x00,0x7c,0xdc,0xfe,0x02,0x00,0x00]
204 flat_store_dwordx4 v[1:2], v[252:255]
205 // CHECK: [0x00,0x00,0x7c,0xdc,0x01,0xfc,0x00,0x00]
207 flat_store_dwordx4 v[1:2], v[2:5] glc
208 // CHECK: [0x00,0x00,0x7d,0xdc,0x01,0x02,0x00,0x00]
210 flat_store_dwordx4 v[1:2], v[2:5] slc
211 // CHECK: [0x00,0x00,0x7e,0xdc,0x01,0x02,0x00,0x00]
213 flat_atomic_swap v[1:2], v2
214 // CHECK: [0x00,0x00,0x00,0xdd,0x01,0x02,0x00,0x00]
216 flat_atomic_swap v[254:255], v2
217 // CHECK: [0x00,0x00,0x00,0xdd,0xfe,0x02,0x00,0x00]
219 flat_atomic_swap v[1:2], v255
220 // CHECK: [0x00,0x00,0x00,0xdd,0x01,0xff,0x00,0x00]
222 flat_atomic_swap v0, v[1:2], v2 glc
223 // CHECK: [0x00,0x00,0x01,0xdd,0x01,0x02,0x00,0x00]
225 flat_atomic_swap v[1:2], v2 slc
226 // CHECK: [0x00,0x00,0x02,0xdd,0x01,0x02,0x00,0x00]
228 flat_atomic_cmpswap v[1:2], v[2:3]
229 // CHECK: [0x00,0x00,0x04,0xdd,0x01,0x02,0x00,0x00]
231 flat_atomic_cmpswap v[254:255], v[2:3]
232 // CHECK: [0x00,0x00,0x04,0xdd,0xfe,0x02,0x00,0x00]
234 flat_atomic_cmpswap v[1:2], v[254:255]
235 // CHECK: [0x00,0x00,0x04,0xdd,0x01,0xfe,0x00,0x00]
237 flat_atomic_cmpswap v0, v[1:2], v[2:3] glc
238 // CHECK: [0x00,0x00,0x05,0xdd,0x01,0x02,0x00,0x00]
240 flat_atomic_cmpswap v[1:2], v[2:3] slc
241 // CHECK: [0x00,0x00,0x06,0xdd,0x01,0x02,0x00,0x00]
243 flat_atomic_add v[1:2], v2
244 // CHECK: [0x00,0x00,0x08,0xdd,0x01,0x02,0x00,0x00]
246 flat_atomic_add v[254:255], v2
247 // CHECK: [0x00,0x00,0x08,0xdd,0xfe,0x02,0x00,0x00]
249 flat_atomic_add v[1:2], v255
250 // CHECK: [0x00,0x00,0x08,0xdd,0x01,0xff,0x00,0x00]
252 flat_atomic_add v0, v[1:2], v2 glc
253 // CHECK: [0x00,0x00,0x09,0xdd,0x01,0x02,0x00,0x00]
255 flat_atomic_add v[1:2], v2 slc
256 // CHECK: [0x00,0x00,0x0a,0xdd,0x01,0x02,0x00,0x00]
258 flat_atomic_sub v[1:2], v2
259 // CHECK: [0x00,0x00,0x0c,0xdd,0x01,0x02,0x00,0x00]
261 flat_atomic_sub v[254:255], v2
262 // CHECK: [0x00,0x00,0x0c,0xdd,0xfe,0x02,0x00,0x00]
264 flat_atomic_sub v[1:2], v255
265 // CHECK: [0x00,0x00,0x0c,0xdd,0x01,0xff,0x00,0x00]
267 flat_atomic_sub v0, v[1:2], v2 glc
268 // CHECK: [0x00,0x00,0x0d,0xdd,0x01,0x02,0x00,0x00]
270 flat_atomic_sub v[1:2], v2 slc
271 // CHECK: [0x00,0x00,0x0e,0xdd,0x01,0x02,0x00,0x00]
273 flat_atomic_smin v[1:2], v2
274 // CHECK: [0x00,0x00,0x10,0xdd,0x01,0x02,0x00,0x00]
276 flat_atomic_smin v[254:255], v2
277 // CHECK: [0x00,0x00,0x10,0xdd,0xfe,0x02,0x00,0x00]
279 flat_atomic_smin v[1:2], v255
280 // CHECK: [0x00,0x00,0x10,0xdd,0x01,0xff,0x00,0x00]
282 flat_atomic_smin v0, v[1:2], v2 glc
283 // CHECK: [0x00,0x00,0x11,0xdd,0x01,0x02,0x00,0x00]
285 flat_atomic_smin v[1:2], v2 slc
286 // CHECK: [0x00,0x00,0x12,0xdd,0x01,0x02,0x00,0x00]
288 flat_atomic_umin v[1:2], v2
289 // CHECK: [0x00,0x00,0x14,0xdd,0x01,0x02,0x00,0x00]
291 flat_atomic_umin v[254:255], v2
292 // CHECK: [0x00,0x00,0x14,0xdd,0xfe,0x02,0x00,0x00]
294 flat_atomic_umin v[1:2], v255
295 // CHECK: [0x00,0x00,0x14,0xdd,0x01,0xff,0x00,0x00]
297 flat_atomic_umin v0, v[1:2], v2 glc
298 // CHECK: [0x00,0x00,0x15,0xdd,0x01,0x02,0x00,0x00]
300 flat_atomic_umin v[1:2], v2 slc
301 // CHECK: [0x00,0x00,0x16,0xdd,0x01,0x02,0x00,0x00]
303 flat_atomic_smax v[1:2], v2
304 // CHECK: [0x00,0x00,0x18,0xdd,0x01,0x02,0x00,0x00]
306 flat_atomic_smax v[254:255], v2
307 // CHECK: [0x00,0x00,0x18,0xdd,0xfe,0x02,0x00,0x00]
309 flat_atomic_smax v[1:2], v255
310 // CHECK: [0x00,0x00,0x18,0xdd,0x01,0xff,0x00,0x00]
312 flat_atomic_smax v0, v[1:2], v2 glc
313 // CHECK: [0x00,0x00,0x19,0xdd,0x01,0x02,0x00,0x00]
315 flat_atomic_smax v[1:2], v2 slc
316 // CHECK: [0x00,0x00,0x1a,0xdd,0x01,0x02,0x00,0x00]
318 flat_atomic_umax v[1:2], v2
319 // CHECK: [0x00,0x00,0x1c,0xdd,0x01,0x02,0x00,0x00]
321 flat_atomic_umax v[254:255], v2
322 // CHECK: [0x00,0x00,0x1c,0xdd,0xfe,0x02,0x00,0x00]
324 flat_atomic_umax v[1:2], v255
325 // CHECK: [0x00,0x00,0x1c,0xdd,0x01,0xff,0x00,0x00]
327 flat_atomic_umax v0, v[1:2], v2 glc
328 // CHECK: [0x00,0x00,0x1d,0xdd,0x01,0x02,0x00,0x00]
330 flat_atomic_umax v[1:2], v2 slc
331 // CHECK: [0x00,0x00,0x1e,0xdd,0x01,0x02,0x00,0x00]
333 flat_atomic_and v[1:2], v2
334 // CHECK: [0x00,0x00,0x20,0xdd,0x01,0x02,0x00,0x00]
336 flat_atomic_and v[254:255], v2
337 // CHECK: [0x00,0x00,0x20,0xdd,0xfe,0x02,0x00,0x00]
339 flat_atomic_and v[1:2], v255
340 // CHECK: [0x00,0x00,0x20,0xdd,0x01,0xff,0x00,0x00]
342 flat_atomic_and v0, v[1:2], v2 glc
343 // CHECK: [0x00,0x00,0x21,0xdd,0x01,0x02,0x00,0x00]
345 flat_atomic_and v[1:2], v2 slc
346 // CHECK: [0x00,0x00,0x22,0xdd,0x01,0x02,0x00,0x00]
348 flat_atomic_or v[1:2], v2
349 // CHECK: [0x00,0x00,0x24,0xdd,0x01,0x02,0x00,0x00]
351 flat_atomic_or v[254:255], v2
352 // CHECK: [0x00,0x00,0x24,0xdd,0xfe,0x02,0x00,0x00]
354 flat_atomic_or v[1:2], v255
355 // CHECK: [0x00,0x00,0x24,0xdd,0x01,0xff,0x00,0x00]
357 flat_atomic_or v0, v[1:2], v2 glc
358 // CHECK: [0x00,0x00,0x25,0xdd,0x01,0x02,0x00,0x00]
360 flat_atomic_or v[1:2], v2 slc
361 // CHECK: [0x00,0x00,0x26,0xdd,0x01,0x02,0x00,0x00]
363 flat_atomic_xor v[1:2], v2
364 // CHECK: [0x00,0x00,0x28,0xdd,0x01,0x02,0x00,0x00]
366 flat_atomic_xor v[254:255], v2
367 // CHECK: [0x00,0x00,0x28,0xdd,0xfe,0x02,0x00,0x00]
369 flat_atomic_xor v[1:2], v255
370 // CHECK: [0x00,0x00,0x28,0xdd,0x01,0xff,0x00,0x00]
372 flat_atomic_xor v0, v[1:2], v2 glc
373 // CHECK: [0x00,0x00,0x29,0xdd,0x01,0x02,0x00,0x00]
375 flat_atomic_xor v[1:2], v2 slc
376 // CHECK: [0x00,0x00,0x2a,0xdd,0x01,0x02,0x00,0x00]
378 flat_atomic_inc v[1:2], v2
379 // CHECK: [0x00,0x00,0x2c,0xdd,0x01,0x02,0x00,0x00]
381 flat_atomic_inc v[254:255], v2
382 // CHECK: [0x00,0x00,0x2c,0xdd,0xfe,0x02,0x00,0x00]
384 flat_atomic_inc v[1:2], v255
385 // CHECK: [0x00,0x00,0x2c,0xdd,0x01,0xff,0x00,0x00]
387 flat_atomic_inc v0, v[1:2], v2 glc
388 // CHECK: [0x00,0x00,0x2d,0xdd,0x01,0x02,0x00,0x00]
390 flat_atomic_inc v[1:2], v2 slc
391 // CHECK: [0x00,0x00,0x2e,0xdd,0x01,0x02,0x00,0x00]
393 flat_atomic_dec v[1:2], v2
394 // CHECK: [0x00,0x00,0x30,0xdd,0x01,0x02,0x00,0x00]
396 flat_atomic_dec v[254:255], v2
397 // CHECK: [0x00,0x00,0x30,0xdd,0xfe,0x02,0x00,0x00]
399 flat_atomic_dec v[1:2], v255
400 // CHECK: [0x00,0x00,0x30,0xdd,0x01,0xff,0x00,0x00]
402 flat_atomic_dec v0, v[1:2], v2 glc
403 // CHECK: [0x00,0x00,0x31,0xdd,0x01,0x02,0x00,0x00]
405 flat_atomic_dec v[1:2], v2 slc
406 // CHECK: [0x00,0x00,0x32,0xdd,0x01,0x02,0x00,0x00]
408 flat_atomic_swap_x2 v[1:2], v[2:3]
409 // CHECK: [0x00,0x00,0x80,0xdd,0x01,0x02,0x00,0x00]
411 flat_atomic_swap_x2 v[254:255], v[2:3]
412 // CHECK: [0x00,0x00,0x80,0xdd,0xfe,0x02,0x00,0x00]
414 flat_atomic_swap_x2 v[1:2], v[254:255]
415 // CHECK: [0x00,0x00,0x80,0xdd,0x01,0xfe,0x00,0x00]
417 flat_atomic_swap_x2 v[0:1], v[1:2], v[2:3] glc
418 // CHECK: [0x00,0x00,0x81,0xdd,0x01,0x02,0x00,0x00]
420 flat_atomic_swap_x2 v[1:2], v[2:3] slc
421 // CHECK: [0x00,0x00,0x82,0xdd,0x01,0x02,0x00,0x00]
423 flat_atomic_cmpswap_x2 v[1:2], v[2:5]
424 // CHECK: [0x00,0x00,0x84,0xdd,0x01,0x02,0x00,0x00]
426 flat_atomic_cmpswap_x2 v[254:255], v[2:5]
427 // CHECK: [0x00,0x00,0x84,0xdd,0xfe,0x02,0x00,0x00]
429 flat_atomic_cmpswap_x2 v[1:2], v[252:255]
430 // CHECK: [0x00,0x00,0x84,0xdd,0x01,0xfc,0x00,0x00]
432 flat_atomic_cmpswap_x2 v[0:1], v[1:2], v[2:5] glc
433 // CHECK: [0x00,0x00,0x85,0xdd,0x01,0x02,0x00,0x00]
435 flat_atomic_cmpswap_x2 v[1:2], v[2:5] slc
436 // CHECK: [0x00,0x00,0x86,0xdd,0x01,0x02,0x00,0x00]
438 flat_atomic_add_x2 v[1:2], v[2:3]
439 // CHECK: [0x00,0x00,0x88,0xdd,0x01,0x02,0x00,0x00]
441 flat_atomic_add_x2 v[254:255], v[2:3]
442 // CHECK: [0x00,0x00,0x88,0xdd,0xfe,0x02,0x00,0x00]
444 flat_atomic_add_x2 v[1:2], v[254:255]
445 // CHECK: [0x00,0x00,0x88,0xdd,0x01,0xfe,0x00,0x00]
447 flat_atomic_add_x2 v[0:1], v[1:2], v[2:3] glc
448 // CHECK: [0x00,0x00,0x89,0xdd,0x01,0x02,0x00,0x00]
450 flat_atomic_add_x2 v[1:2], v[2:3] slc
451 // CHECK: [0x00,0x00,0x8a,0xdd,0x01,0x02,0x00,0x00]
453 flat_atomic_sub_x2 v[1:2], v[2:3]
454 // CHECK: [0x00,0x00,0x8c,0xdd,0x01,0x02,0x00,0x00]
456 flat_atomic_sub_x2 v[254:255], v[2:3]
457 // CHECK: [0x00,0x00,0x8c,0xdd,0xfe,0x02,0x00,0x00]
459 flat_atomic_sub_x2 v[1:2], v[254:255]
460 // CHECK: [0x00,0x00,0x8c,0xdd,0x01,0xfe,0x00,0x00]
462 flat_atomic_sub_x2 v[0:1], v[1:2], v[2:3] glc
463 // CHECK: [0x00,0x00,0x8d,0xdd,0x01,0x02,0x00,0x00]
465 flat_atomic_sub_x2 v[1:2], v[2:3] slc
466 // CHECK: [0x00,0x00,0x8e,0xdd,0x01,0x02,0x00,0x00]
468 flat_atomic_smin_x2 v[1:2], v[2:3]
469 // CHECK: [0x00,0x00,0x90,0xdd,0x01,0x02,0x00,0x00]
471 flat_atomic_smin_x2 v[254:255], v[2:3]
472 // CHECK: [0x00,0x00,0x90,0xdd,0xfe,0x02,0x00,0x00]
474 flat_atomic_smin_x2 v[1:2], v[254:255]
475 // CHECK: [0x00,0x00,0x90,0xdd,0x01,0xfe,0x00,0x00]
477 flat_atomic_smin_x2 v[0:1], v[1:2], v[2:3] glc
478 // CHECK: [0x00,0x00,0x91,0xdd,0x01,0x02,0x00,0x00]
480 flat_atomic_smin_x2 v[1:2], v[2:3] slc
481 // CHECK: [0x00,0x00,0x92,0xdd,0x01,0x02,0x00,0x00]
483 flat_atomic_umin_x2 v[1:2], v[2:3]
484 // CHECK: [0x00,0x00,0x94,0xdd,0x01,0x02,0x00,0x00]
486 flat_atomic_umin_x2 v[254:255], v[2:3]
487 // CHECK: [0x00,0x00,0x94,0xdd,0xfe,0x02,0x00,0x00]
489 flat_atomic_umin_x2 v[1:2], v[254:255]
490 // CHECK: [0x00,0x00,0x94,0xdd,0x01,0xfe,0x00,0x00]
492 flat_atomic_umin_x2 v[0:1], v[1:2], v[2:3] glc
493 // CHECK: [0x00,0x00,0x95,0xdd,0x01,0x02,0x00,0x00]
495 flat_atomic_umin_x2 v[1:2], v[2:3] slc
496 // CHECK: [0x00,0x00,0x96,0xdd,0x01,0x02,0x00,0x00]
498 flat_atomic_smax_x2 v[1:2], v[2:3]
499 // CHECK: [0x00,0x00,0x98,0xdd,0x01,0x02,0x00,0x00]
501 flat_atomic_smax_x2 v[254:255], v[2:3]
502 // CHECK: [0x00,0x00,0x98,0xdd,0xfe,0x02,0x00,0x00]
504 flat_atomic_smax_x2 v[1:2], v[254:255]
505 // CHECK: [0x00,0x00,0x98,0xdd,0x01,0xfe,0x00,0x00]
507 flat_atomic_smax_x2 v[0:1], v[1:2], v[2:3] glc
508 // CHECK: [0x00,0x00,0x99,0xdd,0x01,0x02,0x00,0x00]
510 flat_atomic_smax_x2 v[1:2], v[2:3] slc
511 // CHECK: [0x00,0x00,0x9a,0xdd,0x01,0x02,0x00,0x00]
513 flat_atomic_umax_x2 v[1:2], v[2:3]
514 // CHECK: [0x00,0x00,0x9c,0xdd,0x01,0x02,0x00,0x00]
516 flat_atomic_umax_x2 v[254:255], v[2:3]
517 // CHECK: [0x00,0x00,0x9c,0xdd,0xfe,0x02,0x00,0x00]
519 flat_atomic_umax_x2 v[1:2], v[254:255]
520 // CHECK: [0x00,0x00,0x9c,0xdd,0x01,0xfe,0x00,0x00]
522 flat_atomic_umax_x2 v[0:1], v[1:2], v[2:3] glc
523 // CHECK: [0x00,0x00,0x9d,0xdd,0x01,0x02,0x00,0x00]
525 flat_atomic_umax_x2 v[1:2], v[2:3] slc
526 // CHECK: [0x00,0x00,0x9e,0xdd,0x01,0x02,0x00,0x00]
528 flat_atomic_and_x2 v[1:2], v[2:3]
529 // CHECK: [0x00,0x00,0xa0,0xdd,0x01,0x02,0x00,0x00]
531 flat_atomic_and_x2 v[254:255], v[2:3]
532 // CHECK: [0x00,0x00,0xa0,0xdd,0xfe,0x02,0x00,0x00]
534 flat_atomic_and_x2 v[1:2], v[254:255]
535 // CHECK: [0x00,0x00,0xa0,0xdd,0x01,0xfe,0x00,0x00]
537 flat_atomic_and_x2 v[0:1], v[1:2], v[2:3] glc
538 // CHECK: [0x00,0x00,0xa1,0xdd,0x01,0x02,0x00,0x00]
540 flat_atomic_and_x2 v[1:2], v[2:3] slc
541 // CHECK: [0x00,0x00,0xa2,0xdd,0x01,0x02,0x00,0x00]
543 flat_atomic_or_x2 v[1:2], v[2:3]
544 // CHECK: [0x00,0x00,0xa4,0xdd,0x01,0x02,0x00,0x00]
546 flat_atomic_or_x2 v[254:255], v[2:3]
547 // CHECK: [0x00,0x00,0xa4,0xdd,0xfe,0x02,0x00,0x00]
549 flat_atomic_or_x2 v[1:2], v[254:255]
550 // CHECK: [0x00,0x00,0xa4,0xdd,0x01,0xfe,0x00,0x00]
552 flat_atomic_or_x2 v[0:1], v[1:2], v[2:3] glc
553 // CHECK: [0x00,0x00,0xa5,0xdd,0x01,0x02,0x00,0x00]
555 flat_atomic_or_x2 v[1:2], v[2:3] slc
556 // CHECK: [0x00,0x00,0xa6,0xdd,0x01,0x02,0x00,0x00]
558 flat_atomic_xor_x2 v[1:2], v[2:3]
559 // CHECK: [0x00,0x00,0xa8,0xdd,0x01,0x02,0x00,0x00]
561 flat_atomic_xor_x2 v[254:255], v[2:3]
562 // CHECK: [0x00,0x00,0xa8,0xdd,0xfe,0x02,0x00,0x00]
564 flat_atomic_xor_x2 v[1:2], v[254:255]
565 // CHECK: [0x00,0x00,0xa8,0xdd,0x01,0xfe,0x00,0x00]
567 flat_atomic_xor_x2 v[0:1], v[1:2], v[2:3] glc
568 // CHECK: [0x00,0x00,0xa9,0xdd,0x01,0x02,0x00,0x00]
570 flat_atomic_xor_x2 v[1:2], v[2:3] slc
571 // CHECK: [0x00,0x00,0xaa,0xdd,0x01,0x02,0x00,0x00]
573 flat_atomic_inc_x2 v[1:2], v[2:3]
574 // CHECK: [0x00,0x00,0xac,0xdd,0x01,0x02,0x00,0x00]
576 flat_atomic_inc_x2 v[254:255], v[2:3]
577 // CHECK: [0x00,0x00,0xac,0xdd,0xfe,0x02,0x00,0x00]
579 flat_atomic_inc_x2 v[1:2], v[254:255]
580 // CHECK: [0x00,0x00,0xac,0xdd,0x01,0xfe,0x00,0x00]
582 flat_atomic_inc_x2 v[0:1], v[1:2], v[2:3] glc
583 // CHECK: [0x00,0x00,0xad,0xdd,0x01,0x02,0x00,0x00]
585 flat_atomic_inc_x2 v[1:2], v[2:3] slc
586 // CHECK: [0x00,0x00,0xae,0xdd,0x01,0x02,0x00,0x00]
588 flat_atomic_dec_x2 v[1:2], v[2:3]
589 // CHECK: [0x00,0x00,0xb0,0xdd,0x01,0x02,0x00,0x00]
591 flat_atomic_dec_x2 v[254:255], v[2:3]
592 // CHECK: [0x00,0x00,0xb0,0xdd,0xfe,0x02,0x00,0x00]
594 flat_atomic_dec_x2 v[1:2], v[254:255]
595 // CHECK: [0x00,0x00,0xb0,0xdd,0x01,0xfe,0x00,0x00]
597 flat_atomic_dec_x2 v[0:1], v[1:2], v[2:3] glc
598 // CHECK: [0x00,0x00,0xb1,0xdd,0x01,0x02,0x00,0x00]
600 flat_atomic_dec_x2 v[1:2], v[2:3] slc
601 // CHECK: [0x00,0x00,0xb2,0xdd,0x01,0x02,0x00,0x00]