40 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 52; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a < %s | FileCheck %s3 4define protected amdgpu_kernel void @foo(ptr addrspace(1) %arg, ptr addrspace(1) %arg1) {5; CHECK-LABEL: foo:6; CHECK: ; %bb.0: ; %bb7; CHECK-NEXT: s_add_u32 flat_scratch_lo, s12, s178; CHECK-NEXT: s_addc_u32 flat_scratch_hi, s13, 09; CHECK-NEXT: s_add_u32 s0, s0, s1710; CHECK-NEXT: s_addc_u32 s1, s1, 011; CHECK-NEXT: s_add_u32 s8, s8, 1612; CHECK-NEXT: s_addc_u32 s9, s9, 013; CHECK-NEXT: s_mov_b32 s13, s1514; CHECK-NEXT: s_mov_b32 s12, s1415; CHECK-NEXT: s_getpc_b64 s[18:19]16; CHECK-NEXT: s_add_u32 s18, s18, eggs@rel32@lo+417; CHECK-NEXT: s_addc_u32 s19, s19, eggs@rel32@hi+1218; CHECK-NEXT: s_mov_b32 s14, s1619; CHECK-NEXT: v_mov_b32_e32 v31, v020; CHECK-NEXT: v_mov_b32_e32 v1, 021; CHECK-NEXT: s_mov_b32 s32, 022; CHECK-NEXT: s_swappc_b64 s[30:31], s[18:19]23; CHECK-NEXT: s_mov_b64 s[4:5], src_private_base24; CHECK-NEXT: v_mov_b32_e32 v2, 025; CHECK-NEXT: v_mov_b32_e32 v3, s526; CHECK-NEXT: flat_load_dwordx2 v[2:3], v[2:3]27; CHECK-NEXT: s_waitcnt vmcnt(0) lgkmcnt(0)28; CHECK-NEXT: flat_store_dwordx2 v[2:3], v[0:1]29; CHECK-NEXT: s_endpgm30bb:31 %tmp = addrspacecast ptr addrspace(5) null to ptr32 %tmp2 = call i64 @eggs(ptr poison) #133 %tmp3 = load ptr, ptr %tmp, align 834 %tmp4 = getelementptr inbounds i64, ptr %tmp3, i64 035 store i64 %tmp2, ptr %tmp4, align 836 ret void37}38 39declare hidden i64 @eggs(ptr)40