|
1 | 1 | ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5 |
2 | | -; RUN: llc -O3 -mtriple=amdgcn -mcpu=fiji %s -o - | FileCheck %s --check-prefixes=GFX8,DAGISEL-GFX9 |
| 2 | +; RUN: llc -O3 -mtriple=amdgcn -mcpu=fiji %s -o - | FileCheck %s --check-prefixes=GFX8,DAGISEL-GFX8 |
3 | 3 | ; RUN: llc -O3 -mtriple=amdgcn -mcpu=gfx942 %s -o - | FileCheck %s --check-prefixes=GFX942,DAGISEL-GFX942 |
4 | 4 | ; RUN: llc -O3 -mtriple=amdgcn -mcpu=gfx1200 %s -o - | FileCheck %s --check-prefixes=GFX12,DAGISEL-GFX12 |
5 | 5 |
|
|
9 | 9 |
|
10 | 10 | ; (workitem_id_x | workitem_id_y | workitem_id_z) == 0 |
11 | 11 | define i1 @workitem_zero() { |
12 | | -; DAGISEL-GFX9-LABEL: workitem_zero: |
13 | | -; DAGISEL-GFX9: ; %bb.0: ; %entry |
14 | | -; DAGISEL-GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
15 | | -; DAGISEL-GFX9-NEXT: v_lshrrev_b32_e32 v1, 10, v31 |
16 | | -; DAGISEL-GFX9-NEXT: v_lshrrev_b32_e32 v0, 20, v31 |
17 | | -; DAGISEL-GFX9-NEXT: v_or_b32_e32 v1, v31, v1 |
18 | | -; DAGISEL-GFX9-NEXT: v_or_b32_e32 v0, v1, v0 |
19 | | -; DAGISEL-GFX9-NEXT: v_and_b32_e32 v0, 0x3ff, v0 |
20 | | -; DAGISEL-GFX9-NEXT: v_cmp_eq_u32_e32 vcc, 0, v0 |
21 | | -; DAGISEL-GFX9-NEXT: v_cndmask_b32_e64 v0, 0, 1, vcc |
22 | | -; DAGISEL-GFX9-NEXT: s_setpc_b64 s[30:31] |
| 12 | +; DAGISEL-GFX8-LABEL: workitem_zero: |
| 13 | +; DAGISEL-GFX8: ; %bb.0: ; %entry |
| 14 | +; DAGISEL-GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
| 15 | +; DAGISEL-GFX8-NEXT: v_lshrrev_b32_e32 v1, 10, v31 |
| 16 | +; DAGISEL-GFX8-NEXT: v_lshrrev_b32_e32 v0, 20, v31 |
| 17 | +; DAGISEL-GFX8-NEXT: v_or_b32_e32 v1, v31, v1 |
| 18 | +; DAGISEL-GFX8-NEXT: v_or_b32_e32 v0, v1, v0 |
| 19 | +; DAGISEL-GFX8-NEXT: v_and_b32_e32 v0, 0x3ff, v0 |
| 20 | +; DAGISEL-GFX8-NEXT: v_cmp_eq_u32_e32 vcc, 0, v0 |
| 21 | +; DAGISEL-GFX8-NEXT: v_cndmask_b32_e64 v0, 0, 1, vcc |
| 22 | +; DAGISEL-GFX8-NEXT: s_setpc_b64 s[30:31] |
23 | 23 | ; |
24 | 24 | ; DAGISEL-GFX942-LABEL: workitem_zero: |
25 | 25 | ; DAGISEL-GFX942: ; %bb.0: ; %entry |
@@ -103,17 +103,17 @@ entry: |
103 | 103 |
|
104 | 104 | ; (workitem_id_x | workitem_id_y | workitem_id_z) != 0 |
105 | 105 | define i1 @workitem_nonzero() { |
106 | | -; DAGISEL-GFX9-LABEL: workitem_nonzero: |
107 | | -; DAGISEL-GFX9: ; %bb.0: ; %entry |
108 | | -; DAGISEL-GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
109 | | -; DAGISEL-GFX9-NEXT: v_lshrrev_b32_e32 v1, 10, v31 |
110 | | -; DAGISEL-GFX9-NEXT: v_lshrrev_b32_e32 v0, 20, v31 |
111 | | -; DAGISEL-GFX9-NEXT: v_or_b32_e32 v1, v31, v1 |
112 | | -; DAGISEL-GFX9-NEXT: v_or_b32_e32 v0, v1, v0 |
113 | | -; DAGISEL-GFX9-NEXT: v_and_b32_e32 v0, 0x3ff, v0 |
114 | | -; DAGISEL-GFX9-NEXT: v_cmp_ne_u32_e32 vcc, 0, v0 |
115 | | -; DAGISEL-GFX9-NEXT: v_cndmask_b32_e64 v0, 0, 1, vcc |
116 | | -; DAGISEL-GFX9-NEXT: s_setpc_b64 s[30:31] |
| 106 | +; DAGISEL-GFX8-LABEL: workitem_nonzero: |
| 107 | +; DAGISEL-GFX8: ; %bb.0: ; %entry |
| 108 | +; DAGISEL-GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
| 109 | +; DAGISEL-GFX8-NEXT: v_lshrrev_b32_e32 v1, 10, v31 |
| 110 | +; DAGISEL-GFX8-NEXT: v_lshrrev_b32_e32 v0, 20, v31 |
| 111 | +; DAGISEL-GFX8-NEXT: v_or_b32_e32 v1, v31, v1 |
| 112 | +; DAGISEL-GFX8-NEXT: v_or_b32_e32 v0, v1, v0 |
| 113 | +; DAGISEL-GFX8-NEXT: v_and_b32_e32 v0, 0x3ff, v0 |
| 114 | +; DAGISEL-GFX8-NEXT: v_cmp_ne_u32_e32 vcc, 0, v0 |
| 115 | +; DAGISEL-GFX8-NEXT: v_cndmask_b32_e64 v0, 0, 1, vcc |
| 116 | +; DAGISEL-GFX8-NEXT: s_setpc_b64 s[30:31] |
117 | 117 | ; |
118 | 118 | ; DAGISEL-GFX942-LABEL: workitem_nonzero: |
119 | 119 | ; DAGISEL-GFX942: ; %bb.0: ; %entry |
@@ -197,15 +197,15 @@ entry: |
197 | 197 |
|
198 | 198 | ; (workgroup_id_x | workgroup_id_y | workgroup_id_z) == 0 |
199 | 199 | define i1 @workgroup_zero() { |
200 | | -; DAGISEL-GFX9-LABEL: workgroup_zero: |
201 | | -; DAGISEL-GFX9: ; %bb.0: ; %entry |
202 | | -; DAGISEL-GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
203 | | -; DAGISEL-GFX9-NEXT: s_or_b32 s4, s12, s13 |
204 | | -; DAGISEL-GFX9-NEXT: s_or_b32 s4, s4, s14 |
205 | | -; DAGISEL-GFX9-NEXT: s_cmp_eq_u32 s4, 0 |
206 | | -; DAGISEL-GFX9-NEXT: s_cselect_b64 s[4:5], -1, 0 |
207 | | -; DAGISEL-GFX9-NEXT: v_cndmask_b32_e64 v0, 0, 1, s[4:5] |
208 | | -; DAGISEL-GFX9-NEXT: s_setpc_b64 s[30:31] |
| 200 | +; DAGISEL-GFX8-LABEL: workgroup_zero: |
| 201 | +; DAGISEL-GFX8: ; %bb.0: ; %entry |
| 202 | +; DAGISEL-GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
| 203 | +; DAGISEL-GFX8-NEXT: s_or_b32 s4, s12, s13 |
| 204 | +; DAGISEL-GFX8-NEXT: s_or_b32 s4, s4, s14 |
| 205 | +; DAGISEL-GFX8-NEXT: s_cmp_eq_u32 s4, 0 |
| 206 | +; DAGISEL-GFX8-NEXT: s_cselect_b64 s[4:5], -1, 0 |
| 207 | +; DAGISEL-GFX8-NEXT: v_cndmask_b32_e64 v0, 0, 1, s[4:5] |
| 208 | +; DAGISEL-GFX8-NEXT: s_setpc_b64 s[30:31] |
209 | 209 | ; |
210 | 210 | ; DAGISEL-GFX942-LABEL: workgroup_zero: |
211 | 211 | ; DAGISEL-GFX942: ; %bb.0: ; %entry |
@@ -288,15 +288,15 @@ entry: |
288 | 288 |
|
289 | 289 | ; (workgroup_id_x | workgroup_id_y | workgroup_id_z) != 0 |
290 | 290 | define i1 @workgroup_nonzero() { |
291 | | -; DAGISEL-GFX9-LABEL: workgroup_nonzero: |
292 | | -; DAGISEL-GFX9: ; %bb.0: ; %entry |
293 | | -; DAGISEL-GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
294 | | -; DAGISEL-GFX9-NEXT: s_or_b32 s4, s12, s13 |
295 | | -; DAGISEL-GFX9-NEXT: s_or_b32 s4, s4, s14 |
296 | | -; DAGISEL-GFX9-NEXT: s_cmp_lg_u32 s4, 0 |
297 | | -; DAGISEL-GFX9-NEXT: s_cselect_b64 s[4:5], -1, 0 |
298 | | -; DAGISEL-GFX9-NEXT: v_cndmask_b32_e64 v0, 0, 1, s[4:5] |
299 | | -; DAGISEL-GFX9-NEXT: s_setpc_b64 s[30:31] |
| 291 | +; DAGISEL-GFX8-LABEL: workgroup_nonzero: |
| 292 | +; DAGISEL-GFX8: ; %bb.0: ; %entry |
| 293 | +; DAGISEL-GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) |
| 294 | +; DAGISEL-GFX8-NEXT: s_or_b32 s4, s12, s13 |
| 295 | +; DAGISEL-GFX8-NEXT: s_or_b32 s4, s4, s14 |
| 296 | +; DAGISEL-GFX8-NEXT: s_cmp_lg_u32 s4, 0 |
| 297 | +; DAGISEL-GFX8-NEXT: s_cselect_b64 s[4:5], -1, 0 |
| 298 | +; DAGISEL-GFX8-NEXT: v_cndmask_b32_e64 v0, 0, 1, s[4:5] |
| 299 | +; DAGISEL-GFX8-NEXT: s_setpc_b64 s[30:31] |
300 | 300 | ; |
301 | 301 | ; DAGISEL-GFX942-LABEL: workgroup_nonzero: |
302 | 302 | ; DAGISEL-GFX942: ; %bb.0: ; %entry |
|
0 commit comments