1*ad4a582fSAlex Rønne Petersen; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5 2*ad4a582fSAlex Rønne Petersen; RUN: llc < %s -mtriple riscv32 | FileCheck %s -check-prefixes=CHECK-32 3*ad4a582fSAlex Rønne Petersen; RUN: llc < %s -mtriple riscv64 | FileCheck %s -check-prefixes=CHECK-64 4*ad4a582fSAlex Rønne Petersen 5*ad4a582fSAlex Rønne Petersendeclare dso_local void @main() 6*ad4a582fSAlex Rønne Petersen 7*ad4a582fSAlex Rønne Petersendefine dso_local void @naked() naked "frame-pointer"="all" { 8*ad4a582fSAlex Rønne Petersen; CHECK-32-LABEL: naked: 9*ad4a582fSAlex Rønne Petersen; CHECK-32: # %bb.0: 10*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: call main 11*ad4a582fSAlex Rønne Petersen; 12*ad4a582fSAlex Rønne Petersen; CHECK-64-LABEL: naked: 13*ad4a582fSAlex Rønne Petersen; CHECK-64: # %bb.0: 14*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: call main 15*ad4a582fSAlex Rønne Petersen call void @main() 16*ad4a582fSAlex Rønne Petersen unreachable 17*ad4a582fSAlex Rønne Petersen} 18*ad4a582fSAlex Rønne Petersen 19*ad4a582fSAlex Rønne Petersendefine dso_local void @normal() "frame-pointer"="all" { 20*ad4a582fSAlex Rønne Petersen; CHECK-32-LABEL: normal: 21*ad4a582fSAlex Rønne Petersen; CHECK-32: # %bb.0: 22*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: addi sp, sp, -16 23*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: .cfi_def_cfa_offset 16 24*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: sw ra, 12(sp) # 4-byte Folded Spill 25*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: sw s0, 8(sp) # 4-byte Folded Spill 26*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: .cfi_offset ra, -4 27*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: .cfi_offset s0, -8 28*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: addi s0, sp, 16 29*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: .cfi_def_cfa s0, 0 30*ad4a582fSAlex Rønne Petersen; CHECK-32-NEXT: call main 31*ad4a582fSAlex Rønne Petersen; 32*ad4a582fSAlex Rønne Petersen; CHECK-64-LABEL: normal: 33*ad4a582fSAlex Rønne Petersen; CHECK-64: # %bb.0: 34*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: addi sp, sp, -16 35*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: .cfi_def_cfa_offset 16 36*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: sd ra, 8(sp) # 8-byte Folded Spill 37*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: sd s0, 0(sp) # 8-byte Folded Spill 38*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: .cfi_offset ra, -8 39*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: .cfi_offset s0, -16 40*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: addi s0, sp, 16 41*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: .cfi_def_cfa s0, 0 42*ad4a582fSAlex Rønne Petersen; CHECK-64-NEXT: call main 43*ad4a582fSAlex Rønne Petersen call void @main() 44*ad4a582fSAlex Rønne Petersen unreachable 45*ad4a582fSAlex Rønne Petersen} 46