43 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 52; RUN: llc < %s -mtriple amdgcn | FileCheck %s -check-prefixes=CHECK3 4declare dso_local void @main()5 6define dso_local void @naked() naked "frame-pointer"="all" {7; CHECK-LABEL: naked:8; CHECK: .Lnaked$local:9; CHECK-NEXT: .type .Lnaked$local,@function10; CHECK-NEXT: ; %bb.0:11; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)12; CHECK-NEXT: s_getpc_b64 s[16:17]13; CHECK-NEXT: s_add_u32 s16, s16, main@rel32@lo+414; CHECK-NEXT: s_addc_u32 s17, s17, main@rel32@hi+1215; CHECK-NEXT: s_swappc_b64 s[30:31], s[16:17]16 call void @main()17 unreachable18}19 20define dso_local void @normal() "frame-pointer"="all" {21; CHECK-LABEL: normal:22; CHECK: .Lnormal$local:23; CHECK-NEXT: .type .Lnormal$local,@function24; CHECK-NEXT: ; %bb.0:25; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)26; CHECK-NEXT: s_mov_b32 s16, s3327; CHECK-NEXT: s_mov_b32 s33, s3228; CHECK-NEXT: s_or_saveexec_b64 s[18:19], -129; CHECK-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill30; CHECK-NEXT: s_mov_b64 exec, s[18:19]31; CHECK-NEXT: s_waitcnt expcnt(0)32; CHECK-NEXT: v_writelane_b32 v40, s16, 233; CHECK-NEXT: s_addk_i32 s32, 0x40034; CHECK-NEXT: v_writelane_b32 v40, s30, 035; CHECK-NEXT: v_writelane_b32 v40, s31, 136; CHECK-NEXT: s_getpc_b64 s[16:17]37; CHECK-NEXT: s_add_u32 s16, s16, main@rel32@lo+438; CHECK-NEXT: s_addc_u32 s17, s17, main@rel32@hi+1239; CHECK-NEXT: s_swappc_b64 s[30:31], s[16:17]40 call void @main()41 unreachable42}43