1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2; RUN: llc < %s --mtriple=loongarch64 -mattr=+d | FileCheck %s 3 4define i64 @get_stack() nounwind { 5; CHECK-LABEL: get_stack: 6; CHECK: # %bb.0: # %entry 7; CHECK-NEXT: move $a0, $sp 8; CHECK-NEXT: ret 9entry: 10 %sp = call i64 @llvm.read_register.i64(metadata !0) 11 ret i64 %sp 12} 13 14define void @set_stack(i64 %val) nounwind { 15; CHECK-LABEL: set_stack: 16; CHECK: # %bb.0: # %entry 17; CHECK-NEXT: move $sp, $a0 18; CHECK-NEXT: ret 19entry: 20 call void @llvm.write_register.i64(metadata !0, i64 %val) 21 ret void 22} 23 24declare i64 @llvm.read_register.i64(metadata) nounwind 25declare void @llvm.write_register.i64(metadata, i64) nounwind 26 27!0 = !{!"$sp\00"} 28