xref: /llvm-project/llvm/test/CodeGen/SystemZ/frame-25.ll (revision a1710eb3cd5823c5d14899112ca3086acbdbe9cb)
1; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
2;
3; Test that space is allocated for the incoming back chain also in cases
4; where no GPRs are saved / restored.
5
6define void @fun0() #0 {
7; CHECK-LABEL: fun0:
8; CHECK: lgr     %r1, %r15
9; CHECK-NEXT: aghi    %r15, -24
10; CHECK-NEXT: stg     %r1, 152(%r15)
11; CHECK-NEXT: #APP
12; CHECK-NEXT: stcke   160(%r15)
13; CHECK-NEXT: #NO_APP
14; CHECK-NEXT: aghi    %r15, 24
15; CHECK-NEXT: br      %r14
16
17entry:
18  %b = alloca [16 x i8], align 1
19  call void asm "stcke $0", "=*Q"(ptr elementtype([16 x i8]) nonnull %b) #2
20  ret void
21}
22
23attributes #0 = { nounwind "packed-stack" "backchain" "use-soft-float"="true" }
24