|
1 |
| -; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a < %s |
| 1 | +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5 |
| 2 | +; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a < %s | FileCheck %s |
2 | 3 |
|
3 | 4 | define protected amdgpu_kernel void @foo(ptr addrspace(1) %arg, ptr addrspace(1) %arg1) {
|
| 5 | +; CHECK-LABEL: foo: |
| 6 | +; CHECK: ; %bb.0: ; %bb |
| 7 | +; CHECK-NEXT: s_add_u32 flat_scratch_lo, s12, s17 |
| 8 | +; CHECK-NEXT: s_addc_u32 flat_scratch_hi, s13, 0 |
| 9 | +; CHECK-NEXT: s_add_u32 s0, s0, s17 |
| 10 | +; CHECK-NEXT: s_addc_u32 s1, s1, 0 |
| 11 | +; CHECK-NEXT: s_add_u32 s8, s8, 16 |
| 12 | +; CHECK-NEXT: s_addc_u32 s9, s9, 0 |
| 13 | +; CHECK-NEXT: s_mov_b32 s13, s15 |
| 14 | +; CHECK-NEXT: s_mov_b32 s12, s14 |
| 15 | +; CHECK-NEXT: s_getpc_b64 s[18:19] |
| 16 | +; CHECK-NEXT: s_add_u32 s18, s18, eggs@rel32@lo+4 |
| 17 | +; CHECK-NEXT: s_addc_u32 s19, s19, eggs@rel32@hi+12 |
| 18 | +; CHECK-NEXT: s_mov_b32 s14, s16 |
| 19 | +; CHECK-NEXT: v_mov_b32_e32 v31, v0 |
| 20 | +; CHECK-NEXT: v_mov_b32_e32 v1, 0 |
| 21 | +; CHECK-NEXT: s_mov_b32 s32, 0 |
| 22 | +; CHECK-NEXT: s_swappc_b64 s[30:31], s[18:19] |
| 23 | +; CHECK-NEXT: buffer_load_dword v2, off, s[0:3], 0 |
| 24 | +; CHECK-NEXT: buffer_load_dword v3, off, s[0:3], 0 offset:4 |
| 25 | +; CHECK-NEXT: s_waitcnt vmcnt(0) |
| 26 | +; CHECK-NEXT: flat_store_dwordx2 v[2:3], v[0:1] |
| 27 | +; CHECK-NEXT: s_endpgm |
4 | 28 | bb:
|
5 | 29 | %tmp = addrspacecast ptr addrspace(5) null to ptr
|
6 | 30 | %tmp2 = call i64 @eggs(ptr poison) #1
|
7 | 31 | %tmp3 = load ptr, ptr %tmp, align 8
|
8 |
| - %tmp4 = getelementptr inbounds i64, ptr %tmp3, i64 undef |
| 32 | + %tmp4 = getelementptr inbounds i64, ptr %tmp3, i64 0 |
9 | 33 | store i64 %tmp2, ptr %tmp4, align 8
|
10 | 34 | ret void
|
11 | 35 | }
|
|
0 commit comments