xref: /llvm-project/llvm/test/DebugInfo/SystemZ/eh_frame.s (revision a7c3163cdf71a3857521a81499272dc76c94efe4)
108bd6154SUlrich Weigand# RUN: llvm-mc -triple=s390x-linux-gnu -filetype=obj %s -o %t
208bd6154SUlrich Weigand# RUN: llvm-objdump -s %t | FileCheck %s
308bd6154SUlrich Weigand
408bd6154SUlrich Weigand	.text
508bd6154SUlrich Weigand	.globl	check_largest_class
608bd6154SUlrich Weigand	.align	4
708bd6154SUlrich Weigand	.type	check_largest_class,@function
808bd6154SUlrich Weigandcheck_largest_class:
908bd6154SUlrich Weigand	.cfi_startproc
1008bd6154SUlrich Weigand	stmg	%r13, %r15, 104(%r15)
1108bd6154SUlrich Weigand	.cfi_offset %r13, -56
1208bd6154SUlrich Weigand	.cfi_offset %r14, -48
1308bd6154SUlrich Weigand	.cfi_offset %r15, -40
14ac1dba0fSRichard Sandiford	aghi	%r15, -224
15ac1dba0fSRichard Sandiford	.cfi_def_cfa_offset 384
16ac1dba0fSRichard Sandiford	std	%f8, 160(%r15)
17ac1dba0fSRichard Sandiford	std	%f9, 168(%r15)
18ac1dba0fSRichard Sandiford	std	%f10, 176(%r15)
19ac1dba0fSRichard Sandiford	std	%f11, 184(%r15)
20ac1dba0fSRichard Sandiford	std	%f12, 192(%r15)
21ac1dba0fSRichard Sandiford	std	%f13, 200(%r15)
22ac1dba0fSRichard Sandiford	std	%f14, 208(%r15)
23ac1dba0fSRichard Sandiford	std	%f15, 216(%r15)
24ac1dba0fSRichard Sandiford	.cfi_offset %f8, -224
25ac1dba0fSRichard Sandiford	.cfi_offset %f9, -216
26ac1dba0fSRichard Sandiford	.cfi_offset %f10, -208
27ac1dba0fSRichard Sandiford	.cfi_offset %f11, -200
28ac1dba0fSRichard Sandiford	.cfi_offset %f12, -192
29ac1dba0fSRichard Sandiford	.cfi_offset %f13, -184
30ac1dba0fSRichard Sandiford	.cfi_offset %f14, -176
31ac1dba0fSRichard Sandiford	.cfi_offset %f15, -168
32ac1dba0fSRichard Sandiford	lmg	%r13, %r15, 328(%r15)
3308bd6154SUlrich Weigand	br	%r14
3408bd6154SUlrich Weigand	.size	check_largest_class, .-check_largest_class
3508bd6154SUlrich Weigand	.cfi_endproc
3608bd6154SUlrich Weigand
3708bd6154SUlrich Weigand# The readelf rendering is:
3808bd6154SUlrich Weigand#
3908bd6154SUlrich Weigand# Contents of the .eh_frame section:
4008bd6154SUlrich Weigand#
41ac1dba0fSRichard Sandiford# 00000000 0000000000000014 00000000 CIE
42f7693f4cSOliver Stannard#   Version:               3
4308bd6154SUlrich Weigand#   Augmentation:          "zR"
4408bd6154SUlrich Weigand#   Code alignment factor: 1
4508bd6154SUlrich Weigand#   Data alignment factor: -8
4608bd6154SUlrich Weigand#   Return address column: 14
4708bd6154SUlrich Weigand#   Augmentation data:     1b
4808bd6154SUlrich Weigand#
4908bd6154SUlrich Weigand#   DW_CFA_def_cfa: r15 ofs 160
5008bd6154SUlrich Weigand#   DW_CFA_nop
5108bd6154SUlrich Weigand#   DW_CFA_nop
5208bd6154SUlrich Weigand#   DW_CFA_nop
5308bd6154SUlrich Weigand#
54ac1dba0fSRichard Sandiford# 000000.. 000000000000002c 0000001c FDE cie=00000000 pc=0000000000000000..0000000000000032
55ac1dba0fSRichard Sandiford#   DW_CFA_advance_loc: 6 to 0000000000000006
5608bd6154SUlrich Weigand#   DW_CFA_offset: r13 at cfa-56
5708bd6154SUlrich Weigand#   DW_CFA_offset: r14 at cfa-48
5808bd6154SUlrich Weigand#   DW_CFA_offset: r15 at cfa-40
59ac1dba0fSRichard Sandiford#   DW_CFA_advance_loc: 4 to 000000000000000a
60ac1dba0fSRichard Sandiford#   DW_CFA_def_cfa_offset: 384
61ac1dba0fSRichard Sandiford#   DW_CFA_advance_loc: 32 to 000000000000002a
62ac1dba0fSRichard Sandiford#   DW_CFA_offset: r24 at cfa-224
63ac1dba0fSRichard Sandiford#   DW_CFA_offset: r28 at cfa-216
64ac1dba0fSRichard Sandiford#   DW_CFA_offset: r25 at cfa-208
65ac1dba0fSRichard Sandiford#   DW_CFA_offset: r29 at cfa-200
66ac1dba0fSRichard Sandiford#   DW_CFA_offset: r26 at cfa-192
67ac1dba0fSRichard Sandiford#   DW_CFA_offset: r30 at cfa-184
68ac1dba0fSRichard Sandiford#   DW_CFA_offset: r27 at cfa-176
69ac1dba0fSRichard Sandiford#   DW_CFA_offset: r31 at cfa-168
7008bd6154SUlrich Weigand#   DW_CFA_nop
7108bd6154SUlrich Weigand#   DW_CFA_nop
7208bd6154SUlrich Weigand#   DW_CFA_nop
7308bd6154SUlrich Weigand#
7408bd6154SUlrich Weigand# CHECK: Contents of section .eh_frame:
75*a7c3163cSRafael Espindola# CHECK-NEXT: 0000 00000014 00000000 017a5200 01780e01  {{.*}}
76ac1dba0fSRichard Sandiford# CHECK-NEXT: 0010 1b0c0fa0 01000000 0000002c 0000001c  {{.*}}
77ac1dba0fSRichard Sandiford# CHECK-NEXT: 0020 00000000 00000032 00468d07 8e068f05  {{.*}}
78ac1dba0fSRichard Sandiford# CHECK-NEXT: 0030 440e8003 60981c9c 1b991a9d 199a189e  {{.*}}
79ac1dba0fSRichard Sandiford# CHECK-NEXT: 0040 179b169f 15000000                    {{.*}}
80