xref: /aosp_15_r20/external/elfutils/tests/run-readelf-line.sh (revision 7304104da70ce23c86437a01be71edd1a2d7f37e)
1*7304104dSAndroid Build Coastguard Worker#! /bin/sh
2*7304104dSAndroid Build Coastguard Worker# Copyright (C) 2013, 2018 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# Tests readelf --debug-dump=line and --debug-dump=decodedline
21*7304104dSAndroid Build Coastguard Worker# See run-readelf-aranges for testfiles.
22*7304104dSAndroid Build Coastguard Worker
23*7304104dSAndroid Build Coastguard Workertestfiles testfilefoobarbaz
24*7304104dSAndroid Build Coastguard Worker
25*7304104dSAndroid Build Coastguard Workertestrun_compare ${abs_top_builddir}/src/readelf --debug-dump=line testfilefoobarbaz <<EOF
26*7304104dSAndroid Build Coastguard Worker
27*7304104dSAndroid Build Coastguard WorkerDWARF section [30] '.debug_line' at offset 0x15f6:
28*7304104dSAndroid Build Coastguard Worker
29*7304104dSAndroid Build Coastguard WorkerTable at offset 0:
30*7304104dSAndroid Build Coastguard Worker
31*7304104dSAndroid Build Coastguard Worker Length:                         83
32*7304104dSAndroid Build Coastguard Worker DWARF version:                  2
33*7304104dSAndroid Build Coastguard Worker Prologue length:                43
34*7304104dSAndroid Build Coastguard Worker Address size:                   4
35*7304104dSAndroid Build Coastguard Worker Segment selector size:          0
36*7304104dSAndroid Build Coastguard Worker Min instruction length:         1
37*7304104dSAndroid Build Coastguard Worker Max operations per instruction: 1
38*7304104dSAndroid Build Coastguard Worker Initial value if 'is_stmt':     1
39*7304104dSAndroid Build Coastguard Worker Line base:                      -5
40*7304104dSAndroid Build Coastguard Worker Line range:                     14
41*7304104dSAndroid Build Coastguard Worker Opcode base:                    13
42*7304104dSAndroid Build Coastguard Worker
43*7304104dSAndroid Build Coastguard WorkerOpcodes:
44*7304104dSAndroid Build Coastguard Worker  [ 1]  0 arguments
45*7304104dSAndroid Build Coastguard Worker  [ 2]  1 argument
46*7304104dSAndroid Build Coastguard Worker  [ 3]  1 argument
47*7304104dSAndroid Build Coastguard Worker  [ 4]  1 argument
48*7304104dSAndroid Build Coastguard Worker  [ 5]  1 argument
49*7304104dSAndroid Build Coastguard Worker  [ 6]  0 arguments
50*7304104dSAndroid Build Coastguard Worker  [ 7]  0 arguments
51*7304104dSAndroid Build Coastguard Worker  [ 8]  0 arguments
52*7304104dSAndroid Build Coastguard Worker  [ 9]  1 argument
53*7304104dSAndroid Build Coastguard Worker  [10]  0 arguments
54*7304104dSAndroid Build Coastguard Worker  [11]  0 arguments
55*7304104dSAndroid Build Coastguard Worker  [12]  1 argument
56*7304104dSAndroid Build Coastguard Worker
57*7304104dSAndroid Build Coastguard WorkerDirectory table:
58*7304104dSAndroid Build Coastguard Worker
59*7304104dSAndroid Build Coastguard WorkerFile name table:
60*7304104dSAndroid Build Coastguard Worker Entry Dir   Time      Size      Name
61*7304104dSAndroid Build Coastguard Worker 1     0     0         0         foo.c
62*7304104dSAndroid Build Coastguard Worker 2     0     0         0         foobarbaz.h
63*7304104dSAndroid Build Coastguard Worker
64*7304104dSAndroid Build Coastguard WorkerLine number statements:
65*7304104dSAndroid Build Coastguard Worker [    35] extended opcode 2:  set address to 0x80482f0 <main>
66*7304104dSAndroid Build Coastguard Worker [    3c] advance line by constant 15 to 16
67*7304104dSAndroid Build Coastguard Worker [    3e] copy
68*7304104dSAndroid Build Coastguard Worker [    3f] special opcode 159: address+10 = 0x80482fa <main+0xa>, line+1 = 17
69*7304104dSAndroid Build Coastguard Worker [    40] special opcode 117: address+7 = 0x8048301 <main+0x11>, line+1 = 18
70*7304104dSAndroid Build Coastguard Worker [    41] advance line by constant -9 to 9
71*7304104dSAndroid Build Coastguard Worker [    43] special opcode 200: address+13 = 0x804830e <main+0x1e>, line+0 = 9
72*7304104dSAndroid Build Coastguard Worker [    44] special opcode 48: address+2 = 0x8048310 <main+0x20>, line+2 = 11
73*7304104dSAndroid Build Coastguard Worker [    45] special opcode 58: address+3 = 0x8048313 <main+0x23>, line-2 = 9
74*7304104dSAndroid Build Coastguard Worker [    46] special opcode 48: address+2 = 0x8048315 <main+0x25>, line+2 = 11
75*7304104dSAndroid Build Coastguard Worker [    47] special opcode 44: address+2 = 0x8048317 <main+0x27>, line-2 = 9
76*7304104dSAndroid Build Coastguard Worker [    48] advance line by constant 13 to 22
77*7304104dSAndroid Build Coastguard Worker [    4a] special opcode 46: address+2 = 0x8048319 <main+0x29>, line+0 = 22
78*7304104dSAndroid Build Coastguard Worker [    4b] advance line by constant -13 to 9
79*7304104dSAndroid Build Coastguard Worker [    4d] special opcode 60: address+3 = 0x804831c <main+0x2c>, line+0 = 9
80*7304104dSAndroid Build Coastguard Worker [    4e] advance line by constant 12 to 21
81*7304104dSAndroid Build Coastguard Worker [    50] special opcode 60: address+3 = 0x804831f <main+0x2f>, line+0 = 21
82*7304104dSAndroid Build Coastguard Worker [    51] special opcode 61: address+3 = 0x8048322 <main+0x32>, line+1 = 22
83*7304104dSAndroid Build Coastguard Worker [    52] advance address by 2 to 0x8048324
84*7304104dSAndroid Build Coastguard Worker [    54] extended opcode 1:  end of sequence
85*7304104dSAndroid Build Coastguard Worker
86*7304104dSAndroid Build Coastguard WorkerTable at offset 87:
87*7304104dSAndroid Build Coastguard Worker
88*7304104dSAndroid Build Coastguard Worker Length:                         72
89*7304104dSAndroid Build Coastguard Worker DWARF version:                  2
90*7304104dSAndroid Build Coastguard Worker Prologue length:                28
91*7304104dSAndroid Build Coastguard Worker Address size:                   4
92*7304104dSAndroid Build Coastguard Worker Segment selector size:          0
93*7304104dSAndroid Build Coastguard Worker Min instruction length:         1
94*7304104dSAndroid Build Coastguard Worker Max operations per instruction: 1
95*7304104dSAndroid Build Coastguard Worker Initial value if 'is_stmt':     1
96*7304104dSAndroid Build Coastguard Worker Line base:                      -5
97*7304104dSAndroid Build Coastguard Worker Line range:                     14
98*7304104dSAndroid Build Coastguard Worker Opcode base:                    13
99*7304104dSAndroid Build Coastguard Worker
100*7304104dSAndroid Build Coastguard WorkerOpcodes:
101*7304104dSAndroid Build Coastguard Worker  [ 1]  0 arguments
102*7304104dSAndroid Build Coastguard Worker  [ 2]  1 argument
103*7304104dSAndroid Build Coastguard Worker  [ 3]  1 argument
104*7304104dSAndroid Build Coastguard Worker  [ 4]  1 argument
105*7304104dSAndroid Build Coastguard Worker  [ 5]  1 argument
106*7304104dSAndroid Build Coastguard Worker  [ 6]  0 arguments
107*7304104dSAndroid Build Coastguard Worker  [ 7]  0 arguments
108*7304104dSAndroid Build Coastguard Worker  [ 8]  0 arguments
109*7304104dSAndroid Build Coastguard Worker  [ 9]  1 argument
110*7304104dSAndroid Build Coastguard Worker  [10]  0 arguments
111*7304104dSAndroid Build Coastguard Worker  [11]  0 arguments
112*7304104dSAndroid Build Coastguard Worker  [12]  1 argument
113*7304104dSAndroid Build Coastguard Worker
114*7304104dSAndroid Build Coastguard WorkerDirectory table:
115*7304104dSAndroid Build Coastguard Worker
116*7304104dSAndroid Build Coastguard WorkerFile name table:
117*7304104dSAndroid Build Coastguard Worker Entry Dir   Time      Size      Name
118*7304104dSAndroid Build Coastguard Worker 1     0     0         0         bar.c
119*7304104dSAndroid Build Coastguard Worker
120*7304104dSAndroid Build Coastguard WorkerLine number statements:
121*7304104dSAndroid Build Coastguard Worker [    7d] extended opcode 2:  set address to 0x8048330 <nobar>
122*7304104dSAndroid Build Coastguard Worker [    84] advance line by constant 12 to 13
123*7304104dSAndroid Build Coastguard Worker [    86] copy
124*7304104dSAndroid Build Coastguard Worker [    87] special opcode 19: address+0 = 0x8048330 <nobar>, line+1 = 14
125*7304104dSAndroid Build Coastguard Worker [    88] advance address by 11 to 0x804833b
126*7304104dSAndroid Build Coastguard Worker [    8a] extended opcode 1:  end of sequence
127*7304104dSAndroid Build Coastguard Worker [    8d] extended opcode 2:  set address to 0x8048440 <bar>
128*7304104dSAndroid Build Coastguard Worker [    94] advance line by constant 18 to 19
129*7304104dSAndroid Build Coastguard Worker [    96] copy
130*7304104dSAndroid Build Coastguard Worker [    97] special opcode 19: address+0 = 0x8048440 <bar>, line+1 = 20
131*7304104dSAndroid Build Coastguard Worker [    98] advance line by constant -12 to 8
132*7304104dSAndroid Build Coastguard Worker [    9a] special opcode 200: address+13 = 0x804844d <bar+0xd>, line+0 = 8
133*7304104dSAndroid Build Coastguard Worker [    9b] advance line by constant 14 to 22
134*7304104dSAndroid Build Coastguard Worker [    9d] special opcode 74: address+4 = 0x8048451 <bar+0x11>, line+0 = 22
135*7304104dSAndroid Build Coastguard Worker [    9e] advance address by 1 to 0x8048452
136*7304104dSAndroid Build Coastguard Worker [    a0] extended opcode 1:  end of sequence
137*7304104dSAndroid Build Coastguard Worker
138*7304104dSAndroid Build Coastguard WorkerTable at offset 163:
139*7304104dSAndroid Build Coastguard Worker
140*7304104dSAndroid Build Coastguard Worker Length:                         106
141*7304104dSAndroid Build Coastguard Worker DWARF version:                  2
142*7304104dSAndroid Build Coastguard Worker Prologue length:                43
143*7304104dSAndroid Build Coastguard Worker Address size:                   4
144*7304104dSAndroid Build Coastguard Worker Segment selector size:          0
145*7304104dSAndroid Build Coastguard Worker Min instruction length:         1
146*7304104dSAndroid Build Coastguard Worker Max operations per instruction: 1
147*7304104dSAndroid Build Coastguard Worker Initial value if 'is_stmt':     1
148*7304104dSAndroid Build Coastguard Worker Line base:                      -5
149*7304104dSAndroid Build Coastguard Worker Line range:                     14
150*7304104dSAndroid Build Coastguard Worker Opcode base:                    13
151*7304104dSAndroid Build Coastguard Worker
152*7304104dSAndroid Build Coastguard WorkerOpcodes:
153*7304104dSAndroid Build Coastguard Worker  [ 1]  0 arguments
154*7304104dSAndroid Build Coastguard Worker  [ 2]  1 argument
155*7304104dSAndroid Build Coastguard Worker  [ 3]  1 argument
156*7304104dSAndroid Build Coastguard Worker  [ 4]  1 argument
157*7304104dSAndroid Build Coastguard Worker  [ 5]  1 argument
158*7304104dSAndroid Build Coastguard Worker  [ 6]  0 arguments
159*7304104dSAndroid Build Coastguard Worker  [ 7]  0 arguments
160*7304104dSAndroid Build Coastguard Worker  [ 8]  0 arguments
161*7304104dSAndroid Build Coastguard Worker  [ 9]  1 argument
162*7304104dSAndroid Build Coastguard Worker  [10]  0 arguments
163*7304104dSAndroid Build Coastguard Worker  [11]  0 arguments
164*7304104dSAndroid Build Coastguard Worker  [12]  1 argument
165*7304104dSAndroid Build Coastguard Worker
166*7304104dSAndroid Build Coastguard WorkerDirectory table:
167*7304104dSAndroid Build Coastguard Worker
168*7304104dSAndroid Build Coastguard WorkerFile name table:
169*7304104dSAndroid Build Coastguard Worker Entry Dir   Time      Size      Name
170*7304104dSAndroid Build Coastguard Worker 1     0     0         0         baz.c
171*7304104dSAndroid Build Coastguard Worker 2     0     0         0         foobarbaz.h
172*7304104dSAndroid Build Coastguard Worker
173*7304104dSAndroid Build Coastguard WorkerLine number statements:
174*7304104dSAndroid Build Coastguard Worker [    d8] extended opcode 2:  set address to 0x8048340 <nobaz>
175*7304104dSAndroid Build Coastguard Worker [    df] advance line by constant 12 to 13
176*7304104dSAndroid Build Coastguard Worker [    e1] copy
177*7304104dSAndroid Build Coastguard Worker [    e2] special opcode 19: address+0 = 0x8048340 <nobaz>, line+1 = 14
178*7304104dSAndroid Build Coastguard Worker [    e3] advance address by 11 to 0x804834b
179*7304104dSAndroid Build Coastguard Worker [    e5] extended opcode 1:  end of sequence
180*7304104dSAndroid Build Coastguard Worker [    e8] extended opcode 2:  set address to 0x8048460 <baz>
181*7304104dSAndroid Build Coastguard Worker [    ef] advance line by constant 18 to 19
182*7304104dSAndroid Build Coastguard Worker [    f1] copy
183*7304104dSAndroid Build Coastguard Worker [    f2] special opcode 74: address+4 = 0x8048464 <baz+0x4>, line+0 = 19
184*7304104dSAndroid Build Coastguard Worker [    f3] special opcode 75: address+4 = 0x8048468 <baz+0x8>, line+1 = 20
185*7304104dSAndroid Build Coastguard Worker [    f4] extended opcode 4:  set discriminator to 1
186*7304104dSAndroid Build Coastguard Worker [    f8] special opcode 78: address+4 = 0x804846c <baz+0xc>, line+4 = 24
187*7304104dSAndroid Build Coastguard Worker [    f9] special opcode 187: address+12 = 0x8048478 <baz+0x18>, line+1 = 25
188*7304104dSAndroid Build Coastguard Worker [    fa] special opcode 87: address+5 = 0x804847d <baz+0x1d>, line-1 = 24
189*7304104dSAndroid Build Coastguard Worker [    fb] special opcode 61: address+3 = 0x8048480 <baz+0x20>, line+1 = 25
190*7304104dSAndroid Build Coastguard Worker [    fc] special opcode 101: address+6 = 0x8048486 <baz+0x26>, line-1 = 24
191*7304104dSAndroid Build Coastguard Worker [    fd] special opcode 61: address+3 = 0x8048489 <baz+0x29>, line+1 = 25
192*7304104dSAndroid Build Coastguard Worker [    fe] special opcode 87: address+5 = 0x804848e <baz+0x2e>, line-1 = 24
193*7304104dSAndroid Build Coastguard Worker [    ff] advance line by constant -16 to 8
194*7304104dSAndroid Build Coastguard Worker [   101] special opcode 46: address+2 = 0x8048490 <baz+0x30>, line+0 = 8
195*7304104dSAndroid Build Coastguard Worker [   102] advance line by constant 20 to 28
196*7304104dSAndroid Build Coastguard Worker [   104] special opcode 186: address+12 = 0x804849c <baz+0x3c>, line+0 = 28
197*7304104dSAndroid Build Coastguard Worker [   105] advance line by constant -20 to 8
198*7304104dSAndroid Build Coastguard Worker [   107] special opcode 88: address+5 = 0x80484a1 <baz+0x41>, line+0 = 8
199*7304104dSAndroid Build Coastguard Worker [   108] advance line by constant 13 to 21
200*7304104dSAndroid Build Coastguard Worker [   10a] advance address by constant 17 to 0x80484b2 <baz+0x52>
201*7304104dSAndroid Build Coastguard Worker [   10b] special opcode 32: address+1 = 0x80484b3 <baz+0x53>, line+0 = 21
202*7304104dSAndroid Build Coastguard Worker [   10c] advance address by 9 to 0x80484bc
203*7304104dSAndroid Build Coastguard Worker [   10e] extended opcode 1:  end of sequence
204*7304104dSAndroid Build Coastguard WorkerEOF
205*7304104dSAndroid Build Coastguard Worker
206*7304104dSAndroid Build Coastguard Workertestrun_compare ${abs_top_builddir}/src/readelf --debug-dump=decodedline testfilefoobarbaz <<\EOF
207*7304104dSAndroid Build Coastguard Worker
208*7304104dSAndroid Build Coastguard WorkerDWARF section [30] '.debug_line' at offset 0x15f6:
209*7304104dSAndroid Build Coastguard Worker
210*7304104dSAndroid Build Coastguard Worker CU [b] foo.c
211*7304104dSAndroid Build Coastguard Worker  line:col SBPE* disc isa op address (Statement Block Prologue Epilogue *End)
212*7304104dSAndroid Build Coastguard Worker  /home/mark/src/tests/foobarbaz/foo.c (mtime: 0, length: 0)
213*7304104dSAndroid Build Coastguard Worker    16:0   S        0   0  0 0x080482f0 <main>
214*7304104dSAndroid Build Coastguard Worker    17:0   S        0   0  0 0x080482fa <main+0xa>
215*7304104dSAndroid Build Coastguard Worker    18:0   S        0   0  0 0x08048301 <main+0x11>
216*7304104dSAndroid Build Coastguard Worker     9:0   S        0   0  0 0x0804830e <main+0x1e>
217*7304104dSAndroid Build Coastguard Worker    11:0   S        0   0  0 0x08048310 <main+0x20>
218*7304104dSAndroid Build Coastguard Worker     9:0   S        0   0  0 0x08048313 <main+0x23>
219*7304104dSAndroid Build Coastguard Worker    11:0   S        0   0  0 0x08048315 <main+0x25>
220*7304104dSAndroid Build Coastguard Worker     9:0   S        0   0  0 0x08048317 <main+0x27>
221*7304104dSAndroid Build Coastguard Worker    22:0   S        0   0  0 0x08048319 <main+0x29>
222*7304104dSAndroid Build Coastguard Worker     9:0   S        0   0  0 0x0804831c <main+0x2c>
223*7304104dSAndroid Build Coastguard Worker    21:0   S        0   0  0 0x0804831f <main+0x2f>
224*7304104dSAndroid Build Coastguard Worker    22:0   S        0   0  0 0x08048322 <main+0x32>
225*7304104dSAndroid Build Coastguard Worker    22:0   S   *    0   0  0 0x08048323 <main+0x33>
226*7304104dSAndroid Build Coastguard Worker
227*7304104dSAndroid Build Coastguard Worker CU [141] bar.c
228*7304104dSAndroid Build Coastguard Worker  line:col SBPE* disc isa op address (Statement Block Prologue Epilogue *End)
229*7304104dSAndroid Build Coastguard Worker  /home/mark/src/tests/foobarbaz/bar.c (mtime: 0, length: 0)
230*7304104dSAndroid Build Coastguard Worker    13:0   S        0   0  0 0x08048330 <nobar>
231*7304104dSAndroid Build Coastguard Worker    14:0   S        0   0  0 0x08048330 <nobar>
232*7304104dSAndroid Build Coastguard Worker    14:0   S   *    0   0  0 0x0804833a <nobar+0xa>
233*7304104dSAndroid Build Coastguard Worker
234*7304104dSAndroid Build Coastguard Worker    19:0   S        0   0  0 0x08048440 <bar>
235*7304104dSAndroid Build Coastguard Worker    20:0   S        0   0  0 0x08048440 <bar>
236*7304104dSAndroid Build Coastguard Worker     8:0   S        0   0  0 0x0804844d <bar+0xd>
237*7304104dSAndroid Build Coastguard Worker    22:0   S        0   0  0 0x08048451 <bar+0x11>
238*7304104dSAndroid Build Coastguard Worker    22:0   S   *    0   0  0 0x08048451 <bar+0x11>
239*7304104dSAndroid Build Coastguard Worker
240*7304104dSAndroid Build Coastguard Worker CU [1dc] baz.c
241*7304104dSAndroid Build Coastguard Worker  line:col SBPE* disc isa op address (Statement Block Prologue Epilogue *End)
242*7304104dSAndroid Build Coastguard Worker  /home/mark/src/tests/foobarbaz/baz.c (mtime: 0, length: 0)
243*7304104dSAndroid Build Coastguard Worker    13:0   S        0   0  0 0x08048340 <nobaz>
244*7304104dSAndroid Build Coastguard Worker    14:0   S        0   0  0 0x08048340 <nobaz>
245*7304104dSAndroid Build Coastguard Worker    14:0   S   *    0   0  0 0x0804834a <nobaz+0xa>
246*7304104dSAndroid Build Coastguard Worker
247*7304104dSAndroid Build Coastguard Worker    19:0   S        0   0  0 0x08048460 <baz>
248*7304104dSAndroid Build Coastguard Worker    19:0   S        0   0  0 0x08048464 <baz+0x4>
249*7304104dSAndroid Build Coastguard Worker    20:0   S        0   0  0 0x08048468 <baz+0x8>
250*7304104dSAndroid Build Coastguard Worker    24:0   S        1   0  0 0x0804846c <baz+0xc>
251*7304104dSAndroid Build Coastguard Worker    25:0   S        0   0  0 0x08048478 <baz+0x18>
252*7304104dSAndroid Build Coastguard Worker    24:0   S        0   0  0 0x0804847d <baz+0x1d>
253*7304104dSAndroid Build Coastguard Worker    25:0   S        0   0  0 0x08048480 <baz+0x20>
254*7304104dSAndroid Build Coastguard Worker    24:0   S        0   0  0 0x08048486 <baz+0x26>
255*7304104dSAndroid Build Coastguard Worker    25:0   S        0   0  0 0x08048489 <baz+0x29>
256*7304104dSAndroid Build Coastguard Worker    24:0   S        0   0  0 0x0804848e <baz+0x2e>
257*7304104dSAndroid Build Coastguard Worker     8:0   S        0   0  0 0x08048490 <baz+0x30>
258*7304104dSAndroid Build Coastguard Worker    28:0   S        0   0  0 0x0804849c <baz+0x3c>
259*7304104dSAndroid Build Coastguard Worker     8:0   S        0   0  0 0x080484a1 <baz+0x41>
260*7304104dSAndroid Build Coastguard Worker    21:0   S        0   0  0 0x080484b3 <baz+0x53>
261*7304104dSAndroid Build Coastguard Worker    21:0   S   *    0   0  0 0x080484bb <baz+0x5b>
262*7304104dSAndroid Build Coastguard Worker
263*7304104dSAndroid Build Coastguard WorkerEOF
264*7304104dSAndroid Build Coastguard Worker
265*7304104dSAndroid Build Coastguard Worker# A .debug_line table with minimum instruction length > 1.
266*7304104dSAndroid Build Coastguard Worker#
267*7304104dSAndroid Build Coastguard Worker# = hello.c
268*7304104dSAndroid Build Coastguard Worker# #include <stdio.h>
269*7304104dSAndroid Build Coastguard Worker#
270*7304104dSAndroid Build Coastguard Worker# int
271*7304104dSAndroid Build Coastguard Worker# main (int argc, char **argv)
272*7304104dSAndroid Build Coastguard Worker# {
273*7304104dSAndroid Build Coastguard Worker#   printf ("Hello, %s\n", (argc > 0
274*7304104dSAndroid Build Coastguard Worker# 			  ? argv[1]: "World"));
275*7304104dSAndroid Build Coastguard Worker#   return 0;
276*7304104dSAndroid Build Coastguard Worker# }
277*7304104dSAndroid Build Coastguard Worker#
278*7304104dSAndroid Build Coastguard Worker# clang version 5.0.1 (tags/RELEASE_501/final)
279*7304104dSAndroid Build Coastguard Worker# Target: powerpc64-unknown-linux-gnu
280*7304104dSAndroid Build Coastguard Worker# clang -g -O2 -o testfile-ppc64-min-instr hello.c
281*7304104dSAndroid Build Coastguard Workertestfiles testfile-ppc64-min-instr
282*7304104dSAndroid Build Coastguard Worker
283*7304104dSAndroid Build Coastguard Workertestrun_compare ${abs_top_builddir}/src/readelf --debug-dump=line testfile-ppc64-min-instr <<\EOF
284*7304104dSAndroid Build Coastguard Worker
285*7304104dSAndroid Build Coastguard WorkerDWARF section [29] '.debug_line' at offset 0xdf6:
286*7304104dSAndroid Build Coastguard Worker
287*7304104dSAndroid Build Coastguard WorkerTable at offset 0:
288*7304104dSAndroid Build Coastguard Worker
289*7304104dSAndroid Build Coastguard Worker Length:                         69
290*7304104dSAndroid Build Coastguard Worker DWARF version:                  2
291*7304104dSAndroid Build Coastguard Worker Prologue length:                30
292*7304104dSAndroid Build Coastguard Worker Address size:                   8
293*7304104dSAndroid Build Coastguard Worker Segment selector size:          0
294*7304104dSAndroid Build Coastguard Worker Min instruction length:         4
295*7304104dSAndroid Build Coastguard Worker Max operations per instruction: 1
296*7304104dSAndroid Build Coastguard Worker Initial value if 'is_stmt':     1
297*7304104dSAndroid Build Coastguard Worker Line base:                      -5
298*7304104dSAndroid Build Coastguard Worker Line range:                     14
299*7304104dSAndroid Build Coastguard Worker Opcode base:                    13
300*7304104dSAndroid Build Coastguard Worker
301*7304104dSAndroid Build Coastguard WorkerOpcodes:
302*7304104dSAndroid Build Coastguard Worker  [ 1]  0 arguments
303*7304104dSAndroid Build Coastguard Worker  [ 2]  1 argument
304*7304104dSAndroid Build Coastguard Worker  [ 3]  1 argument
305*7304104dSAndroid Build Coastguard Worker  [ 4]  1 argument
306*7304104dSAndroid Build Coastguard Worker  [ 5]  1 argument
307*7304104dSAndroid Build Coastguard Worker  [ 6]  0 arguments
308*7304104dSAndroid Build Coastguard Worker  [ 7]  0 arguments
309*7304104dSAndroid Build Coastguard Worker  [ 8]  0 arguments
310*7304104dSAndroid Build Coastguard Worker  [ 9]  1 argument
311*7304104dSAndroid Build Coastguard Worker  [10]  0 arguments
312*7304104dSAndroid Build Coastguard Worker  [11]  0 arguments
313*7304104dSAndroid Build Coastguard Worker  [12]  1 argument
314*7304104dSAndroid Build Coastguard Worker
315*7304104dSAndroid Build Coastguard WorkerDirectory table:
316*7304104dSAndroid Build Coastguard Worker
317*7304104dSAndroid Build Coastguard WorkerFile name table:
318*7304104dSAndroid Build Coastguard Worker Entry Dir   Time      Size      Name
319*7304104dSAndroid Build Coastguard Worker 1     0     0         0         hello.c
320*7304104dSAndroid Build Coastguard Worker
321*7304104dSAndroid Build Coastguard WorkerLine number statements:
322*7304104dSAndroid Build Coastguard Worker [    28] extended opcode 2:  set address to 0x100005a4 <main>
323*7304104dSAndroid Build Coastguard Worker [    33] special opcode 22: address+0 = 0x100005a4 <main>, line+4 = 5
324*7304104dSAndroid Build Coastguard Worker [    34] set column to 27
325*7304104dSAndroid Build Coastguard Worker [    36] set prologue end flag
326*7304104dSAndroid Build Coastguard Worker [    37] special opcode 19: address+0 = 0x100005a4 <main>, line+1 = 6
327*7304104dSAndroid Build Coastguard Worker [    38] set column to 8
328*7304104dSAndroid Build Coastguard Worker [    3a] special opcode 47: address+8 = 0x100005ac <main+0x8>, line+1 = 7
329*7304104dSAndroid Build Coastguard Worker [    3b] set 'is_stmt' to 0
330*7304104dSAndroid Build Coastguard Worker [    3c] advance line by constant -7 to 0
331*7304104dSAndroid Build Coastguard Worker [    3e] special opcode 32: address+4 = 0x100005b0 <main+0xc>, line+0 = 0
332*7304104dSAndroid Build Coastguard Worker [    3f] set column to 3
333*7304104dSAndroid Build Coastguard Worker [    41] set 'is_stmt' to 1
334*7304104dSAndroid Build Coastguard Worker [    42] special opcode 108: address+24 = 0x100005c8 <main+0x24>, line+6 = 6
335*7304104dSAndroid Build Coastguard Worker [    43] special opcode 76: address+16 = 0x100005d8 <main+0x34>, line+2 = 8
336*7304104dSAndroid Build Coastguard Worker [    44] advance address by 32 to 0x100005f8
337*7304104dSAndroid Build Coastguard Worker [    46] extended opcode 1:  end of sequence
338*7304104dSAndroid Build Coastguard WorkerEOF
339*7304104dSAndroid Build Coastguard Worker
340*7304104dSAndroid Build Coastguard Workertestrun_compare ${abs_top_builddir}/src/readelf --debug-dump=decodedline testfile-ppc64-min-instr <<\EOF
341*7304104dSAndroid Build Coastguard Worker
342*7304104dSAndroid Build Coastguard WorkerDWARF section [29] '.debug_line' at offset 0xdf6:
343*7304104dSAndroid Build Coastguard Worker
344*7304104dSAndroid Build Coastguard Worker CU [b] hello.c
345*7304104dSAndroid Build Coastguard Worker  line:col SBPE* disc isa op address (Statement Block Prologue Epilogue *End)
346*7304104dSAndroid Build Coastguard Worker  /home/fedora/mjw/hello.c (mtime: 0, length: 0)
347*7304104dSAndroid Build Coastguard Worker     5:0   S        0   0  0 0x00000000100005a4 <main>
348*7304104dSAndroid Build Coastguard Worker     6:27  S P      0   0  0 0x00000000100005a4 <main>
349*7304104dSAndroid Build Coastguard Worker     7:8   S        0   0  0 0x00000000100005ac <main+0x8>
350*7304104dSAndroid Build Coastguard Worker     0:8            0   0  0 0x00000000100005b0 <main+0xc>
351*7304104dSAndroid Build Coastguard Worker     6:3   S        0   0  0 0x00000000100005c8 <main+0x24>
352*7304104dSAndroid Build Coastguard Worker     8:3   S        0   0  0 0x00000000100005d8 <main+0x34>
353*7304104dSAndroid Build Coastguard Worker     8:3   S   *    0   0  0 0x00000000100005f7 <main+0x53>
354*7304104dSAndroid Build Coastguard Worker
355*7304104dSAndroid Build Coastguard WorkerEOF
356*7304104dSAndroid Build Coastguard Worker
357*7304104dSAndroid Build Coastguard Worker# Two tests for the same code but encoded using DWARF4 or DWARF5.
358*7304104dSAndroid Build Coastguard Worker# Output is identical except for the section offset and CU numbers.
359*7304104dSAndroid Build Coastguard Worker# See tests/testfile-dwarf-45.source.
360*7304104dSAndroid Build Coastguard Worker
361*7304104dSAndroid Build Coastguard Workertestfiles testfile-dwarf-4 testfile-dwarf-5
362*7304104dSAndroid Build Coastguard Worker
363*7304104dSAndroid Build Coastguard Workertestrun_compare ${abs_top_builddir}/src/readelf --debug-dump=decodedline testfile-dwarf-4 << \EOF
364*7304104dSAndroid Build Coastguard Worker
365*7304104dSAndroid Build Coastguard WorkerDWARF section [29] '.debug_line' at offset 0x1734:
366*7304104dSAndroid Build Coastguard Worker
367*7304104dSAndroid Build Coastguard Worker CU [b] hello.c
368*7304104dSAndroid Build Coastguard Worker  line:col SBPE* disc isa op address (Statement Block Prologue Epilogue *End)
369*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.c (mtime: 0, length: 0)
370*7304104dSAndroid Build Coastguard Worker    21:0   S        0   0  0 0x0000000000400510 <foo>
371*7304104dSAndroid Build Coastguard Worker    22:1   S        0   0  0 0x0000000000400510 <foo>
372*7304104dSAndroid Build Coastguard Worker    22:3            0   0  0 0x0000000000400510 <foo>
373*7304104dSAndroid Build Coastguard Worker    25:6            0   0  0 0x0000000000400514 <foo+0x4>
374*7304104dSAndroid Build Coastguard Worker    25:34  S        0   0  0 0x000000000040051a <foo+0xa>
375*7304104dSAndroid Build Coastguard Worker    25:3            0   0  0 0x000000000040051a <foo+0xa>
376*7304104dSAndroid Build Coastguard Worker    26:34           0   0  0 0x000000000040051e <foo+0xe>
377*7304104dSAndroid Build Coastguard Worker    25:1            1   0  0 0x0000000000400528 <foo+0x18>
378*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.h (mtime: 0, length: 0)
379*7304104dSAndroid Build Coastguard Worker     7:18  S        0   0  0 0x000000000040052b <foo+0x1b>
380*7304104dSAndroid Build Coastguard Worker     9:3   S        0   0  0 0x000000000040052b <foo+0x1b>
381*7304104dSAndroid Build Coastguard Worker     9:3            0   0  0 0x000000000040052b <foo+0x1b>
382*7304104dSAndroid Build Coastguard Worker    10:6   S        0   0  0 0x000000000040052f <foo+0x1f>
383*7304104dSAndroid Build Coastguard Worker    10:5            0   0  0 0x000000000040052f <foo+0x1f>
384*7304104dSAndroid Build Coastguard Worker    12:7   S        0   0  0 0x0000000000400531 <foo+0x21>
385*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.c (mtime: 0, length: 0)
386*7304104dSAndroid Build Coastguard Worker    10:3   S        0   0  0 0x0000000000400531 <foo+0x21>
387*7304104dSAndroid Build Coastguard Worker    12:3   S        0   0  0 0x0000000000400531 <foo+0x21>
388*7304104dSAndroid Build Coastguard Worker    12:3            0   0  0 0x0000000000400531 <foo+0x21>
389*7304104dSAndroid Build Coastguard Worker    13:6   S        0   0  0 0x0000000000400535 <foo+0x25>
390*7304104dSAndroid Build Coastguard Worker    13:5            0   0  0 0x0000000000400535 <foo+0x25>
391*7304104dSAndroid Build Coastguard Worker    15:7   S        0   0  0 0x0000000000400539 <foo+0x29>
392*7304104dSAndroid Build Coastguard Worker    22:3   S        0   0  0 0x0000000000400539 <foo+0x29>
393*7304104dSAndroid Build Coastguard Worker    22:3            0   0  0 0x0000000000400539 <foo+0x29>
394*7304104dSAndroid Build Coastguard Worker    23:6   S        0   0  0 0x000000000040053d <foo+0x2d>
395*7304104dSAndroid Build Coastguard Worker    23:5            0   0  0 0x000000000040053d <foo+0x2d>
396*7304104dSAndroid Build Coastguard Worker     9:12  S        0   0  0 0x0000000000400550 <baz>
397*7304104dSAndroid Build Coastguard Worker    10:1   S        0   0  0 0x0000000000400550 <baz>
398*7304104dSAndroid Build Coastguard Worker    12:3   S        0   0  0 0x0000000000400550 <baz>
399*7304104dSAndroid Build Coastguard Worker    12:3            0   0  0 0x0000000000400550 <baz>
400*7304104dSAndroid Build Coastguard Worker    13:9            0   0  0 0x0000000000400556 <baz+0x6>
401*7304104dSAndroid Build Coastguard Worker    15:7   S        0   0  0 0x000000000040055f <baz+0xf>
402*7304104dSAndroid Build Coastguard Worker    15:3            0   0  0 0x000000000040055f <baz+0xf>
403*7304104dSAndroid Build Coastguard Worker    15:7       *    0   0  0 0x0000000000400560 <baz+0x10>
404*7304104dSAndroid Build Coastguard Worker
405*7304104dSAndroid Build Coastguard Worker CU [21c] world.c
406*7304104dSAndroid Build Coastguard Worker  line:col SBPE* disc isa op address (Statement Block Prologue Epilogue *End)
407*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/world.c (mtime: 0, length: 0)
408*7304104dSAndroid Build Coastguard Worker    15:0   S        0   0  0 0x0000000000400410 <main>
409*7304104dSAndroid Build Coastguard Worker    16:1   S        0   0  0 0x0000000000400410 <main>
410*7304104dSAndroid Build Coastguard Worker    17:3   S        0   0  0 0x0000000000400410 <main>
411*7304104dSAndroid Build Coastguard Worker    15:3            0   0  0 0x0000000000400410 <main>
412*7304104dSAndroid Build Coastguard Worker    17:1            0   0  0 0x0000000000400419 <main+0x9>
413*7304104dSAndroid Build Coastguard Worker    18:6   S        0   0  0 0x000000000040041e <main+0xe>
414*7304104dSAndroid Build Coastguard Worker    18:5            0   0  0 0x000000000040041e <main+0xe>
415*7304104dSAndroid Build Coastguard Worker    22:7   S        0   0  0 0x0000000000400421 <main+0x11>
416*7304104dSAndroid Build Coastguard Worker    22:3   S   *    0   0  0 0x000000000040042f <main+0x1f>
417*7304104dSAndroid Build Coastguard Worker
418*7304104dSAndroid Build Coastguard Worker     6:0   S        0   0  0 0x0000000000400570 <calc>
419*7304104dSAndroid Build Coastguard Worker     7:1   S        0   0  0 0x0000000000400570 <calc>
420*7304104dSAndroid Build Coastguard Worker     7:3            0   0  0 0x0000000000400570 <calc>
421*7304104dSAndroid Build Coastguard Worker     7:6            1   0  0 0x0000000000400575 <calc+0x5>
422*7304104dSAndroid Build Coastguard Worker     7:24           0   0  0 0x0000000000400578 <calc+0x8>
423*7304104dSAndroid Build Coastguard Worker    10:17  S        0   0  0 0x000000000040057d <calc+0xd>
424*7304104dSAndroid Build Coastguard Worker    10:3            0   0  0 0x000000000040057d <calc+0xd>
425*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.h (mtime: 0, length: 0)
426*7304104dSAndroid Build Coastguard Worker    10:10           0   0  0 0x0000000000400583 <calc+0x13>
427*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/world.c (mtime: 0, length: 0)
428*7304104dSAndroid Build Coastguard Worker    10:7            0   0  0 0x0000000000400585 <calc+0x15>
429*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.h (mtime: 0, length: 0)
430*7304104dSAndroid Build Coastguard Worker     7:10  S        0   0  0 0x0000000000400588 <calc+0x18>
431*7304104dSAndroid Build Coastguard Worker     9:3   S        0   0  0 0x0000000000400588 <calc+0x18>
432*7304104dSAndroid Build Coastguard Worker    10:3            0   0  0 0x0000000000400588 <calc+0x18>
433*7304104dSAndroid Build Coastguard Worker    12:7   S        0   0  0 0x000000000040058f <calc+0x1f>
434*7304104dSAndroid Build Coastguard Worker    12:3            0   0  0 0x000000000040058f <calc+0x1f>
435*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/world.c (mtime: 0, length: 0)
436*7304104dSAndroid Build Coastguard Worker    11:10           0   0  0 0x0000000000400598 <calc+0x28>
437*7304104dSAndroid Build Coastguard Worker    11:1       *    0   0  0 0x000000000040059a <calc+0x2a>
438*7304104dSAndroid Build Coastguard Worker
439*7304104dSAndroid Build Coastguard WorkerEOF
440*7304104dSAndroid Build Coastguard Worker
441*7304104dSAndroid Build Coastguard Workertestrun_compare ${abs_top_builddir}/src/readelf --debug-dump=decodedline testfile-dwarf-5 << \EOF
442*7304104dSAndroid Build Coastguard Worker
443*7304104dSAndroid Build Coastguard WorkerDWARF section [29] '.debug_line' at offset 0x171f:
444*7304104dSAndroid Build Coastguard Worker
445*7304104dSAndroid Build Coastguard Worker CU [c] hello.c
446*7304104dSAndroid Build Coastguard Worker  line:col SBPE* disc isa op address (Statement Block Prologue Epilogue *End)
447*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.c (mtime: 0, length: 0)
448*7304104dSAndroid Build Coastguard Worker    21:0   S        0   0  0 0x0000000000400510 <foo>
449*7304104dSAndroid Build Coastguard Worker    22:1   S        0   0  0 0x0000000000400510 <foo>
450*7304104dSAndroid Build Coastguard Worker    22:3            0   0  0 0x0000000000400510 <foo>
451*7304104dSAndroid Build Coastguard Worker    25:6            0   0  0 0x0000000000400514 <foo+0x4>
452*7304104dSAndroid Build Coastguard Worker    25:34  S        0   0  0 0x000000000040051a <foo+0xa>
453*7304104dSAndroid Build Coastguard Worker    25:3            0   0  0 0x000000000040051a <foo+0xa>
454*7304104dSAndroid Build Coastguard Worker    26:34           0   0  0 0x000000000040051e <foo+0xe>
455*7304104dSAndroid Build Coastguard Worker    25:1            1   0  0 0x0000000000400528 <foo+0x18>
456*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.h (mtime: 0, length: 0)
457*7304104dSAndroid Build Coastguard Worker     7:18  S        0   0  0 0x000000000040052b <foo+0x1b>
458*7304104dSAndroid Build Coastguard Worker     9:3   S        0   0  0 0x000000000040052b <foo+0x1b>
459*7304104dSAndroid Build Coastguard Worker     9:3            0   0  0 0x000000000040052b <foo+0x1b>
460*7304104dSAndroid Build Coastguard Worker    10:6   S        0   0  0 0x000000000040052f <foo+0x1f>
461*7304104dSAndroid Build Coastguard Worker    10:5            0   0  0 0x000000000040052f <foo+0x1f>
462*7304104dSAndroid Build Coastguard Worker    12:7   S        0   0  0 0x0000000000400531 <foo+0x21>
463*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.c (mtime: 0, length: 0)
464*7304104dSAndroid Build Coastguard Worker    10:3   S        0   0  0 0x0000000000400531 <foo+0x21>
465*7304104dSAndroid Build Coastguard Worker    12:3   S        0   0  0 0x0000000000400531 <foo+0x21>
466*7304104dSAndroid Build Coastguard Worker    12:3            0   0  0 0x0000000000400531 <foo+0x21>
467*7304104dSAndroid Build Coastguard Worker    13:6   S        0   0  0 0x0000000000400535 <foo+0x25>
468*7304104dSAndroid Build Coastguard Worker    13:5            0   0  0 0x0000000000400535 <foo+0x25>
469*7304104dSAndroid Build Coastguard Worker    15:7   S        0   0  0 0x0000000000400539 <foo+0x29>
470*7304104dSAndroid Build Coastguard Worker    22:3   S        0   0  0 0x0000000000400539 <foo+0x29>
471*7304104dSAndroid Build Coastguard Worker    22:3            0   0  0 0x0000000000400539 <foo+0x29>
472*7304104dSAndroid Build Coastguard Worker    23:6   S        0   0  0 0x000000000040053d <foo+0x2d>
473*7304104dSAndroid Build Coastguard Worker    23:5            0   0  0 0x000000000040053d <foo+0x2d>
474*7304104dSAndroid Build Coastguard Worker     9:12  S        0   0  0 0x0000000000400550 <baz>
475*7304104dSAndroid Build Coastguard Worker    10:1   S        0   0  0 0x0000000000400550 <baz>
476*7304104dSAndroid Build Coastguard Worker    12:3   S        0   0  0 0x0000000000400550 <baz>
477*7304104dSAndroid Build Coastguard Worker    12:3            0   0  0 0x0000000000400550 <baz>
478*7304104dSAndroid Build Coastguard Worker    13:9            0   0  0 0x0000000000400556 <baz+0x6>
479*7304104dSAndroid Build Coastguard Worker    15:7   S        0   0  0 0x000000000040055f <baz+0xf>
480*7304104dSAndroid Build Coastguard Worker    15:3            0   0  0 0x000000000040055f <baz+0xf>
481*7304104dSAndroid Build Coastguard Worker    15:7       *    0   0  0 0x0000000000400560 <baz+0x10>
482*7304104dSAndroid Build Coastguard Worker
483*7304104dSAndroid Build Coastguard Worker CU [218] world.c
484*7304104dSAndroid Build Coastguard Worker  line:col SBPE* disc isa op address (Statement Block Prologue Epilogue *End)
485*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/world.c (mtime: 0, length: 0)
486*7304104dSAndroid Build Coastguard Worker    15:0   S        0   0  0 0x0000000000400410 <main>
487*7304104dSAndroid Build Coastguard Worker    16:1   S        0   0  0 0x0000000000400410 <main>
488*7304104dSAndroid Build Coastguard Worker    17:3   S        0   0  0 0x0000000000400410 <main>
489*7304104dSAndroid Build Coastguard Worker    15:3            0   0  0 0x0000000000400410 <main>
490*7304104dSAndroid Build Coastguard Worker    17:1            0   0  0 0x0000000000400419 <main+0x9>
491*7304104dSAndroid Build Coastguard Worker    18:6   S        0   0  0 0x000000000040041e <main+0xe>
492*7304104dSAndroid Build Coastguard Worker    18:5            0   0  0 0x000000000040041e <main+0xe>
493*7304104dSAndroid Build Coastguard Worker    22:7   S        0   0  0 0x0000000000400421 <main+0x11>
494*7304104dSAndroid Build Coastguard Worker    22:3   S   *    0   0  0 0x000000000040042f <main+0x1f>
495*7304104dSAndroid Build Coastguard Worker
496*7304104dSAndroid Build Coastguard Worker     6:0   S        0   0  0 0x0000000000400570 <calc>
497*7304104dSAndroid Build Coastguard Worker     7:1   S        0   0  0 0x0000000000400570 <calc>
498*7304104dSAndroid Build Coastguard Worker     7:3            0   0  0 0x0000000000400570 <calc>
499*7304104dSAndroid Build Coastguard Worker     7:6            1   0  0 0x0000000000400575 <calc+0x5>
500*7304104dSAndroid Build Coastguard Worker     7:24           0   0  0 0x0000000000400578 <calc+0x8>
501*7304104dSAndroid Build Coastguard Worker    10:17  S        0   0  0 0x000000000040057d <calc+0xd>
502*7304104dSAndroid Build Coastguard Worker    10:3            0   0  0 0x000000000040057d <calc+0xd>
503*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.h (mtime: 0, length: 0)
504*7304104dSAndroid Build Coastguard Worker    10:10           0   0  0 0x0000000000400583 <calc+0x13>
505*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/world.c (mtime: 0, length: 0)
506*7304104dSAndroid Build Coastguard Worker    10:7            0   0  0 0x0000000000400585 <calc+0x15>
507*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/hello.h (mtime: 0, length: 0)
508*7304104dSAndroid Build Coastguard Worker     7:10  S        0   0  0 0x0000000000400588 <calc+0x18>
509*7304104dSAndroid Build Coastguard Worker     9:3   S        0   0  0 0x0000000000400588 <calc+0x18>
510*7304104dSAndroid Build Coastguard Worker    10:3            0   0  0 0x0000000000400588 <calc+0x18>
511*7304104dSAndroid Build Coastguard Worker    12:7   S        0   0  0 0x000000000040058f <calc+0x1f>
512*7304104dSAndroid Build Coastguard Worker    12:3            0   0  0 0x000000000040058f <calc+0x1f>
513*7304104dSAndroid Build Coastguard Worker  /var/tmp/hello/world.c (mtime: 0, length: 0)
514*7304104dSAndroid Build Coastguard Worker    11:10           0   0  0 0x0000000000400598 <calc+0x28>
515*7304104dSAndroid Build Coastguard Worker    11:1       *    0   0  0 0x000000000040059a <calc+0x2a>
516*7304104dSAndroid Build Coastguard Worker
517*7304104dSAndroid Build Coastguard WorkerEOF
518*7304104dSAndroid Build Coastguard Worker
519*7304104dSAndroid Build Coastguard Worker# After discarding the different offsets in the line number statements,
520*7304104dSAndroid Build Coastguard Worker# the remaining difference between 4 and 5 is (besides the header/length)
521*7304104dSAndroid Build Coastguard Worker# Just the representation of the directory and line tables:
522*7304104dSAndroid Build Coastguard Worker
523*7304104dSAndroid Build Coastguard Worker#  Directory table:
524*7304104dSAndroid Build Coastguard Worker# - /opt/local/install/gcc/lib/gcc/x86_64-pc-linux-gnu/9.0.0/include
525*7304104dSAndroid Build Coastguard Worker# +      [path(line_strp)]
526*7304104dSAndroid Build Coastguard Worker# + 0     /var/tmp/hello (90)
527*7304104dSAndroid Build Coastguard Worker# + 1     /opt/local/install/gcc/lib/gcc/x86_64-pc-linux-gnu/9.0.0/include (17)
528*7304104dSAndroid Build Coastguard Worker#
529*7304104dSAndroid Build Coastguard Worker#  File name table:
530*7304104dSAndroid Build Coastguard Worker# - Entry Dir   Time      Size      Name
531*7304104dSAndroid Build Coastguard Worker# - 1     0     0         0         hello.c
532*7304104dSAndroid Build Coastguard Worker# - 2     0     0         0         hello.h
533*7304104dSAndroid Build Coastguard Worker# - 3     1     0         0         stddef.h
534*7304104dSAndroid Build Coastguard Worker# +      [path(line_strp), directory_index(data1)]
535*7304104dSAndroid Build Coastguard Worker# + 0     hello.c (9),  0
536*7304104dSAndroid Build Coastguard Worker# + 1     hello.c (9),  0
537*7304104dSAndroid Build Coastguard Worker# + 2     hello.h (82),  0
538*7304104dSAndroid Build Coastguard Worker# + 3     stddef.h (0),  1
539*7304104dSAndroid Build Coastguard Worker#
540*7304104dSAndroid Build Coastguard Worker#  Directory table:
541*7304104dSAndroid Build Coastguard Worker# - /usr/include
542*7304104dSAndroid Build Coastguard Worker# +      [path(line_strp)]
543*7304104dSAndroid Build Coastguard Worker# + 0     /var/tmp/hello (90)
544*7304104dSAndroid Build Coastguard Worker# + 1     /usr/include (122)
545*7304104dSAndroid Build Coastguard Worker#
546*7304104dSAndroid Build Coastguard Worker#  File name table:
547*7304104dSAndroid Build Coastguard Worker# - Entry Dir   Time      Size      Name
548*7304104dSAndroid Build Coastguard Worker# - 1     0     0         0         world.c
549*7304104dSAndroid Build Coastguard Worker# - 2     0     0         0         hello.h
550*7304104dSAndroid Build Coastguard Worker# - 3     1     0         0         stdlib.h
551*7304104dSAndroid Build Coastguard Worker# +      [path(line_strp), directory_index(data1)]
552*7304104dSAndroid Build Coastguard Worker# + 0     world.c (114),  0
553*7304104dSAndroid Build Coastguard Worker# + 1     world.c (114),  0
554*7304104dSAndroid Build Coastguard Worker# + 2     hello.h (82),  0
555*7304104dSAndroid Build Coastguard Worker# + 3     stdlib.h (105),  1
556*7304104dSAndroid Build Coastguard Worker
557*7304104dSAndroid Build Coastguard Workertestrun_compare ${abs_top_builddir}/src/readelf --debug-dump=line testfile-dwarf-4 << \EOF
558*7304104dSAndroid Build Coastguard Worker
559*7304104dSAndroid Build Coastguard WorkerDWARF section [29] '.debug_line' at offset 0x1734:
560*7304104dSAndroid Build Coastguard Worker
561*7304104dSAndroid Build Coastguard WorkerTable at offset 0:
562*7304104dSAndroid Build Coastguard Worker
563*7304104dSAndroid Build Coastguard Worker Length:                         608
564*7304104dSAndroid Build Coastguard Worker DWARF version:                  4
565*7304104dSAndroid Build Coastguard Worker Prologue length:                119
566*7304104dSAndroid Build Coastguard Worker Address size:                   8
567*7304104dSAndroid Build Coastguard Worker Segment selector size:          0
568*7304104dSAndroid Build Coastguard Worker Min instruction length:         1
569*7304104dSAndroid Build Coastguard Worker Max operations per instruction: 1
570*7304104dSAndroid Build Coastguard Worker Initial value if 'is_stmt':     1
571*7304104dSAndroid Build Coastguard Worker Line base:                      -10
572*7304104dSAndroid Build Coastguard Worker Line range:                     242
573*7304104dSAndroid Build Coastguard Worker Opcode base:                    13
574*7304104dSAndroid Build Coastguard Worker
575*7304104dSAndroid Build Coastguard WorkerOpcodes:
576*7304104dSAndroid Build Coastguard Worker  [ 1]  0 arguments
577*7304104dSAndroid Build Coastguard Worker  [ 2]  1 argument
578*7304104dSAndroid Build Coastguard Worker  [ 3]  1 argument
579*7304104dSAndroid Build Coastguard Worker  [ 4]  1 argument
580*7304104dSAndroid Build Coastguard Worker  [ 5]  1 argument
581*7304104dSAndroid Build Coastguard Worker  [ 6]  0 arguments
582*7304104dSAndroid Build Coastguard Worker  [ 7]  0 arguments
583*7304104dSAndroid Build Coastguard Worker  [ 8]  0 arguments
584*7304104dSAndroid Build Coastguard Worker  [ 9]  1 argument
585*7304104dSAndroid Build Coastguard Worker  [10]  0 arguments
586*7304104dSAndroid Build Coastguard Worker  [11]  0 arguments
587*7304104dSAndroid Build Coastguard Worker  [12]  1 argument
588*7304104dSAndroid Build Coastguard Worker
589*7304104dSAndroid Build Coastguard WorkerDirectory table:
590*7304104dSAndroid Build Coastguard Worker /opt/local/install/gcc/lib/gcc/x86_64-pc-linux-gnu/9.0.0/include
591*7304104dSAndroid Build Coastguard Worker
592*7304104dSAndroid Build Coastguard WorkerFile name table:
593*7304104dSAndroid Build Coastguard Worker Entry Dir   Time      Size      Name
594*7304104dSAndroid Build Coastguard Worker 1     0     0         0         hello.c
595*7304104dSAndroid Build Coastguard Worker 2     0     0         0         hello.h
596*7304104dSAndroid Build Coastguard Worker 3     1     0         0         stddef.h
597*7304104dSAndroid Build Coastguard Worker
598*7304104dSAndroid Build Coastguard WorkerLine number statements:
599*7304104dSAndroid Build Coastguard Worker [    81] extended opcode 2:  set address to 0x400510 <foo>
600*7304104dSAndroid Build Coastguard Worker [    8c] special opcode 43: address+0 = 0x400510 <foo>, line+20 = 21
601*7304104dSAndroid Build Coastguard Worker [    8d] set column to 1
602*7304104dSAndroid Build Coastguard Worker [    8f] extended opcode 2:  set address to 0x400510 <foo>
603*7304104dSAndroid Build Coastguard Worker [    9a] special opcode 24: address+0 = 0x400510 <foo>, line+1 = 22
604*7304104dSAndroid Build Coastguard Worker [    9b] set column to 3
605*7304104dSAndroid Build Coastguard Worker [    9d] extended opcode 2:  set address to 0x400510 <foo>
606*7304104dSAndroid Build Coastguard Worker [    a8] set 'is_stmt' to 0
607*7304104dSAndroid Build Coastguard Worker [    a9] copy
608*7304104dSAndroid Build Coastguard Worker [    aa] set column to 6
609*7304104dSAndroid Build Coastguard Worker [    ac] extended opcode 2:  set address to 0x400514 <foo+0x4>
610*7304104dSAndroid Build Coastguard Worker [    b7] special opcode 26: address+0 = 0x400514 <foo+0x4>, line+3 = 25
611*7304104dSAndroid Build Coastguard Worker [    b8] set column to 34
612*7304104dSAndroid Build Coastguard Worker [    ba] extended opcode 2:  set address to 0x40051a <foo+0xa>
613*7304104dSAndroid Build Coastguard Worker [    c5] set 'is_stmt' to 1
614*7304104dSAndroid Build Coastguard Worker [    c6] copy
615*7304104dSAndroid Build Coastguard Worker [    c7] set column to 3
616*7304104dSAndroid Build Coastguard Worker [    c9] extended opcode 2:  set address to 0x40051a <foo+0xa>
617*7304104dSAndroid Build Coastguard Worker [    d4] set 'is_stmt' to 0
618*7304104dSAndroid Build Coastguard Worker [    d5] copy
619*7304104dSAndroid Build Coastguard Worker [    d6] set column to 34
620*7304104dSAndroid Build Coastguard Worker [    d8] extended opcode 2:  set address to 0x40051e <foo+0xe>
621*7304104dSAndroid Build Coastguard Worker [    e3] special opcode 24: address+0 = 0x40051e <foo+0xe>, line+1 = 26
622*7304104dSAndroid Build Coastguard Worker [    e4] set column to 1
623*7304104dSAndroid Build Coastguard Worker [    e6] extended opcode 2:  set address to 0x400528 <foo+0x18>
624*7304104dSAndroid Build Coastguard Worker [    f1] extended opcode 4:  set discriminator to 1
625*7304104dSAndroid Build Coastguard Worker [    f5] special opcode 22: address+0 = 0x400528 <foo+0x18>, line-1 = 25
626*7304104dSAndroid Build Coastguard Worker [    f6] set column to 18
627*7304104dSAndroid Build Coastguard Worker [    f8] extended opcode 2:  set address to 0x40052b <foo+0x1b>
628*7304104dSAndroid Build Coastguard Worker [   103] set file to 2
629*7304104dSAndroid Build Coastguard Worker [   105] set 'is_stmt' to 1
630*7304104dSAndroid Build Coastguard Worker [   106] advance line by constant -18 to 7
631*7304104dSAndroid Build Coastguard Worker [   108] copy
632*7304104dSAndroid Build Coastguard Worker [   109] set column to 3
633*7304104dSAndroid Build Coastguard Worker [   10b] extended opcode 2:  set address to 0x40052b <foo+0x1b>
634*7304104dSAndroid Build Coastguard Worker [   116] special opcode 25: address+0 = 0x40052b <foo+0x1b>, line+2 = 9
635*7304104dSAndroid Build Coastguard Worker [   117] set column to 3
636*7304104dSAndroid Build Coastguard Worker [   119] extended opcode 2:  set address to 0x40052b <foo+0x1b>
637*7304104dSAndroid Build Coastguard Worker [   124] set 'is_stmt' to 0
638*7304104dSAndroid Build Coastguard Worker [   125] copy
639*7304104dSAndroid Build Coastguard Worker [   126] set column to 6
640*7304104dSAndroid Build Coastguard Worker [   128] extended opcode 2:  set address to 0x40052f <foo+0x1f>
641*7304104dSAndroid Build Coastguard Worker [   133] extended opcode 4:  set discriminator to 0
642*7304104dSAndroid Build Coastguard Worker [   137] set 'is_stmt' to 1
643*7304104dSAndroid Build Coastguard Worker [   138] special opcode 24: address+0 = 0x40052f <foo+0x1f>, line+1 = 10
644*7304104dSAndroid Build Coastguard Worker [   139] set column to 5
645*7304104dSAndroid Build Coastguard Worker [   13b] extended opcode 2:  set address to 0x40052f <foo+0x1f>
646*7304104dSAndroid Build Coastguard Worker [   146] set 'is_stmt' to 0
647*7304104dSAndroid Build Coastguard Worker [   147] copy
648*7304104dSAndroid Build Coastguard Worker [   148] set column to 7
649*7304104dSAndroid Build Coastguard Worker [   14a] extended opcode 2:  set address to 0x400531 <foo+0x21>
650*7304104dSAndroid Build Coastguard Worker [   155] set 'is_stmt' to 1
651*7304104dSAndroid Build Coastguard Worker [   156] special opcode 25: address+0 = 0x400531 <foo+0x21>, line+2 = 12
652*7304104dSAndroid Build Coastguard Worker [   157] set column to 3
653*7304104dSAndroid Build Coastguard Worker [   159] extended opcode 2:  set address to 0x400531 <foo+0x21>
654*7304104dSAndroid Build Coastguard Worker [   164] set file to 1
655*7304104dSAndroid Build Coastguard Worker [   166] special opcode 21: address+0 = 0x400531 <foo+0x21>, line-2 = 10
656*7304104dSAndroid Build Coastguard Worker [   167] set column to 3
657*7304104dSAndroid Build Coastguard Worker [   169] extended opcode 2:  set address to 0x400531 <foo+0x21>
658*7304104dSAndroid Build Coastguard Worker [   174] special opcode 25: address+0 = 0x400531 <foo+0x21>, line+2 = 12
659*7304104dSAndroid Build Coastguard Worker [   175] set column to 3
660*7304104dSAndroid Build Coastguard Worker [   177] extended opcode 2:  set address to 0x400531 <foo+0x21>
661*7304104dSAndroid Build Coastguard Worker [   182] set 'is_stmt' to 0
662*7304104dSAndroid Build Coastguard Worker [   183] copy
663*7304104dSAndroid Build Coastguard Worker [   184] set column to 6
664*7304104dSAndroid Build Coastguard Worker [   186] extended opcode 2:  set address to 0x400535 <foo+0x25>
665*7304104dSAndroid Build Coastguard Worker [   191] set 'is_stmt' to 1
666*7304104dSAndroid Build Coastguard Worker [   192] special opcode 24: address+0 = 0x400535 <foo+0x25>, line+1 = 13
667*7304104dSAndroid Build Coastguard Worker [   193] set column to 5
668*7304104dSAndroid Build Coastguard Worker [   195] extended opcode 2:  set address to 0x400535 <foo+0x25>
669*7304104dSAndroid Build Coastguard Worker [   1a0] set 'is_stmt' to 0
670*7304104dSAndroid Build Coastguard Worker [   1a1] copy
671*7304104dSAndroid Build Coastguard Worker [   1a2] set column to 7
672*7304104dSAndroid Build Coastguard Worker [   1a4] extended opcode 2:  set address to 0x400539 <foo+0x29>
673*7304104dSAndroid Build Coastguard Worker [   1af] set 'is_stmt' to 1
674*7304104dSAndroid Build Coastguard Worker [   1b0] special opcode 25: address+0 = 0x400539 <foo+0x29>, line+2 = 15
675*7304104dSAndroid Build Coastguard Worker [   1b1] set column to 3
676*7304104dSAndroid Build Coastguard Worker [   1b3] extended opcode 2:  set address to 0x400539 <foo+0x29>
677*7304104dSAndroid Build Coastguard Worker [   1be] special opcode 30: address+0 = 0x400539 <foo+0x29>, line+7 = 22
678*7304104dSAndroid Build Coastguard Worker [   1bf] set column to 3
679*7304104dSAndroid Build Coastguard Worker [   1c1] extended opcode 2:  set address to 0x400539 <foo+0x29>
680*7304104dSAndroid Build Coastguard Worker [   1cc] set 'is_stmt' to 0
681*7304104dSAndroid Build Coastguard Worker [   1cd] copy
682*7304104dSAndroid Build Coastguard Worker [   1ce] set column to 6
683*7304104dSAndroid Build Coastguard Worker [   1d0] extended opcode 2:  set address to 0x40053d <foo+0x2d>
684*7304104dSAndroid Build Coastguard Worker [   1db] set 'is_stmt' to 1
685*7304104dSAndroid Build Coastguard Worker [   1dc] special opcode 24: address+0 = 0x40053d <foo+0x2d>, line+1 = 23
686*7304104dSAndroid Build Coastguard Worker [   1dd] set column to 5
687*7304104dSAndroid Build Coastguard Worker [   1df] extended opcode 2:  set address to 0x40053d <foo+0x2d>
688*7304104dSAndroid Build Coastguard Worker [   1ea] set 'is_stmt' to 0
689*7304104dSAndroid Build Coastguard Worker [   1eb] copy
690*7304104dSAndroid Build Coastguard Worker [   1ec] set column to 12
691*7304104dSAndroid Build Coastguard Worker [   1ee] extended opcode 2:  set address to 0x400550 <baz>
692*7304104dSAndroid Build Coastguard Worker [   1f9] set 'is_stmt' to 1
693*7304104dSAndroid Build Coastguard Worker [   1fa] advance line by constant -14 to 9
694*7304104dSAndroid Build Coastguard Worker [   1fc] copy
695*7304104dSAndroid Build Coastguard Worker [   1fd] set column to 1
696*7304104dSAndroid Build Coastguard Worker [   1ff] extended opcode 2:  set address to 0x400550 <baz>
697*7304104dSAndroid Build Coastguard Worker [   20a] special opcode 24: address+0 = 0x400550 <baz>, line+1 = 10
698*7304104dSAndroid Build Coastguard Worker [   20b] set column to 3
699*7304104dSAndroid Build Coastguard Worker [   20d] extended opcode 2:  set address to 0x400550 <baz>
700*7304104dSAndroid Build Coastguard Worker [   218] special opcode 25: address+0 = 0x400550 <baz>, line+2 = 12
701*7304104dSAndroid Build Coastguard Worker [   219] set column to 3
702*7304104dSAndroid Build Coastguard Worker [   21b] extended opcode 2:  set address to 0x400550 <baz>
703*7304104dSAndroid Build Coastguard Worker [   226] set 'is_stmt' to 0
704*7304104dSAndroid Build Coastguard Worker [   227] copy
705*7304104dSAndroid Build Coastguard Worker [   228] set column to 9
706*7304104dSAndroid Build Coastguard Worker [   22a] extended opcode 2:  set address to 0x400556 <baz+0x6>
707*7304104dSAndroid Build Coastguard Worker [   235] special opcode 24: address+0 = 0x400556 <baz+0x6>, line+1 = 13
708*7304104dSAndroid Build Coastguard Worker [   236] set column to 7
709*7304104dSAndroid Build Coastguard Worker [   238] extended opcode 2:  set address to 0x40055f <baz+0xf>
710*7304104dSAndroid Build Coastguard Worker [   243] set 'is_stmt' to 1
711*7304104dSAndroid Build Coastguard Worker [   244] special opcode 25: address+0 = 0x40055f <baz+0xf>, line+2 = 15
712*7304104dSAndroid Build Coastguard Worker [   245] set column to 3
713*7304104dSAndroid Build Coastguard Worker [   247] extended opcode 2:  set address to 0x40055f <baz+0xf>
714*7304104dSAndroid Build Coastguard Worker [   252] set 'is_stmt' to 0
715*7304104dSAndroid Build Coastguard Worker [   253] copy
716*7304104dSAndroid Build Coastguard Worker [   254] set column to 7
717*7304104dSAndroid Build Coastguard Worker [   256] extended opcode 2:  set address to 0x400561
718*7304104dSAndroid Build Coastguard Worker [   261] extended opcode 1:  end of sequence
719*7304104dSAndroid Build Coastguard Worker
720*7304104dSAndroid Build Coastguard WorkerTable at offset 612:
721*7304104dSAndroid Build Coastguard Worker
722*7304104dSAndroid Build Coastguard Worker Length:                         450
723*7304104dSAndroid Build Coastguard Worker DWARF version:                  4
724*7304104dSAndroid Build Coastguard Worker Prologue length:                67
725*7304104dSAndroid Build Coastguard Worker Address size:                   8
726*7304104dSAndroid Build Coastguard Worker Segment selector size:          0
727*7304104dSAndroid Build Coastguard Worker Min instruction length:         1
728*7304104dSAndroid Build Coastguard Worker Max operations per instruction: 1
729*7304104dSAndroid Build Coastguard Worker Initial value if 'is_stmt':     1
730*7304104dSAndroid Build Coastguard Worker Line base:                      -10
731*7304104dSAndroid Build Coastguard Worker Line range:                     242
732*7304104dSAndroid Build Coastguard Worker Opcode base:                    13
733*7304104dSAndroid Build Coastguard Worker
734*7304104dSAndroid Build Coastguard WorkerOpcodes:
735*7304104dSAndroid Build Coastguard Worker  [ 1]  0 arguments
736*7304104dSAndroid Build Coastguard Worker  [ 2]  1 argument
737*7304104dSAndroid Build Coastguard Worker  [ 3]  1 argument
738*7304104dSAndroid Build Coastguard Worker  [ 4]  1 argument
739*7304104dSAndroid Build Coastguard Worker  [ 5]  1 argument
740*7304104dSAndroid Build Coastguard Worker  [ 6]  0 arguments
741*7304104dSAndroid Build Coastguard Worker  [ 7]  0 arguments
742*7304104dSAndroid Build Coastguard Worker  [ 8]  0 arguments
743*7304104dSAndroid Build Coastguard Worker  [ 9]  1 argument
744*7304104dSAndroid Build Coastguard Worker  [10]  0 arguments
745*7304104dSAndroid Build Coastguard Worker  [11]  0 arguments
746*7304104dSAndroid Build Coastguard Worker  [12]  1 argument
747*7304104dSAndroid Build Coastguard Worker
748*7304104dSAndroid Build Coastguard WorkerDirectory table:
749*7304104dSAndroid Build Coastguard Worker /usr/include
750*7304104dSAndroid Build Coastguard Worker
751*7304104dSAndroid Build Coastguard WorkerFile name table:
752*7304104dSAndroid Build Coastguard Worker Entry Dir   Time      Size      Name
753*7304104dSAndroid Build Coastguard Worker 1     0     0         0         world.c
754*7304104dSAndroid Build Coastguard Worker 2     0     0         0         hello.h
755*7304104dSAndroid Build Coastguard Worker 3     1     0         0         stdlib.h
756*7304104dSAndroid Build Coastguard Worker
757*7304104dSAndroid Build Coastguard WorkerLine number statements:
758*7304104dSAndroid Build Coastguard Worker [   2b1] extended opcode 2:  set address to 0x400410 <main>
759*7304104dSAndroid Build Coastguard Worker [   2bc] special opcode 37: address+0 = 0x400410 <main>, line+14 = 15
760*7304104dSAndroid Build Coastguard Worker [   2bd] set column to 1
761*7304104dSAndroid Build Coastguard Worker [   2bf] extended opcode 2:  set address to 0x400410 <main>
762*7304104dSAndroid Build Coastguard Worker [   2ca] special opcode 24: address+0 = 0x400410 <main>, line+1 = 16
763*7304104dSAndroid Build Coastguard Worker [   2cb] set column to 3
764*7304104dSAndroid Build Coastguard Worker [   2cd] extended opcode 2:  set address to 0x400410 <main>
765*7304104dSAndroid Build Coastguard Worker [   2d8] special opcode 24: address+0 = 0x400410 <main>, line+1 = 17
766*7304104dSAndroid Build Coastguard Worker [   2d9] set column to 3
767*7304104dSAndroid Build Coastguard Worker [   2db] extended opcode 2:  set address to 0x400410 <main>
768*7304104dSAndroid Build Coastguard Worker [   2e6] set 'is_stmt' to 0
769*7304104dSAndroid Build Coastguard Worker [   2e7] special opcode 21: address+0 = 0x400410 <main>, line-2 = 15
770*7304104dSAndroid Build Coastguard Worker [   2e8] set column to 1
771*7304104dSAndroid Build Coastguard Worker [   2ea] extended opcode 2:  set address to 0x400419 <main+0x9>
772*7304104dSAndroid Build Coastguard Worker [   2f5] special opcode 25: address+0 = 0x400419 <main+0x9>, line+2 = 17
773*7304104dSAndroid Build Coastguard Worker [   2f6] set column to 6
774*7304104dSAndroid Build Coastguard Worker [   2f8] extended opcode 2:  set address to 0x40041e <main+0xe>
775*7304104dSAndroid Build Coastguard Worker [   303] set 'is_stmt' to 1
776*7304104dSAndroid Build Coastguard Worker [   304] special opcode 24: address+0 = 0x40041e <main+0xe>, line+1 = 18
777*7304104dSAndroid Build Coastguard Worker [   305] set column to 5
778*7304104dSAndroid Build Coastguard Worker [   307] extended opcode 2:  set address to 0x40041e <main+0xe>
779*7304104dSAndroid Build Coastguard Worker [   312] set 'is_stmt' to 0
780*7304104dSAndroid Build Coastguard Worker [   313] copy
781*7304104dSAndroid Build Coastguard Worker [   314] set column to 7
782*7304104dSAndroid Build Coastguard Worker [   316] extended opcode 2:  set address to 0x400421 <main+0x11>
783*7304104dSAndroid Build Coastguard Worker [   321] set 'is_stmt' to 1
784*7304104dSAndroid Build Coastguard Worker [   322] special opcode 27: address+0 = 0x400421 <main+0x11>, line+4 = 22
785*7304104dSAndroid Build Coastguard Worker [   323] set column to 3
786*7304104dSAndroid Build Coastguard Worker [   325] extended opcode 2:  set address to 0x400430 <_start>
787*7304104dSAndroid Build Coastguard Worker [   330] extended opcode 1:  end of sequence
788*7304104dSAndroid Build Coastguard Worker [   333] extended opcode 2:  set address to 0x400570 <calc>
789*7304104dSAndroid Build Coastguard Worker [   33e] special opcode 28: address+0 = 0x400570 <calc>, line+5 = 6
790*7304104dSAndroid Build Coastguard Worker [   33f] set column to 1
791*7304104dSAndroid Build Coastguard Worker [   341] extended opcode 2:  set address to 0x400570 <calc>
792*7304104dSAndroid Build Coastguard Worker [   34c] special opcode 24: address+0 = 0x400570 <calc>, line+1 = 7
793*7304104dSAndroid Build Coastguard Worker [   34d] set column to 3
794*7304104dSAndroid Build Coastguard Worker [   34f] extended opcode 2:  set address to 0x400570 <calc>
795*7304104dSAndroid Build Coastguard Worker [   35a] set 'is_stmt' to 0
796*7304104dSAndroid Build Coastguard Worker [   35b] copy
797*7304104dSAndroid Build Coastguard Worker [   35c] set column to 6
798*7304104dSAndroid Build Coastguard Worker [   35e] extended opcode 2:  set address to 0x400575 <calc+0x5>
799*7304104dSAndroid Build Coastguard Worker [   369] extended opcode 4:  set discriminator to 1
800*7304104dSAndroid Build Coastguard Worker [   36d] copy
801*7304104dSAndroid Build Coastguard Worker [   36e] set column to 24
802*7304104dSAndroid Build Coastguard Worker [   370] extended opcode 2:  set address to 0x400578 <calc+0x8>
803*7304104dSAndroid Build Coastguard Worker [   37b] copy
804*7304104dSAndroid Build Coastguard Worker [   37c] set column to 17
805*7304104dSAndroid Build Coastguard Worker [   37e] extended opcode 2:  set address to 0x40057d <calc+0xd>
806*7304104dSAndroid Build Coastguard Worker [   389] extended opcode 4:  set discriminator to 0
807*7304104dSAndroid Build Coastguard Worker [   38d] set 'is_stmt' to 1
808*7304104dSAndroid Build Coastguard Worker [   38e] special opcode 26: address+0 = 0x40057d <calc+0xd>, line+3 = 10
809*7304104dSAndroid Build Coastguard Worker [   38f] set column to 3
810*7304104dSAndroid Build Coastguard Worker [   391] extended opcode 2:  set address to 0x40057d <calc+0xd>
811*7304104dSAndroid Build Coastguard Worker [   39c] set 'is_stmt' to 0
812*7304104dSAndroid Build Coastguard Worker [   39d] copy
813*7304104dSAndroid Build Coastguard Worker [   39e] set column to 10
814*7304104dSAndroid Build Coastguard Worker [   3a0] extended opcode 2:  set address to 0x400583 <calc+0x13>
815*7304104dSAndroid Build Coastguard Worker [   3ab] set file to 2
816*7304104dSAndroid Build Coastguard Worker [   3ad] copy
817*7304104dSAndroid Build Coastguard Worker [   3ae] set column to 7
818*7304104dSAndroid Build Coastguard Worker [   3b0] extended opcode 2:  set address to 0x400585 <calc+0x15>
819*7304104dSAndroid Build Coastguard Worker [   3bb] set file to 1
820*7304104dSAndroid Build Coastguard Worker [   3bd] copy
821*7304104dSAndroid Build Coastguard Worker [   3be] set column to 10
822*7304104dSAndroid Build Coastguard Worker [   3c0] extended opcode 2:  set address to 0x400588 <calc+0x18>
823*7304104dSAndroid Build Coastguard Worker [   3cb] set file to 2
824*7304104dSAndroid Build Coastguard Worker [   3cd] set 'is_stmt' to 1
825*7304104dSAndroid Build Coastguard Worker [   3ce] special opcode 20: address+0 = 0x400588 <calc+0x18>, line-3 = 7
826*7304104dSAndroid Build Coastguard Worker [   3cf] set column to 3
827*7304104dSAndroid Build Coastguard Worker [   3d1] extended opcode 2:  set address to 0x400588 <calc+0x18>
828*7304104dSAndroid Build Coastguard Worker [   3dc] special opcode 25: address+0 = 0x400588 <calc+0x18>, line+2 = 9
829*7304104dSAndroid Build Coastguard Worker [   3dd] set column to 3
830*7304104dSAndroid Build Coastguard Worker [   3df] extended opcode 2:  set address to 0x400588 <calc+0x18>
831*7304104dSAndroid Build Coastguard Worker [   3ea] set 'is_stmt' to 0
832*7304104dSAndroid Build Coastguard Worker [   3eb] special opcode 24: address+0 = 0x400588 <calc+0x18>, line+1 = 10
833*7304104dSAndroid Build Coastguard Worker [   3ec] set column to 7
834*7304104dSAndroid Build Coastguard Worker [   3ee] extended opcode 2:  set address to 0x40058f <calc+0x1f>
835*7304104dSAndroid Build Coastguard Worker [   3f9] set 'is_stmt' to 1
836*7304104dSAndroid Build Coastguard Worker [   3fa] special opcode 25: address+0 = 0x40058f <calc+0x1f>, line+2 = 12
837*7304104dSAndroid Build Coastguard Worker [   3fb] set column to 3
838*7304104dSAndroid Build Coastguard Worker [   3fd] extended opcode 2:  set address to 0x40058f <calc+0x1f>
839*7304104dSAndroid Build Coastguard Worker [   408] set 'is_stmt' to 0
840*7304104dSAndroid Build Coastguard Worker [   409] copy
841*7304104dSAndroid Build Coastguard Worker [   40a] set column to 10
842*7304104dSAndroid Build Coastguard Worker [   40c] extended opcode 2:  set address to 0x400598 <calc+0x28>
843*7304104dSAndroid Build Coastguard Worker [   417] set file to 1
844*7304104dSAndroid Build Coastguard Worker [   419] special opcode 22: address+0 = 0x400598 <calc+0x28>, line-1 = 11
845*7304104dSAndroid Build Coastguard Worker [   41a] set column to 1
846*7304104dSAndroid Build Coastguard Worker [   41c] extended opcode 2:  set address to 0x40059b
847*7304104dSAndroid Build Coastguard Worker [   427] extended opcode 1:  end of sequence
848*7304104dSAndroid Build Coastguard WorkerEOF
849*7304104dSAndroid Build Coastguard Worker
850*7304104dSAndroid Build Coastguard Workertestrun_compare ${abs_top_builddir}/src/readelf --debug-dump=line testfile-dwarf-5 << \EOF
851*7304104dSAndroid Build Coastguard Worker
852*7304104dSAndroid Build Coastguard WorkerDWARF section [29] '.debug_line' at offset 0x171f:
853*7304104dSAndroid Build Coastguard Worker
854*7304104dSAndroid Build Coastguard WorkerTable at offset 0:
855*7304104dSAndroid Build Coastguard Worker
856*7304104dSAndroid Build Coastguard Worker Length:                         547
857*7304104dSAndroid Build Coastguard Worker DWARF version:                  5
858*7304104dSAndroid Build Coastguard Worker Prologue length:                56
859*7304104dSAndroid Build Coastguard Worker Address size:                   8
860*7304104dSAndroid Build Coastguard Worker Segment selector size:          0
861*7304104dSAndroid Build Coastguard Worker Min instruction length:         1
862*7304104dSAndroid Build Coastguard Worker Max operations per instruction: 1
863*7304104dSAndroid Build Coastguard Worker Initial value if 'is_stmt':     1
864*7304104dSAndroid Build Coastguard Worker Line base:                      -10
865*7304104dSAndroid Build Coastguard Worker Line range:                     242
866*7304104dSAndroid Build Coastguard Worker Opcode base:                    13
867*7304104dSAndroid Build Coastguard Worker
868*7304104dSAndroid Build Coastguard WorkerOpcodes:
869*7304104dSAndroid Build Coastguard Worker  [ 1]  0 arguments
870*7304104dSAndroid Build Coastguard Worker  [ 2]  1 argument
871*7304104dSAndroid Build Coastguard Worker  [ 3]  1 argument
872*7304104dSAndroid Build Coastguard Worker  [ 4]  1 argument
873*7304104dSAndroid Build Coastguard Worker  [ 5]  1 argument
874*7304104dSAndroid Build Coastguard Worker  [ 6]  0 arguments
875*7304104dSAndroid Build Coastguard Worker  [ 7]  0 arguments
876*7304104dSAndroid Build Coastguard Worker  [ 8]  0 arguments
877*7304104dSAndroid Build Coastguard Worker  [ 9]  1 argument
878*7304104dSAndroid Build Coastguard Worker  [10]  0 arguments
879*7304104dSAndroid Build Coastguard Worker  [11]  0 arguments
880*7304104dSAndroid Build Coastguard Worker  [12]  1 argument
881*7304104dSAndroid Build Coastguard Worker
882*7304104dSAndroid Build Coastguard WorkerDirectory table:
883*7304104dSAndroid Build Coastguard Worker      [path(line_strp)]
884*7304104dSAndroid Build Coastguard Worker 0     /var/tmp/hello (90)
885*7304104dSAndroid Build Coastguard Worker 1     /opt/local/install/gcc/lib/gcc/x86_64-pc-linux-gnu/9.0.0/include (17)
886*7304104dSAndroid Build Coastguard Worker
887*7304104dSAndroid Build Coastguard WorkerFile name table:
888*7304104dSAndroid Build Coastguard Worker      [path(line_strp), directory_index(data1)]
889*7304104dSAndroid Build Coastguard Worker 0     hello.c (9),  0
890*7304104dSAndroid Build Coastguard Worker 1     hello.c (9),  0
891*7304104dSAndroid Build Coastguard Worker 2     hello.h (82),  0
892*7304104dSAndroid Build Coastguard Worker 3     stddef.h (0),  1
893*7304104dSAndroid Build Coastguard Worker
894*7304104dSAndroid Build Coastguard WorkerLine number statements:
895*7304104dSAndroid Build Coastguard Worker [    44] extended opcode 2:  set address to 0x400510 <foo>
896*7304104dSAndroid Build Coastguard Worker [    4f] special opcode 43: address+0 = 0x400510 <foo>, line+20 = 21
897*7304104dSAndroid Build Coastguard Worker [    50] set column to 1
898*7304104dSAndroid Build Coastguard Worker [    52] extended opcode 2:  set address to 0x400510 <foo>
899*7304104dSAndroid Build Coastguard Worker [    5d] special opcode 24: address+0 = 0x400510 <foo>, line+1 = 22
900*7304104dSAndroid Build Coastguard Worker [    5e] set column to 3
901*7304104dSAndroid Build Coastguard Worker [    60] extended opcode 2:  set address to 0x400510 <foo>
902*7304104dSAndroid Build Coastguard Worker [    6b] set 'is_stmt' to 0
903*7304104dSAndroid Build Coastguard Worker [    6c] copy
904*7304104dSAndroid Build Coastguard Worker [    6d] set column to 6
905*7304104dSAndroid Build Coastguard Worker [    6f] extended opcode 2:  set address to 0x400514 <foo+0x4>
906*7304104dSAndroid Build Coastguard Worker [    7a] special opcode 26: address+0 = 0x400514 <foo+0x4>, line+3 = 25
907*7304104dSAndroid Build Coastguard Worker [    7b] set column to 34
908*7304104dSAndroid Build Coastguard Worker [    7d] extended opcode 2:  set address to 0x40051a <foo+0xa>
909*7304104dSAndroid Build Coastguard Worker [    88] set 'is_stmt' to 1
910*7304104dSAndroid Build Coastguard Worker [    89] copy
911*7304104dSAndroid Build Coastguard Worker [    8a] set column to 3
912*7304104dSAndroid Build Coastguard Worker [    8c] extended opcode 2:  set address to 0x40051a <foo+0xa>
913*7304104dSAndroid Build Coastguard Worker [    97] set 'is_stmt' to 0
914*7304104dSAndroid Build Coastguard Worker [    98] copy
915*7304104dSAndroid Build Coastguard Worker [    99] set column to 34
916*7304104dSAndroid Build Coastguard Worker [    9b] extended opcode 2:  set address to 0x40051e <foo+0xe>
917*7304104dSAndroid Build Coastguard Worker [    a6] special opcode 24: address+0 = 0x40051e <foo+0xe>, line+1 = 26
918*7304104dSAndroid Build Coastguard Worker [    a7] set column to 1
919*7304104dSAndroid Build Coastguard Worker [    a9] extended opcode 2:  set address to 0x400528 <foo+0x18>
920*7304104dSAndroid Build Coastguard Worker [    b4] extended opcode 4:  set discriminator to 1
921*7304104dSAndroid Build Coastguard Worker [    b8] special opcode 22: address+0 = 0x400528 <foo+0x18>, line-1 = 25
922*7304104dSAndroid Build Coastguard Worker [    b9] set column to 18
923*7304104dSAndroid Build Coastguard Worker [    bb] extended opcode 2:  set address to 0x40052b <foo+0x1b>
924*7304104dSAndroid Build Coastguard Worker [    c6] set file to 2
925*7304104dSAndroid Build Coastguard Worker [    c8] set 'is_stmt' to 1
926*7304104dSAndroid Build Coastguard Worker [    c9] advance line by constant -18 to 7
927*7304104dSAndroid Build Coastguard Worker [    cb] copy
928*7304104dSAndroid Build Coastguard Worker [    cc] set column to 3
929*7304104dSAndroid Build Coastguard Worker [    ce] extended opcode 2:  set address to 0x40052b <foo+0x1b>
930*7304104dSAndroid Build Coastguard Worker [    d9] special opcode 25: address+0 = 0x40052b <foo+0x1b>, line+2 = 9
931*7304104dSAndroid Build Coastguard Worker [    da] set column to 3
932*7304104dSAndroid Build Coastguard Worker [    dc] extended opcode 2:  set address to 0x40052b <foo+0x1b>
933*7304104dSAndroid Build Coastguard Worker [    e7] set 'is_stmt' to 0
934*7304104dSAndroid Build Coastguard Worker [    e8] copy
935*7304104dSAndroid Build Coastguard Worker [    e9] set column to 6
936*7304104dSAndroid Build Coastguard Worker [    eb] extended opcode 2:  set address to 0x40052f <foo+0x1f>
937*7304104dSAndroid Build Coastguard Worker [    f6] extended opcode 4:  set discriminator to 0
938*7304104dSAndroid Build Coastguard Worker [    fa] set 'is_stmt' to 1
939*7304104dSAndroid Build Coastguard Worker [    fb] special opcode 24: address+0 = 0x40052f <foo+0x1f>, line+1 = 10
940*7304104dSAndroid Build Coastguard Worker [    fc] set column to 5
941*7304104dSAndroid Build Coastguard Worker [    fe] extended opcode 2:  set address to 0x40052f <foo+0x1f>
942*7304104dSAndroid Build Coastguard Worker [   109] set 'is_stmt' to 0
943*7304104dSAndroid Build Coastguard Worker [   10a] copy
944*7304104dSAndroid Build Coastguard Worker [   10b] set column to 7
945*7304104dSAndroid Build Coastguard Worker [   10d] extended opcode 2:  set address to 0x400531 <foo+0x21>
946*7304104dSAndroid Build Coastguard Worker [   118] set 'is_stmt' to 1
947*7304104dSAndroid Build Coastguard Worker [   119] special opcode 25: address+0 = 0x400531 <foo+0x21>, line+2 = 12
948*7304104dSAndroid Build Coastguard Worker [   11a] set column to 3
949*7304104dSAndroid Build Coastguard Worker [   11c] extended opcode 2:  set address to 0x400531 <foo+0x21>
950*7304104dSAndroid Build Coastguard Worker [   127] set file to 1
951*7304104dSAndroid Build Coastguard Worker [   129] special opcode 21: address+0 = 0x400531 <foo+0x21>, line-2 = 10
952*7304104dSAndroid Build Coastguard Worker [   12a] set column to 3
953*7304104dSAndroid Build Coastguard Worker [   12c] extended opcode 2:  set address to 0x400531 <foo+0x21>
954*7304104dSAndroid Build Coastguard Worker [   137] special opcode 25: address+0 = 0x400531 <foo+0x21>, line+2 = 12
955*7304104dSAndroid Build Coastguard Worker [   138] set column to 3
956*7304104dSAndroid Build Coastguard Worker [   13a] extended opcode 2:  set address to 0x400531 <foo+0x21>
957*7304104dSAndroid Build Coastguard Worker [   145] set 'is_stmt' to 0
958*7304104dSAndroid Build Coastguard Worker [   146] copy
959*7304104dSAndroid Build Coastguard Worker [   147] set column to 6
960*7304104dSAndroid Build Coastguard Worker [   149] extended opcode 2:  set address to 0x400535 <foo+0x25>
961*7304104dSAndroid Build Coastguard Worker [   154] set 'is_stmt' to 1
962*7304104dSAndroid Build Coastguard Worker [   155] special opcode 24: address+0 = 0x400535 <foo+0x25>, line+1 = 13
963*7304104dSAndroid Build Coastguard Worker [   156] set column to 5
964*7304104dSAndroid Build Coastguard Worker [   158] extended opcode 2:  set address to 0x400535 <foo+0x25>
965*7304104dSAndroid Build Coastguard Worker [   163] set 'is_stmt' to 0
966*7304104dSAndroid Build Coastguard Worker [   164] copy
967*7304104dSAndroid Build Coastguard Worker [   165] set column to 7
968*7304104dSAndroid Build Coastguard Worker [   167] extended opcode 2:  set address to 0x400539 <foo+0x29>
969*7304104dSAndroid Build Coastguard Worker [   172] set 'is_stmt' to 1
970*7304104dSAndroid Build Coastguard Worker [   173] special opcode 25: address+0 = 0x400539 <foo+0x29>, line+2 = 15
971*7304104dSAndroid Build Coastguard Worker [   174] set column to 3
972*7304104dSAndroid Build Coastguard Worker [   176] extended opcode 2:  set address to 0x400539 <foo+0x29>
973*7304104dSAndroid Build Coastguard Worker [   181] special opcode 30: address+0 = 0x400539 <foo+0x29>, line+7 = 22
974*7304104dSAndroid Build Coastguard Worker [   182] set column to 3
975*7304104dSAndroid Build Coastguard Worker [   184] extended opcode 2:  set address to 0x400539 <foo+0x29>
976*7304104dSAndroid Build Coastguard Worker [   18f] set 'is_stmt' to 0
977*7304104dSAndroid Build Coastguard Worker [   190] copy
978*7304104dSAndroid Build Coastguard Worker [   191] set column to 6
979*7304104dSAndroid Build Coastguard Worker [   193] extended opcode 2:  set address to 0x40053d <foo+0x2d>
980*7304104dSAndroid Build Coastguard Worker [   19e] set 'is_stmt' to 1
981*7304104dSAndroid Build Coastguard Worker [   19f] special opcode 24: address+0 = 0x40053d <foo+0x2d>, line+1 = 23
982*7304104dSAndroid Build Coastguard Worker [   1a0] set column to 5
983*7304104dSAndroid Build Coastguard Worker [   1a2] extended opcode 2:  set address to 0x40053d <foo+0x2d>
984*7304104dSAndroid Build Coastguard Worker [   1ad] set 'is_stmt' to 0
985*7304104dSAndroid Build Coastguard Worker [   1ae] copy
986*7304104dSAndroid Build Coastguard Worker [   1af] set column to 12
987*7304104dSAndroid Build Coastguard Worker [   1b1] extended opcode 2:  set address to 0x400550 <baz>
988*7304104dSAndroid Build Coastguard Worker [   1bc] set 'is_stmt' to 1
989*7304104dSAndroid Build Coastguard Worker [   1bd] advance line by constant -14 to 9
990*7304104dSAndroid Build Coastguard Worker [   1bf] copy
991*7304104dSAndroid Build Coastguard Worker [   1c0] set column to 1
992*7304104dSAndroid Build Coastguard Worker [   1c2] extended opcode 2:  set address to 0x400550 <baz>
993*7304104dSAndroid Build Coastguard Worker [   1cd] special opcode 24: address+0 = 0x400550 <baz>, line+1 = 10
994*7304104dSAndroid Build Coastguard Worker [   1ce] set column to 3
995*7304104dSAndroid Build Coastguard Worker [   1d0] extended opcode 2:  set address to 0x400550 <baz>
996*7304104dSAndroid Build Coastguard Worker [   1db] special opcode 25: address+0 = 0x400550 <baz>, line+2 = 12
997*7304104dSAndroid Build Coastguard Worker [   1dc] set column to 3
998*7304104dSAndroid Build Coastguard Worker [   1de] extended opcode 2:  set address to 0x400550 <baz>
999*7304104dSAndroid Build Coastguard Worker [   1e9] set 'is_stmt' to 0
1000*7304104dSAndroid Build Coastguard Worker [   1ea] copy
1001*7304104dSAndroid Build Coastguard Worker [   1eb] set column to 9
1002*7304104dSAndroid Build Coastguard Worker [   1ed] extended opcode 2:  set address to 0x400556 <baz+0x6>
1003*7304104dSAndroid Build Coastguard Worker [   1f8] special opcode 24: address+0 = 0x400556 <baz+0x6>, line+1 = 13
1004*7304104dSAndroid Build Coastguard Worker [   1f9] set column to 7
1005*7304104dSAndroid Build Coastguard Worker [   1fb] extended opcode 2:  set address to 0x40055f <baz+0xf>
1006*7304104dSAndroid Build Coastguard Worker [   206] set 'is_stmt' to 1
1007*7304104dSAndroid Build Coastguard Worker [   207] special opcode 25: address+0 = 0x40055f <baz+0xf>, line+2 = 15
1008*7304104dSAndroid Build Coastguard Worker [   208] set column to 3
1009*7304104dSAndroid Build Coastguard Worker [   20a] extended opcode 2:  set address to 0x40055f <baz+0xf>
1010*7304104dSAndroid Build Coastguard Worker [   215] set 'is_stmt' to 0
1011*7304104dSAndroid Build Coastguard Worker [   216] copy
1012*7304104dSAndroid Build Coastguard Worker [   217] set column to 7
1013*7304104dSAndroid Build Coastguard Worker [   219] extended opcode 2:  set address to 0x400561
1014*7304104dSAndroid Build Coastguard Worker [   224] extended opcode 1:  end of sequence
1015*7304104dSAndroid Build Coastguard Worker
1016*7304104dSAndroid Build Coastguard WorkerTable at offset 551:
1017*7304104dSAndroid Build Coastguard Worker
1018*7304104dSAndroid Build Coastguard Worker Length:                         441
1019*7304104dSAndroid Build Coastguard Worker DWARF version:                  5
1020*7304104dSAndroid Build Coastguard Worker Prologue length:                56
1021*7304104dSAndroid Build Coastguard Worker Address size:                   8
1022*7304104dSAndroid Build Coastguard Worker Segment selector size:          0
1023*7304104dSAndroid Build Coastguard Worker Min instruction length:         1
1024*7304104dSAndroid Build Coastguard Worker Max operations per instruction: 1
1025*7304104dSAndroid Build Coastguard Worker Initial value if 'is_stmt':     1
1026*7304104dSAndroid Build Coastguard Worker Line base:                      -10
1027*7304104dSAndroid Build Coastguard Worker Line range:                     242
1028*7304104dSAndroid Build Coastguard Worker Opcode base:                    13
1029*7304104dSAndroid Build Coastguard Worker
1030*7304104dSAndroid Build Coastguard WorkerOpcodes:
1031*7304104dSAndroid Build Coastguard Worker  [ 1]  0 arguments
1032*7304104dSAndroid Build Coastguard Worker  [ 2]  1 argument
1033*7304104dSAndroid Build Coastguard Worker  [ 3]  1 argument
1034*7304104dSAndroid Build Coastguard Worker  [ 4]  1 argument
1035*7304104dSAndroid Build Coastguard Worker  [ 5]  1 argument
1036*7304104dSAndroid Build Coastguard Worker  [ 6]  0 arguments
1037*7304104dSAndroid Build Coastguard Worker  [ 7]  0 arguments
1038*7304104dSAndroid Build Coastguard Worker  [ 8]  0 arguments
1039*7304104dSAndroid Build Coastguard Worker  [ 9]  1 argument
1040*7304104dSAndroid Build Coastguard Worker  [10]  0 arguments
1041*7304104dSAndroid Build Coastguard Worker  [11]  0 arguments
1042*7304104dSAndroid Build Coastguard Worker  [12]  1 argument
1043*7304104dSAndroid Build Coastguard Worker
1044*7304104dSAndroid Build Coastguard WorkerDirectory table:
1045*7304104dSAndroid Build Coastguard Worker      [path(line_strp)]
1046*7304104dSAndroid Build Coastguard Worker 0     /var/tmp/hello (90)
1047*7304104dSAndroid Build Coastguard Worker 1     /usr/include (122)
1048*7304104dSAndroid Build Coastguard Worker
1049*7304104dSAndroid Build Coastguard WorkerFile name table:
1050*7304104dSAndroid Build Coastguard Worker      [path(line_strp), directory_index(data1)]
1051*7304104dSAndroid Build Coastguard Worker 0     world.c (114),  0
1052*7304104dSAndroid Build Coastguard Worker 1     world.c (114),  0
1053*7304104dSAndroid Build Coastguard Worker 2     hello.h (82),  0
1054*7304104dSAndroid Build Coastguard Worker 3     stdlib.h (105),  1
1055*7304104dSAndroid Build Coastguard Worker
1056*7304104dSAndroid Build Coastguard WorkerLine number statements:
1057*7304104dSAndroid Build Coastguard Worker [   26b] extended opcode 2:  set address to 0x400410 <main>
1058*7304104dSAndroid Build Coastguard Worker [   276] special opcode 37: address+0 = 0x400410 <main>, line+14 = 15
1059*7304104dSAndroid Build Coastguard Worker [   277] set column to 1
1060*7304104dSAndroid Build Coastguard Worker [   279] extended opcode 2:  set address to 0x400410 <main>
1061*7304104dSAndroid Build Coastguard Worker [   284] special opcode 24: address+0 = 0x400410 <main>, line+1 = 16
1062*7304104dSAndroid Build Coastguard Worker [   285] set column to 3
1063*7304104dSAndroid Build Coastguard Worker [   287] extended opcode 2:  set address to 0x400410 <main>
1064*7304104dSAndroid Build Coastguard Worker [   292] special opcode 24: address+0 = 0x400410 <main>, line+1 = 17
1065*7304104dSAndroid Build Coastguard Worker [   293] set column to 3
1066*7304104dSAndroid Build Coastguard Worker [   295] extended opcode 2:  set address to 0x400410 <main>
1067*7304104dSAndroid Build Coastguard Worker [   2a0] set 'is_stmt' to 0
1068*7304104dSAndroid Build Coastguard Worker [   2a1] special opcode 21: address+0 = 0x400410 <main>, line-2 = 15
1069*7304104dSAndroid Build Coastguard Worker [   2a2] set column to 1
1070*7304104dSAndroid Build Coastguard Worker [   2a4] extended opcode 2:  set address to 0x400419 <main+0x9>
1071*7304104dSAndroid Build Coastguard Worker [   2af] special opcode 25: address+0 = 0x400419 <main+0x9>, line+2 = 17
1072*7304104dSAndroid Build Coastguard Worker [   2b0] set column to 6
1073*7304104dSAndroid Build Coastguard Worker [   2b2] extended opcode 2:  set address to 0x40041e <main+0xe>
1074*7304104dSAndroid Build Coastguard Worker [   2bd] set 'is_stmt' to 1
1075*7304104dSAndroid Build Coastguard Worker [   2be] special opcode 24: address+0 = 0x40041e <main+0xe>, line+1 = 18
1076*7304104dSAndroid Build Coastguard Worker [   2bf] set column to 5
1077*7304104dSAndroid Build Coastguard Worker [   2c1] extended opcode 2:  set address to 0x40041e <main+0xe>
1078*7304104dSAndroid Build Coastguard Worker [   2cc] set 'is_stmt' to 0
1079*7304104dSAndroid Build Coastguard Worker [   2cd] copy
1080*7304104dSAndroid Build Coastguard Worker [   2ce] set column to 7
1081*7304104dSAndroid Build Coastguard Worker [   2d0] extended opcode 2:  set address to 0x400421 <main+0x11>
1082*7304104dSAndroid Build Coastguard Worker [   2db] set 'is_stmt' to 1
1083*7304104dSAndroid Build Coastguard Worker [   2dc] special opcode 27: address+0 = 0x400421 <main+0x11>, line+4 = 22
1084*7304104dSAndroid Build Coastguard Worker [   2dd] set column to 3
1085*7304104dSAndroid Build Coastguard Worker [   2df] extended opcode 2:  set address to 0x400430 <_start>
1086*7304104dSAndroid Build Coastguard Worker [   2ea] extended opcode 1:  end of sequence
1087*7304104dSAndroid Build Coastguard Worker [   2ed] extended opcode 2:  set address to 0x400570 <calc>
1088*7304104dSAndroid Build Coastguard Worker [   2f8] special opcode 28: address+0 = 0x400570 <calc>, line+5 = 6
1089*7304104dSAndroid Build Coastguard Worker [   2f9] set column to 1
1090*7304104dSAndroid Build Coastguard Worker [   2fb] extended opcode 2:  set address to 0x400570 <calc>
1091*7304104dSAndroid Build Coastguard Worker [   306] special opcode 24: address+0 = 0x400570 <calc>, line+1 = 7
1092*7304104dSAndroid Build Coastguard Worker [   307] set column to 3
1093*7304104dSAndroid Build Coastguard Worker [   309] extended opcode 2:  set address to 0x400570 <calc>
1094*7304104dSAndroid Build Coastguard Worker [   314] set 'is_stmt' to 0
1095*7304104dSAndroid Build Coastguard Worker [   315] copy
1096*7304104dSAndroid Build Coastguard Worker [   316] set column to 6
1097*7304104dSAndroid Build Coastguard Worker [   318] extended opcode 2:  set address to 0x400575 <calc+0x5>
1098*7304104dSAndroid Build Coastguard Worker [   323] extended opcode 4:  set discriminator to 1
1099*7304104dSAndroid Build Coastguard Worker [   327] copy
1100*7304104dSAndroid Build Coastguard Worker [   328] set column to 24
1101*7304104dSAndroid Build Coastguard Worker [   32a] extended opcode 2:  set address to 0x400578 <calc+0x8>
1102*7304104dSAndroid Build Coastguard Worker [   335] copy
1103*7304104dSAndroid Build Coastguard Worker [   336] set column to 17
1104*7304104dSAndroid Build Coastguard Worker [   338] extended opcode 2:  set address to 0x40057d <calc+0xd>
1105*7304104dSAndroid Build Coastguard Worker [   343] extended opcode 4:  set discriminator to 0
1106*7304104dSAndroid Build Coastguard Worker [   347] set 'is_stmt' to 1
1107*7304104dSAndroid Build Coastguard Worker [   348] special opcode 26: address+0 = 0x40057d <calc+0xd>, line+3 = 10
1108*7304104dSAndroid Build Coastguard Worker [   349] set column to 3
1109*7304104dSAndroid Build Coastguard Worker [   34b] extended opcode 2:  set address to 0x40057d <calc+0xd>
1110*7304104dSAndroid Build Coastguard Worker [   356] set 'is_stmt' to 0
1111*7304104dSAndroid Build Coastguard Worker [   357] copy
1112*7304104dSAndroid Build Coastguard Worker [   358] set column to 10
1113*7304104dSAndroid Build Coastguard Worker [   35a] extended opcode 2:  set address to 0x400583 <calc+0x13>
1114*7304104dSAndroid Build Coastguard Worker [   365] set file to 2
1115*7304104dSAndroid Build Coastguard Worker [   367] copy
1116*7304104dSAndroid Build Coastguard Worker [   368] set column to 7
1117*7304104dSAndroid Build Coastguard Worker [   36a] extended opcode 2:  set address to 0x400585 <calc+0x15>
1118*7304104dSAndroid Build Coastguard Worker [   375] set file to 1
1119*7304104dSAndroid Build Coastguard Worker [   377] copy
1120*7304104dSAndroid Build Coastguard Worker [   378] set column to 10
1121*7304104dSAndroid Build Coastguard Worker [   37a] extended opcode 2:  set address to 0x400588 <calc+0x18>
1122*7304104dSAndroid Build Coastguard Worker [   385] set file to 2
1123*7304104dSAndroid Build Coastguard Worker [   387] set 'is_stmt' to 1
1124*7304104dSAndroid Build Coastguard Worker [   388] special opcode 20: address+0 = 0x400588 <calc+0x18>, line-3 = 7
1125*7304104dSAndroid Build Coastguard Worker [   389] set column to 3
1126*7304104dSAndroid Build Coastguard Worker [   38b] extended opcode 2:  set address to 0x400588 <calc+0x18>
1127*7304104dSAndroid Build Coastguard Worker [   396] special opcode 25: address+0 = 0x400588 <calc+0x18>, line+2 = 9
1128*7304104dSAndroid Build Coastguard Worker [   397] set column to 3
1129*7304104dSAndroid Build Coastguard Worker [   399] extended opcode 2:  set address to 0x400588 <calc+0x18>
1130*7304104dSAndroid Build Coastguard Worker [   3a4] set 'is_stmt' to 0
1131*7304104dSAndroid Build Coastguard Worker [   3a5] special opcode 24: address+0 = 0x400588 <calc+0x18>, line+1 = 10
1132*7304104dSAndroid Build Coastguard Worker [   3a6] set column to 7
1133*7304104dSAndroid Build Coastguard Worker [   3a8] extended opcode 2:  set address to 0x40058f <calc+0x1f>
1134*7304104dSAndroid Build Coastguard Worker [   3b3] set 'is_stmt' to 1
1135*7304104dSAndroid Build Coastguard Worker [   3b4] special opcode 25: address+0 = 0x40058f <calc+0x1f>, line+2 = 12
1136*7304104dSAndroid Build Coastguard Worker [   3b5] set column to 3
1137*7304104dSAndroid Build Coastguard Worker [   3b7] extended opcode 2:  set address to 0x40058f <calc+0x1f>
1138*7304104dSAndroid Build Coastguard Worker [   3c2] set 'is_stmt' to 0
1139*7304104dSAndroid Build Coastguard Worker [   3c3] copy
1140*7304104dSAndroid Build Coastguard Worker [   3c4] set column to 10
1141*7304104dSAndroid Build Coastguard Worker [   3c6] extended opcode 2:  set address to 0x400598 <calc+0x28>
1142*7304104dSAndroid Build Coastguard Worker [   3d1] set file to 1
1143*7304104dSAndroid Build Coastguard Worker [   3d3] special opcode 22: address+0 = 0x400598 <calc+0x28>, line-1 = 11
1144*7304104dSAndroid Build Coastguard Worker [   3d4] set column to 1
1145*7304104dSAndroid Build Coastguard Worker [   3d6] extended opcode 2:  set address to 0x40059b
1146*7304104dSAndroid Build Coastguard Worker [   3e1] extended opcode 1:  end of sequence
1147*7304104dSAndroid Build Coastguard WorkerEOF
1148*7304104dSAndroid Build Coastguard Worker
1149*7304104dSAndroid Build Coastguard Workerexit 0
1150