1; RUN: llc -verify-machineinstrs -mtriple=aarch64-none-linux-gnu -disable-post-ra --frame-pointer=all < %s | FileCheck %s 2 3; The purpose of this test is to verify that frame pointer (x29) 4; is correctly setup in the presence of callee-saved floating 5; point registers. The frame pointer should point to the frame 6; record, which is located 16 bytes above the end of the CSR 7; space when a single FP CSR is in use. 8define void @test1(i32) #26 { 9entry: 10 call void asm sideeffect "nop", "~{d8}"() #26 11 ret void 12} 13; CHECK-LABEL: test1: 14; CHECK: str d8, [sp, #-32]! 15; CHECK-NEXT: stp x29, x30, [sp, #16] 16; CHECK-NEXT: add x29, sp, #16 17; CHECK: nop 18; CHECK: ldp x29, x30, [sp, #16] 19; CHECK-NEXT: ldr d8, [sp], #32 20; CHECK-NEXT: ret 21 22attributes #26 = { nounwind } 23