xref: /aosp_15_r20/external/elfutils/tests/run-readelf-frames.sh (revision 7304104da70ce23c86437a01be71edd1a2d7f37e)
1*7304104dSAndroid Build Coastguard Worker#! /bin/sh
2*7304104dSAndroid Build Coastguard Worker# Copyright (C) 2020 Red Hat, Inc.
3*7304104dSAndroid Build Coastguard Worker# This file is part of elfutils.
4*7304104dSAndroid Build Coastguard Worker#
5*7304104dSAndroid Build Coastguard Worker# This file is free software; you can redistribute it and/or modify
6*7304104dSAndroid Build Coastguard Worker# it under the terms of the GNU General Public License as published by
7*7304104dSAndroid Build Coastguard Worker# the Free Software Foundation; either version 3 of the License, or
8*7304104dSAndroid Build Coastguard Worker# (at your option) any later version.
9*7304104dSAndroid Build Coastguard Worker#
10*7304104dSAndroid Build Coastguard Worker# elfutils is distributed in the hope that it will be useful, but
11*7304104dSAndroid Build Coastguard Worker# WITHOUT ANY WARRANTY; without even the implied warranty of
12*7304104dSAndroid Build Coastguard Worker# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13*7304104dSAndroid Build Coastguard Worker# GNU General Public License for more details.
14*7304104dSAndroid Build Coastguard Worker#
15*7304104dSAndroid Build Coastguard Worker# You should have received a copy of the GNU General Public License
16*7304104dSAndroid Build Coastguard Worker# along with this program.  If not, see <http://www.gnu.org/licenses/>.
17*7304104dSAndroid Build Coastguard Worker
18*7304104dSAndroid Build Coastguard Worker. $srcdir/test-subr.sh
19*7304104dSAndroid Build Coastguard Worker
20*7304104dSAndroid Build Coastguard Worker# See run-readelf-n.sh
21*7304104dSAndroid Build Coastguard Workertestfiles testfile-gnu-property-note-aarch64
22*7304104dSAndroid Build Coastguard Worker
23*7304104dSAndroid Build Coastguard Workertestrun_compare ${abs_top_builddir}/src/readelf --debug-dump=frames testfile-gnu-property-note-aarch64 <<\EOF
24*7304104dSAndroid Build Coastguard Worker
25*7304104dSAndroid Build Coastguard WorkerCall frame search table section [17] '.eh_frame_hdr':
26*7304104dSAndroid Build Coastguard Worker version:          1
27*7304104dSAndroid Build Coastguard Worker eh_frame_ptr_enc: 0x1b (sdata4 pcrel)
28*7304104dSAndroid Build Coastguard Worker fde_count_enc:    0x3 (udata4)
29*7304104dSAndroid Build Coastguard Worker table_enc:        0x3b (sdata4 datarel)
30*7304104dSAndroid Build Coastguard Worker eh_frame_ptr:     0x44 (offset: 0x758)
31*7304104dSAndroid Build Coastguard Worker fde_count:        7
32*7304104dSAndroid Build Coastguard Worker Table:
33*7304104dSAndroid Build Coastguard Worker  0xfffffe70 (offset:  0x580) -> 0x5c fde=[    14]
34*7304104dSAndroid Build Coastguard Worker  0xfffffea0 (offset:  0x5b0) -> 0x70 fde=[    28]
35*7304104dSAndroid Build Coastguard Worker  0xfffffee0 (offset:  0x5f0) -> 0x84 fde=[    3c]
36*7304104dSAndroid Build Coastguard Worker  0xffffff20 (offset:  0x630) -> 0xac fde=[    64]
37*7304104dSAndroid Build Coastguard Worker  0xffffff28 (offset:  0x638) -> 0xc0 fde=[    78]
38*7304104dSAndroid Build Coastguard Worker  0xffffff40 (offset:  0x650) -> 0xd8 fde=[    90]
39*7304104dSAndroid Build Coastguard Worker  0xffffffc0 (offset:  0x6d0) -> 0x110 fde=[    c8]
40*7304104dSAndroid Build Coastguard Worker
41*7304104dSAndroid Build Coastguard WorkerCall frame information section [18] '.eh_frame' at offset 0x758:
42*7304104dSAndroid Build Coastguard Worker
43*7304104dSAndroid Build Coastguard Worker [     0] CIE length=16
44*7304104dSAndroid Build Coastguard Worker   CIE_id:                   0
45*7304104dSAndroid Build Coastguard Worker   version:                  1
46*7304104dSAndroid Build Coastguard Worker   augmentation:             "zR"
47*7304104dSAndroid Build Coastguard Worker   code_alignment_factor:    4
48*7304104dSAndroid Build Coastguard Worker   data_alignment_factor:    -8
49*7304104dSAndroid Build Coastguard Worker   return_address_register:  30
50*7304104dSAndroid Build Coastguard Worker   Augmentation data:        0x1b (FDE address encoding: sdata4 pcrel)
51*7304104dSAndroid Build Coastguard Worker
52*7304104dSAndroid Build Coastguard Worker   Program:
53*7304104dSAndroid Build Coastguard Worker     def_cfa r31 (sp) at offset 0
54*7304104dSAndroid Build Coastguard Worker
55*7304104dSAndroid Build Coastguard Worker [    14] FDE length=16 cie=[     0]
56*7304104dSAndroid Build Coastguard Worker   CIE_pointer:              24
57*7304104dSAndroid Build Coastguard Worker   initial_location:         0x0000000000400580 (offset: 0x580)
58*7304104dSAndroid Build Coastguard Worker   address_range:            0x30 (end offset: 0x5b0)
59*7304104dSAndroid Build Coastguard Worker
60*7304104dSAndroid Build Coastguard Worker   Program:
61*7304104dSAndroid Build Coastguard Worker     nop
62*7304104dSAndroid Build Coastguard Worker     nop
63*7304104dSAndroid Build Coastguard Worker     nop
64*7304104dSAndroid Build Coastguard Worker
65*7304104dSAndroid Build Coastguard Worker [    28] FDE length=16 cie=[     0]
66*7304104dSAndroid Build Coastguard Worker   CIE_pointer:              44
67*7304104dSAndroid Build Coastguard Worker   initial_location:         0x00000000004005b0 (offset: 0x5b0)
68*7304104dSAndroid Build Coastguard Worker   address_range:            0x3c (end offset: 0x5ec)
69*7304104dSAndroid Build Coastguard Worker
70*7304104dSAndroid Build Coastguard Worker   Program:
71*7304104dSAndroid Build Coastguard Worker     nop
72*7304104dSAndroid Build Coastguard Worker     nop
73*7304104dSAndroid Build Coastguard Worker     nop
74*7304104dSAndroid Build Coastguard Worker
75*7304104dSAndroid Build Coastguard Worker [    3c] FDE length=36 cie=[     0]
76*7304104dSAndroid Build Coastguard Worker   CIE_pointer:              64
77*7304104dSAndroid Build Coastguard Worker   initial_location:         0x00000000004005f0 (offset: 0x5f0)
78*7304104dSAndroid Build Coastguard Worker   address_range:            0x38 (end offset: 0x628)
79*7304104dSAndroid Build Coastguard Worker
80*7304104dSAndroid Build Coastguard Worker   Program:
81*7304104dSAndroid Build Coastguard Worker     advance_loc 1 to 0x5f4
82*7304104dSAndroid Build Coastguard Worker     AARCH64_negate_ra_state
83*7304104dSAndroid Build Coastguard Worker     advance_loc 1 to 0x5f8
84*7304104dSAndroid Build Coastguard Worker     def_cfa_offset 32
85*7304104dSAndroid Build Coastguard Worker     offset r29 (x29) at cfa-32
86*7304104dSAndroid Build Coastguard Worker     offset r30 (x30) at cfa-24
87*7304104dSAndroid Build Coastguard Worker     advance_loc 2 to 0x600
88*7304104dSAndroid Build Coastguard Worker     offset r19 (x19) at cfa-16
89*7304104dSAndroid Build Coastguard Worker     advance_loc 8 to 0x620
90*7304104dSAndroid Build Coastguard Worker     restore r30 (x30)
91*7304104dSAndroid Build Coastguard Worker     restore r29 (x29)
92*7304104dSAndroid Build Coastguard Worker     restore r19 (x19)
93*7304104dSAndroid Build Coastguard Worker     def_cfa_offset 0
94*7304104dSAndroid Build Coastguard Worker     advance_loc 1 to 0x624
95*7304104dSAndroid Build Coastguard Worker     AARCH64_negate_ra_state
96*7304104dSAndroid Build Coastguard Worker     nop
97*7304104dSAndroid Build Coastguard Worker     nop
98*7304104dSAndroid Build Coastguard Worker     nop
99*7304104dSAndroid Build Coastguard Worker
100*7304104dSAndroid Build Coastguard Worker [    64] FDE length=16 cie=[     0]
101*7304104dSAndroid Build Coastguard Worker   CIE_pointer:              104
102*7304104dSAndroid Build Coastguard Worker   initial_location:         0x0000000000400630 (offset: 0x630)
103*7304104dSAndroid Build Coastguard Worker   address_range:            0x8 (end offset: 0x638)
104*7304104dSAndroid Build Coastguard Worker
105*7304104dSAndroid Build Coastguard Worker   Program:
106*7304104dSAndroid Build Coastguard Worker     nop
107*7304104dSAndroid Build Coastguard Worker     nop
108*7304104dSAndroid Build Coastguard Worker     nop
109*7304104dSAndroid Build Coastguard Worker
110*7304104dSAndroid Build Coastguard Worker [    78] FDE length=20 cie=[     0]
111*7304104dSAndroid Build Coastguard Worker   CIE_pointer:              124
112*7304104dSAndroid Build Coastguard Worker   initial_location:         0x0000000000400638 (offset: 0x638)
113*7304104dSAndroid Build Coastguard Worker   address_range:            0xc (end offset: 0x644)
114*7304104dSAndroid Build Coastguard Worker
115*7304104dSAndroid Build Coastguard Worker   Program:
116*7304104dSAndroid Build Coastguard Worker     nop
117*7304104dSAndroid Build Coastguard Worker     nop
118*7304104dSAndroid Build Coastguard Worker     nop
119*7304104dSAndroid Build Coastguard Worker     nop
120*7304104dSAndroid Build Coastguard Worker     nop
121*7304104dSAndroid Build Coastguard Worker     nop
122*7304104dSAndroid Build Coastguard Worker     nop
123*7304104dSAndroid Build Coastguard Worker
124*7304104dSAndroid Build Coastguard Worker [    90] FDE length=52 cie=[     0]
125*7304104dSAndroid Build Coastguard Worker   CIE_pointer:              148
126*7304104dSAndroid Build Coastguard Worker   initial_location:         0x0000000000400650 (offset: 0x650)
127*7304104dSAndroid Build Coastguard Worker   address_range:            0x80 (end offset: 0x6d0)
128*7304104dSAndroid Build Coastguard Worker
129*7304104dSAndroid Build Coastguard Worker   Program:
130*7304104dSAndroid Build Coastguard Worker     advance_loc 1 to 0x654
131*7304104dSAndroid Build Coastguard Worker     AARCH64_negate_ra_state
132*7304104dSAndroid Build Coastguard Worker     advance_loc 1 to 0x658
133*7304104dSAndroid Build Coastguard Worker     def_cfa_offset 64
134*7304104dSAndroid Build Coastguard Worker     offset r29 (x29) at cfa-64
135*7304104dSAndroid Build Coastguard Worker     offset r30 (x30) at cfa-56
136*7304104dSAndroid Build Coastguard Worker     advance_loc 2 to 0x660
137*7304104dSAndroid Build Coastguard Worker     offset r19 (x19) at cfa-48
138*7304104dSAndroid Build Coastguard Worker     offset r20 (x20) at cfa-40
139*7304104dSAndroid Build Coastguard Worker     advance_loc 3 to 0x66c
140*7304104dSAndroid Build Coastguard Worker     offset r21 (x21) at cfa-32
141*7304104dSAndroid Build Coastguard Worker     offset r22 (x22) at cfa-24
142*7304104dSAndroid Build Coastguard Worker     advance_loc 5 to 0x680
143*7304104dSAndroid Build Coastguard Worker     offset r23 (x23) at cfa-16
144*7304104dSAndroid Build Coastguard Worker     offset r24 (x24) at cfa-8
145*7304104dSAndroid Build Coastguard Worker     advance_loc 18 to 0x6c8
146*7304104dSAndroid Build Coastguard Worker     restore r30 (x30)
147*7304104dSAndroid Build Coastguard Worker     restore r29 (x29)
148*7304104dSAndroid Build Coastguard Worker     restore r23 (x23)
149*7304104dSAndroid Build Coastguard Worker     restore r24 (x24)
150*7304104dSAndroid Build Coastguard Worker     restore r21 (x21)
151*7304104dSAndroid Build Coastguard Worker     restore r22 (x22)
152*7304104dSAndroid Build Coastguard Worker     restore r19 (x19)
153*7304104dSAndroid Build Coastguard Worker     restore r20 (x20)
154*7304104dSAndroid Build Coastguard Worker     def_cfa_offset 0
155*7304104dSAndroid Build Coastguard Worker     advance_loc 1 to 0x6cc
156*7304104dSAndroid Build Coastguard Worker     AARCH64_negate_ra_state
157*7304104dSAndroid Build Coastguard Worker     nop
158*7304104dSAndroid Build Coastguard Worker     nop
159*7304104dSAndroid Build Coastguard Worker
160*7304104dSAndroid Build Coastguard Worker [    c8] FDE length=16 cie=[     0]
161*7304104dSAndroid Build Coastguard Worker   CIE_pointer:              204
162*7304104dSAndroid Build Coastguard Worker   initial_location:         0x00000000004006d0 (offset: 0x6d0)
163*7304104dSAndroid Build Coastguard Worker   address_range:            0x8 (end offset: 0x6d8)
164*7304104dSAndroid Build Coastguard Worker
165*7304104dSAndroid Build Coastguard Worker   Program:
166*7304104dSAndroid Build Coastguard Worker     nop
167*7304104dSAndroid Build Coastguard Worker     nop
168*7304104dSAndroid Build Coastguard Worker     nop
169*7304104dSAndroid Build Coastguard Worker
170*7304104dSAndroid Build Coastguard Worker [    dc] Zero terminator
171*7304104dSAndroid Build Coastguard WorkerEOF
172*7304104dSAndroid Build Coastguard Worker
173*7304104dSAndroid Build Coastguard Workerexit 0
174