OSDN Git Service

🪓GengKapak: Bump to 20230426 build
[gengkapak/clang-GengKapak.git] / share / man / man1 / arm-linux-gnueabi-readelf.1
1 .\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42)
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sp \" Vertical space (when we can't use .PP)
6 .if t .sp .5v
7 .if n .sp
8 ..
9 .de Vb \" Begin verbatim text
10 .ft CW
11 .nf
12 .ne \\$1
13 ..
14 .de Ve \" End verbatim text
15 .ft R
16 .fi
17 ..
18 .\" Set up some character translations and predefined strings.  \*(-- will
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
20 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
21 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
22 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
23 .\" nothing in troff, for use with C<>.
24 .tr \(*W-
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
26 .ie n \{\
27 .    ds -- \(*W-
28 .    ds PI pi
29 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
30 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
31 .    ds L" ""
32 .    ds R" ""
33 .    ds C` ""
34 .    ds C' ""
35 'br\}
36 .el\{\
37 .    ds -- \|\(em\|
38 .    ds PI \(*p
39 .    ds L" ``
40 .    ds R" ''
41 .    ds C`
42 .    ds C'
43 'br\}
44 .\"
45 .\" Escape single quotes in literal strings from groff's Unicode transform.
46 .ie \n(.g .ds Aq \(aq
47 .el       .ds Aq '
48 .\"
49 .\" If the F register is >0, we'll generate index entries on stderr for
50 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
51 .\" entries marked with X<> in POD.  Of course, you'll have to process the
52 .\" output yourself in some meaningful fashion.
53 .\"
54 .\" Avoid warning from groff about undefined register 'F'.
55 .de IX
56 ..
57 .nr rF 0
58 .if \n(.g .if rF .nr rF 1
59 .if (\n(rF:(\n(.g==0)) \{\
60 .    if \nF \{\
61 .        de IX
62 .        tm Index:\\$1\t\\n%\t"\\$2"
63 ..
64 .        if !\nF==2 \{\
65 .            nr % 0
66 .            nr F 2
67 .        \}
68 .    \}
69 .\}
70 .rr rF
71 .\"
72 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
73 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
74 .    \" fudge factors for nroff and troff
75 .if n \{\
76 .    ds #H 0
77 .    ds #V .8m
78 .    ds #F .3m
79 .    ds #[ \f1
80 .    ds #] \fP
81 .\}
82 .if t \{\
83 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
84 .    ds #V .6m
85 .    ds #F 0
86 .    ds #[ \&
87 .    ds #] \&
88 .\}
89 .    \" simple accents for nroff and troff
90 .if n \{\
91 .    ds ' \&
92 .    ds ` \&
93 .    ds ^ \&
94 .    ds , \&
95 .    ds ~ ~
96 .    ds /
97 .\}
98 .if t \{\
99 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
100 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
101 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
102 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
103 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
104 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
105 .\}
106 .    \" troff and (daisy-wheel) nroff accents
107 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
108 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
109 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
110 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
111 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
112 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
113 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
114 .ds ae a\h'-(\w'a'u*4/10)'e
115 .ds Ae A\h'-(\w'A'u*4/10)'E
116 .    \" corrections for vroff
117 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
118 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
119 .    \" for low resolution devices (crt and lpr)
120 .if \n(.H>23 .if \n(.V>19 \
121 \{\
122 .    ds : e
123 .    ds 8 ss
124 .    ds o a
125 .    ds d- d\h'-1'\(ga
126 .    ds D- D\h'-1'\(hy
127 .    ds th \o'bp'
128 .    ds Th \o'LP'
129 .    ds ae ae
130 .    ds Ae AE
131 .\}
132 .rm #[ #] #H #V #F C
133 .\" ========================================================================
134 .\"
135 .IX Title "READELF 1"
136 .TH READELF 1 "2023-04-26" "binutils-2.40.00" "GNU Development Tools"
137 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
138 .\" way too many mistakes in technical documents.
139 .if n .ad l
140 .nh
141 .SH "NAME"
142 readelf \- display information about ELF files
143 .SH "SYNOPSIS"
144 .IX Header "SYNOPSIS"
145 readelf [\fB\-a\fR|\fB\-\-all\fR]
146         [\fB\-h\fR|\fB\-\-file\-header\fR]
147         [\fB\-l\fR|\fB\-\-program\-headers\fR|\fB\-\-segments\fR]
148         [\fB\-S\fR|\fB\-\-section\-headers\fR|\fB\-\-sections\fR]
149         [\fB\-g\fR|\fB\-\-section\-groups\fR]
150         [\fB\-t\fR|\fB\-\-section\-details\fR]
151         [\fB\-e\fR|\fB\-\-headers\fR]
152         [\fB\-s\fR|\fB\-\-syms\fR|\fB\-\-symbols\fR]
153         [\fB\-\-dyn\-syms\fR|\fB\-\-lto\-syms\fR]
154         [\fB\-\-sym\-base=[0|8|10|16]\fR]
155         [\fB\-\-demangle\fR\fI=style\fR|\fB\-\-no\-demangle\fR]
156         [\fB\-\-quiet\fR]
157         [\fB\-\-recurse\-limit\fR|\fB\-\-no\-recurse\-limit\fR]
158         [\fB\-U\fR \fImethod\fR|\fB\-\-unicode=\fR\fImethod\fR]
159         [\fB\-n\fR|\fB\-\-notes\fR]
160         [\fB\-r\fR|\fB\-\-relocs\fR]
161         [\fB\-u\fR|\fB\-\-unwind\fR]
162         [\fB\-d\fR|\fB\-\-dynamic\fR]
163         [\fB\-V\fR|\fB\-\-version\-info\fR]
164         [\fB\-A\fR|\fB\-\-arch\-specific\fR]
165         [\fB\-D\fR|\fB\-\-use\-dynamic\fR]
166         [\fB\-L\fR|\fB\-\-lint\fR|\fB\-\-enable\-checks\fR]
167         [\fB\-x\fR <number or name>|\fB\-\-hex\-dump=\fR<number or name>]
168         [\fB\-p\fR <number or name>|\fB\-\-string\-dump=\fR<number or name>]
169         [\fB\-R\fR <number or name>|\fB\-\-relocated\-dump=\fR<number or name>]
170         [\fB\-z\fR|\fB\-\-decompress\fR]
171         [\fB\-c\fR|\fB\-\-archive\-index\fR]
172         [\fB\-w[lLiaprmfFsoORtUuTgAck]\fR|
173          \fB\-\-debug\-dump\fR[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]]
174         [\fB\-wK\fR|\fB\-\-debug\-dump=follow\-links\fR]
175         [\fB\-wN\fR|\fB\-\-debug\-dump=no\-follow\-links\fR]
176         [\fB\-wD\fR|\fB\-\-debug\-dump=use\-debuginfod\fR]
177         [\fB\-wE\fR|\fB\-\-debug\-dump=do\-not\-use\-debuginfod\fR]
178         [\fB\-P\fR|\fB\-\-process\-links\fR]
179         [\fB\-\-dwarf\-depth=\fR\fIn\fR]
180         [\fB\-\-dwarf\-start=\fR\fIn\fR]
181         [\fB\-\-ctf=\fR\fIsection\fR]
182         [\fB\-\-ctf\-parent=\fR\fIsection\fR]
183         [\fB\-\-ctf\-symbols=\fR\fIsection\fR]
184         [\fB\-\-ctf\-strings=\fR\fIsection\fR]
185         [\fB\-\-sframe=\fR\fIsection\fR]
186         [\fB\-I\fR|\fB\-\-histogram\fR]
187         [\fB\-v\fR|\fB\-\-version\fR]
188         [\fB\-W\fR|\fB\-\-wide\fR]
189         [\fB\-T\fR|\fB\-\-silent\-truncation\fR]
190         [\fB\-H\fR|\fB\-\-help\fR]
191         \fIelffile\fR...
192 .SH "DESCRIPTION"
193 .IX Header "DESCRIPTION"
194 \&\fBreadelf\fR displays information about one or more \s-1ELF\s0 format object
195 files.  The options control what particular information to display.
196 .PP
197 \&\fIelffile\fR... are the object files to be examined.  32\-bit and
198 64\-bit \s-1ELF\s0 files are supported, as are archives containing \s-1ELF\s0 files.
199 .PP
200 This program performs a similar function to \fBobjdump\fR but it
201 goes into more detail and it exists independently of the \s-1BFD\s0
202 library, so if there is a bug in \s-1BFD\s0 then readelf will not be
203 affected.
204 .SH "OPTIONS"
205 .IX Header "OPTIONS"
206 The long and short forms of options, shown here as alternatives, are
207 equivalent.  At least one option besides \fB\-v\fR or \fB\-H\fR must be
208 given.
209 .IP "\fB\-a\fR" 4
210 .IX Item "-a"
211 .PD 0
212 .IP "\fB\-\-all\fR" 4
213 .IX Item "--all"
214 .PD
215 Equivalent to specifying \fB\-\-file\-header\fR,
216 \&\fB\-\-program\-headers\fR, \fB\-\-sections\fR, \fB\-\-symbols\fR,
217 \&\fB\-\-relocs\fR, \fB\-\-dynamic\fR, \fB\-\-notes\fR,
218 \&\fB\-\-version\-info\fR, \fB\-\-arch\-specific\fR, \fB\-\-unwind\fR,
219 \&\fB\-\-section\-groups\fR and \fB\-\-histogram\fR.
220 .Sp
221 Note \- this option does not enable \fB\-\-use\-dynamic\fR itself, so
222 if that option is not present on the command line then dynamic symbols
223 and dynamic relocs will not be displayed.
224 .IP "\fB\-h\fR" 4
225 .IX Item "-h"
226 .PD 0
227 .IP "\fB\-\-file\-header\fR" 4
228 .IX Item "--file-header"
229 .PD
230 Displays the information contained in the \s-1ELF\s0 header at the start of the
231 file.
232 .IP "\fB\-l\fR" 4
233 .IX Item "-l"
234 .PD 0
235 .IP "\fB\-\-program\-headers\fR" 4
236 .IX Item "--program-headers"
237 .IP "\fB\-\-segments\fR" 4
238 .IX Item "--segments"
239 .PD
240 Displays the information contained in the file's segment headers, if it
241 has any.
242 .IP "\fB\-\-quiet\fR" 4
243 .IX Item "--quiet"
244 Suppress \*(L"no symbols\*(R" diagnostic.
245 .IP "\fB\-S\fR" 4
246 .IX Item "-S"
247 .PD 0
248 .IP "\fB\-\-sections\fR" 4
249 .IX Item "--sections"
250 .IP "\fB\-\-section\-headers\fR" 4
251 .IX Item "--section-headers"
252 .PD
253 Displays the information contained in the file's section headers, if it
254 has any.
255 .IP "\fB\-g\fR" 4
256 .IX Item "-g"
257 .PD 0
258 .IP "\fB\-\-section\-groups\fR" 4
259 .IX Item "--section-groups"
260 .PD
261 Displays the information contained in the file's section groups, if it
262 has any.
263 .IP "\fB\-t\fR" 4
264 .IX Item "-t"
265 .PD 0
266 .IP "\fB\-\-section\-details\fR" 4
267 .IX Item "--section-details"
268 .PD
269 Displays the detailed section information. Implies \fB\-S\fR.
270 .IP "\fB\-s\fR" 4
271 .IX Item "-s"
272 .PD 0
273 .IP "\fB\-\-symbols\fR" 4
274 .IX Item "--symbols"
275 .IP "\fB\-\-syms\fR" 4
276 .IX Item "--syms"
277 .PD
278 Displays the entries in symbol table section of the file, if it has one.
279 If a symbol has version information associated with it then this is
280 displayed as well.  The version string is displayed as a suffix to the
281 symbol name, preceded by an @ character.  For example
282 \&\fBfoo@VER_1\fR.  If the version is the default version to be used
283 when resolving unversioned references to the symbol then it is
284 displayed as a suffix preceded by two @ characters.  For example
285 \&\fBfoo@@VER_2\fR.
286 .IP "\fB\-\-dyn\-syms\fR" 4
287 .IX Item "--dyn-syms"
288 Displays the entries in dynamic symbol table section of the file, if it
289 has one.  The output format is the same as the format used by the
290 \&\fB\-\-syms\fR option.
291 .IP "\fB\-\-lto\-syms\fR" 4
292 .IX Item "--lto-syms"
293 Displays the contents of any \s-1LTO\s0 symbol tables in the file.
294 .IP "\fB\-\-sym\-base=[0|8|10|16]\fR" 4
295 .IX Item "--sym-base=[0|8|10|16]"
296 Forces the size field of the symbol table to use the given base.  Any
297 unrecognized options will be treated as \fB0\fR.  \fB\-\-sym\-base=0\fR
298 represents the default and legacy behaviour.  This will output sizes as decimal
299 for numbers less than 100000.  For sizes 100000 and greater hexadecimal notation
300 will be used with a 0x prefix.
301 \&\fB\-\-sym\-base=8\fR will give the symbol sizes in octal.
302 \&\fB\-\-sym\-base=10\fR will always give the symbol sizes in decimal.
303 \&\fB\-\-sym\-base=16\fR will always give the symbol sizes in hexadecimal with a
304 0x prefix.
305 .IP "\fB\-C\fR" 4
306 .IX Item "-C"
307 .PD 0
308 .IP "\fB\-\-demangle[=\fR\fIstyle\fR\fB]\fR" 4
309 .IX Item "--demangle[=style]"
310 .PD
311 Decode (\fIdemangle\fR) low-level symbol names into user-level names.
312 This makes \*(C+ function names readable.  Different compilers have
313 different mangling styles.  The optional demangling style argument can
314 be used to choose an appropriate demangling style for your
315 compiler.
316 .IP "\fB\-\-no\-demangle\fR" 4
317 .IX Item "--no-demangle"
318 Do not demangle low-level symbol names.  This is the default.
319 .IP "\fB\-\-recurse\-limit\fR" 4
320 .IX Item "--recurse-limit"
321 .PD 0
322 .IP "\fB\-\-no\-recurse\-limit\fR" 4
323 .IX Item "--no-recurse-limit"
324 .IP "\fB\-\-recursion\-limit\fR" 4
325 .IX Item "--recursion-limit"
326 .IP "\fB\-\-no\-recursion\-limit\fR" 4
327 .IX Item "--no-recursion-limit"
328 .PD
329 Enables or disables a limit on the amount of recursion performed
330 whilst demangling strings.  Since the name mangling formats allow for
331 an infinite level of recursion it is possible to create strings whose
332 decoding will exhaust the amount of stack space available on the host
333 machine, triggering a memory fault.  The limit tries to prevent this
334 from happening by restricting recursion to 2048 levels of nesting.
335 .Sp
336 The default is for this limit to be enabled, but disabling it may be
337 necessary in order to demangle truly complicated names.  Note however
338 that if the recursion limit is disabled then stack exhaustion is
339 possible and any bug reports about such an event will be rejected.
340 .IP "\fB\-U\fR \fI[d|i|l|e|x|h]\fR" 4
341 .IX Item "-U [d|i|l|e|x|h]"
342 .PD 0
343 .IP "\fB\-\-unicode=[default|invalid|locale|escape|hex|highlight]\fR" 4
344 .IX Item "--unicode=[default|invalid|locale|escape|hex|highlight]"
345 .PD
346 Controls the display of non-ASCII characters in identifier names.
347 The default (\fB\-\-unicode=locale\fR or \fB\-\-unicode=default\fR) is
348 to treat them as multibyte characters and display them in the current
349 locale.  All other versions of this option treat the bytes as \s-1UTF\-8\s0
350 encoded values and attempt to interpret them.  If they cannot be
351 interpreted or if the \fB\-\-unicode=invalid\fR option is used then
352 they are displayed as a sequence of hex bytes, encloses in curly
353 parethesis characters.
354 .Sp
355 Using the \fB\-\-unicode=escape\fR option will display the characters
356 as as unicode escape sequences (\fI\euxxxx\fR).  Using the
357 \&\fB\-\-unicode=hex\fR will display the characters as hex byte
358 sequences enclosed between angle brackets.
359 .Sp
360 Using the \fB\-\-unicode=highlight\fR will display the characters as 
361 unicode escape sequences but it will also highlighted them in red,
362 assuming that colouring is supported by the output device.  The
363 colouring is intended to draw attention to the presence of unicode
364 sequences when they might not be expected.
365 .IP "\fB\-e\fR" 4
366 .IX Item "-e"
367 .PD 0
368 .IP "\fB\-\-headers\fR" 4
369 .IX Item "--headers"
370 .PD
371 Display all the headers in the file.  Equivalent to \fB\-h \-l \-S\fR.
372 .IP "\fB\-n\fR" 4
373 .IX Item "-n"
374 .PD 0
375 .IP "\fB\-\-notes\fR" 4
376 .IX Item "--notes"
377 .PD
378 Displays the contents of the \s-1NOTE\s0 segments and/or sections, if any.
379 .IP "\fB\-r\fR" 4
380 .IX Item "-r"
381 .PD 0
382 .IP "\fB\-\-relocs\fR" 4
383 .IX Item "--relocs"
384 .PD
385 Displays the contents of the file's relocation section, if it has one.
386 .IP "\fB\-u\fR" 4
387 .IX Item "-u"
388 .PD 0
389 .IP "\fB\-\-unwind\fR" 4
390 .IX Item "--unwind"
391 .PD
392 Displays the contents of the file's unwind section, if it has one.  Only
393 the unwind sections for \s-1IA64 ELF\s0 files, as well as \s-1ARM\s0 unwind tables
394 (\f(CW\*(C`.ARM.exidx\*(C'\fR / \f(CW\*(C`.ARM.extab\*(C'\fR) are currently supported.  If
395 support is not yet implemented for your architecture you could try
396 dumping the contents of the \fI.eh_frames\fR section using the
397 \&\fB\-\-debug\-dump=frames\fR or \fB\-\-debug\-dump=frames\-interp\fR
398 options.
399 .IP "\fB\-d\fR" 4
400 .IX Item "-d"
401 .PD 0
402 .IP "\fB\-\-dynamic\fR" 4
403 .IX Item "--dynamic"
404 .PD
405 Displays the contents of the file's dynamic section, if it has one.
406 .IP "\fB\-V\fR" 4
407 .IX Item "-V"
408 .PD 0
409 .IP "\fB\-\-version\-info\fR" 4
410 .IX Item "--version-info"
411 .PD
412 Displays the contents of the version sections in the file, it they
413 exist.
414 .IP "\fB\-A\fR" 4
415 .IX Item "-A"
416 .PD 0
417 .IP "\fB\-\-arch\-specific\fR" 4
418 .IX Item "--arch-specific"
419 .PD
420 Displays architecture-specific information in the file, if there
421 is any.
422 .IP "\fB\-D\fR" 4
423 .IX Item "-D"
424 .PD 0
425 .IP "\fB\-\-use\-dynamic\fR" 4
426 .IX Item "--use-dynamic"
427 .PD
428 When displaying symbols, this option makes \fBreadelf\fR use the
429 symbol hash tables in the file's dynamic section, rather than the
430 symbol table sections.
431 .Sp
432 When displaying relocations, this option makes \fBreadelf\fR
433 display the dynamic relocations rather than the static relocations.
434 .IP "\fB\-L\fR" 4
435 .IX Item "-L"
436 .PD 0
437 .IP "\fB\-\-lint\fR" 4
438 .IX Item "--lint"
439 .IP "\fB\-\-enable\-checks\fR" 4
440 .IX Item "--enable-checks"
441 .PD
442 Displays warning messages about possible problems with the file(s)
443 being examined.  If used on its own then all of the contents of the
444 file(s) will be examined.  If used with one of the dumping options
445 then the warning messages will only be produced for the things being
446 displayed.
447 .IP "\fB\-x <number or name>\fR" 4
448 .IX Item "-x <number or name>"
449 .PD 0
450 .IP "\fB\-\-hex\-dump=<number or name>\fR" 4
451 .IX Item "--hex-dump=<number or name>"
452 .PD
453 Displays the contents of the indicated section as a hexadecimal bytes.
454 A number identifies a particular section by index in the section table;
455 any other string identifies all sections with that name in the object file.
456 .IP "\fB\-R <number or name>\fR" 4
457 .IX Item "-R <number or name>"
458 .PD 0
459 .IP "\fB\-\-relocated\-dump=<number or name>\fR" 4
460 .IX Item "--relocated-dump=<number or name>"
461 .PD
462 Displays the contents of the indicated section as a hexadecimal
463 bytes.  A number identifies a particular section by index in the
464 section table; any other string identifies all sections with that name
465 in the object file.  The contents of the section will be relocated
466 before they are displayed.
467 .IP "\fB\-p <number or name>\fR" 4
468 .IX Item "-p <number or name>"
469 .PD 0
470 .IP "\fB\-\-string\-dump=<number or name>\fR" 4
471 .IX Item "--string-dump=<number or name>"
472 .PD
473 Displays the contents of the indicated section as printable strings.
474 A number identifies a particular section by index in the section table;
475 any other string identifies all sections with that name in the object file.
476 .IP "\fB\-z\fR" 4
477 .IX Item "-z"
478 .PD 0
479 .IP "\fB\-\-decompress\fR" 4
480 .IX Item "--decompress"
481 .PD
482 Requests that the section(s) being dumped by \fBx\fR, \fBR\fR or
483 \&\fBp\fR options are decompressed before being displayed.  If the
484 section(s) are not compressed then they are displayed as is.
485 .IP "\fB\-c\fR" 4
486 .IX Item "-c"
487 .PD 0
488 .IP "\fB\-\-archive\-index\fR" 4
489 .IX Item "--archive-index"
490 .PD
491 Displays the file symbol index information contained in the header part
492 of binary archives.  Performs the same function as the \fBt\fR
493 command to \fBar\fR, but without using the \s-1BFD\s0 library.
494 .IP "\fB\-w[lLiaprmfFsOoRtUuTgAckK]\fR" 4
495 .IX Item "-w[lLiaprmfFsOoRtUuTgAckK]"
496 .PD 0
497 .IP "\fB\-\-debug\-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames\-interp,=str,=str\-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow\-links]\fR" 4
498 .IX Item "--debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow-links]"
499 .PD
500 Displays the contents of the \s-1DWARF\s0 debug sections in the file, if any
501 are present.  Compressed debug sections are automatically decompressed
502 (temporarily) before they are displayed.  If one or more of the
503 optional letters or words follows the switch then only those type(s)
504 of data will be dumped.  The letters and words refer to the following
505 information:
506 .RS 4
507 .ie n .IP """a""" 4
508 .el .IP "\f(CWa\fR" 4
509 .IX Item "a"
510 .PD 0
511 .ie n .IP """=abbrev""" 4
512 .el .IP "\f(CW=abbrev\fR" 4
513 .IX Item "=abbrev"
514 .PD
515 Displays the contents of the \fB.debug_abbrev\fR section.
516 .ie n .IP """A""" 4
517 .el .IP "\f(CWA\fR" 4
518 .IX Item "A"
519 .PD 0
520 .ie n .IP """=addr""" 4
521 .el .IP "\f(CW=addr\fR" 4
522 .IX Item "=addr"
523 .PD
524 Displays the contents of the \fB.debug_addr\fR section.
525 .ie n .IP """c""" 4
526 .el .IP "\f(CWc\fR" 4
527 .IX Item "c"
528 .PD 0
529 .ie n .IP """=cu_index""" 4
530 .el .IP "\f(CW=cu_index\fR" 4
531 .IX Item "=cu_index"
532 .PD
533 Displays the contents of the \fB.debug_cu_index\fR and/or
534 \&\fB.debug_tu_index\fR sections.
535 .ie n .IP """f""" 4
536 .el .IP "\f(CWf\fR" 4
537 .IX Item "f"
538 .PD 0
539 .ie n .IP """=frames""" 4
540 .el .IP "\f(CW=frames\fR" 4
541 .IX Item "=frames"
542 .PD
543 Display the raw contents of a \fB.debug_frame\fR section.
544 .ie n .IP """F""" 4
545 .el .IP "\f(CWF\fR" 4
546 .IX Item "F"
547 .PD 0
548 .ie n .IP """=frames\-interp""" 4
549 .el .IP "\f(CW=frames\-interp\fR" 4
550 .IX Item "=frames-interp"
551 .PD
552 Display the interpreted contents of a \fB.debug_frame\fR section.
553 .ie n .IP """g""" 4
554 .el .IP "\f(CWg\fR" 4
555 .IX Item "g"
556 .PD 0
557 .ie n .IP """=gdb_index""" 4
558 .el .IP "\f(CW=gdb_index\fR" 4
559 .IX Item "=gdb_index"
560 .PD
561 Displays the contents of the \fB.gdb_index\fR and/or
562 \&\fB.debug_names\fR sections.
563 .ie n .IP """i""" 4
564 .el .IP "\f(CWi\fR" 4
565 .IX Item "i"
566 .PD 0
567 .ie n .IP """=info""" 4
568 .el .IP "\f(CW=info\fR" 4
569 .IX Item "=info"
570 .PD
571 Displays the contents of the \fB.debug_info\fR section.  Note: the
572 output from this option can also be restricted by the use of the 
573 \&\fB\-\-dwarf\-depth\fR and \fB\-\-dwarf\-start\fR options.
574 .ie n .IP """k""" 4
575 .el .IP "\f(CWk\fR" 4
576 .IX Item "k"
577 .PD 0
578 .ie n .IP """=links""" 4
579 .el .IP "\f(CW=links\fR" 4
580 .IX Item "=links"
581 .PD
582 Displays the contents of the \fB.gnu_debuglink\fR,
583 \&\fB.gnu_debugaltlink\fR and \fB.debug_sup\fR sections, if any of
584 them are present.  Also displays any links to separate dwarf object
585 files (dwo), if they are specified by the DW_AT_GNU_dwo_name or
586 DW_AT_dwo_name attributes in the \fB.debug_info\fR section.
587 .ie n .IP """K""" 4
588 .el .IP "\f(CWK\fR" 4
589 .IX Item "K"
590 .PD 0
591 .ie n .IP """=follow\-links""" 4
592 .el .IP "\f(CW=follow\-links\fR" 4
593 .IX Item "=follow-links"
594 .PD
595 Display the contents of any selected debug sections that are found in
596 linked, separate debug info file(s).  This can result in multiple
597 versions of the same debug section being displayed if it exists in
598 more than one file.
599 .Sp
600 In addition, when displaying \s-1DWARF\s0 attributes, if a form is found that
601 references the separate debug info file, then the referenced contents
602 will also be displayed.
603 .Sp
604 Note \- in some distributions this option is enabled by default.  It
605 can be disabled via the \fBN\fR debug option.  The default can be
606 chosen when configuring the binutils via the
607 \&\fB\-\-enable\-follow\-debug\-links=yes\fR or
608 \&\fB\-\-enable\-follow\-debug\-links=no\fR options.  If these are not
609 used then the default is to enable the following of debug links.
610 .Sp
611 Note \- if support for the debuginfod protocol was enabled when the
612 binutils were built then this option will also include an attempt to
613 contact any debuginfod servers mentioned in the \fI\s-1DEBUGINFOD_URLS\s0\fR
614 environment variable.  This could take some time to resolve.  This
615 behaviour can be disabled via the \fB=do\-not\-use\-debuginfod\fR debug
616 option.
617 .ie n .IP """N""" 4
618 .el .IP "\f(CWN\fR" 4
619 .IX Item "N"
620 .PD 0
621 .ie n .IP """=no\-follow\-links""" 4
622 .el .IP "\f(CW=no\-follow\-links\fR" 4
623 .IX Item "=no-follow-links"
624 .PD
625 Disables the following of links to separate debug info files.
626 .ie n .IP """D""" 4
627 .el .IP "\f(CWD\fR" 4
628 .IX Item "D"
629 .PD 0
630 .ie n .IP """=use\-debuginfod""" 4
631 .el .IP "\f(CW=use\-debuginfod\fR" 4
632 .IX Item "=use-debuginfod"
633 .PD
634 Enables contacting debuginfod servers if there is a need to follow
635 debug links.  This is the default behaviour.
636 .ie n .IP """E""" 4
637 .el .IP "\f(CWE\fR" 4
638 .IX Item "E"
639 .PD 0
640 .ie n .IP """=do\-not\-use\-debuginfod""" 4
641 .el .IP "\f(CW=do\-not\-use\-debuginfod\fR" 4
642 .IX Item "=do-not-use-debuginfod"
643 .PD
644 Disables contacting debuginfod servers when there is a need to follow
645 debug links.
646 .ie n .IP """l""" 4
647 .el .IP "\f(CWl\fR" 4
648 .IX Item "l"
649 .PD 0
650 .ie n .IP """=rawline""" 4
651 .el .IP "\f(CW=rawline\fR" 4
652 .IX Item "=rawline"
653 .PD
654 Displays the contents of the \fB.debug_line\fR section in a raw
655 format.
656 .ie n .IP """L""" 4
657 .el .IP "\f(CWL\fR" 4
658 .IX Item "L"
659 .PD 0
660 .ie n .IP """=decodedline""" 4
661 .el .IP "\f(CW=decodedline\fR" 4
662 .IX Item "=decodedline"
663 .PD
664 Displays the interpreted contents of the \fB.debug_line\fR section.
665 .ie n .IP """m""" 4
666 .el .IP "\f(CWm\fR" 4
667 .IX Item "m"
668 .PD 0
669 .ie n .IP """=macro""" 4
670 .el .IP "\f(CW=macro\fR" 4
671 .IX Item "=macro"
672 .PD
673 Displays the contents of the \fB.debug_macro\fR and/or
674 \&\fB.debug_macinfo\fR sections.
675 .ie n .IP """o""" 4
676 .el .IP "\f(CWo\fR" 4
677 .IX Item "o"
678 .PD 0
679 .ie n .IP """=loc""" 4
680 .el .IP "\f(CW=loc\fR" 4
681 .IX Item "=loc"
682 .PD
683 Displays the contents of the \fB.debug_loc\fR and/or
684 \&\fB.debug_loclists\fR sections.
685 .ie n .IP """O""" 4
686 .el .IP "\f(CWO\fR" 4
687 .IX Item "O"
688 .PD 0
689 .ie n .IP """=str\-offsets""" 4
690 .el .IP "\f(CW=str\-offsets\fR" 4
691 .IX Item "=str-offsets"
692 .PD
693 Displays the contents of the \fB.debug_str_offsets\fR section.
694 .ie n .IP """p""" 4
695 .el .IP "\f(CWp\fR" 4
696 .IX Item "p"
697 .PD 0
698 .ie n .IP """=pubnames""" 4
699 .el .IP "\f(CW=pubnames\fR" 4
700 .IX Item "=pubnames"
701 .PD
702 Displays the contents of the \fB.debug_pubnames\fR and/or
703 \&\fB.debug_gnu_pubnames\fR sections.
704 .ie n .IP """r""" 4
705 .el .IP "\f(CWr\fR" 4
706 .IX Item "r"
707 .PD 0
708 .ie n .IP """=aranges""" 4
709 .el .IP "\f(CW=aranges\fR" 4
710 .IX Item "=aranges"
711 .PD
712 Displays the contents of the \fB.debug_aranges\fR section.
713 .ie n .IP """R""" 4
714 .el .IP "\f(CWR\fR" 4
715 .IX Item "R"
716 .PD 0
717 .ie n .IP """=Ranges""" 4
718 .el .IP "\f(CW=Ranges\fR" 4
719 .IX Item "=Ranges"
720 .PD
721 Displays the contents of the \fB.debug_ranges\fR and/or
722 \&\fB.debug_rnglists\fR sections.
723 .ie n .IP """s""" 4
724 .el .IP "\f(CWs\fR" 4
725 .IX Item "s"
726 .PD 0
727 .ie n .IP """=str""" 4
728 .el .IP "\f(CW=str\fR" 4
729 .IX Item "=str"
730 .PD
731 Displays the contents of the \fB.debug_str\fR, \fB.debug_line_str\fR
732 and/or \fB.debug_str_offsets\fR sections.
733 .ie n .IP """t""" 4
734 .el .IP "\f(CWt\fR" 4
735 .IX Item "t"
736 .PD 0
737 .ie n .IP """=pubtype""" 4
738 .el .IP "\f(CW=pubtype\fR" 4
739 .IX Item "=pubtype"
740 .PD
741 Displays the contents of the \fB.debug_pubtypes\fR and/or
742 \&\fB.debug_gnu_pubtypes\fR sections.
743 .ie n .IP """T""" 4
744 .el .IP "\f(CWT\fR" 4
745 .IX Item "T"
746 .PD 0
747 .ie n .IP """=trace_aranges""" 4
748 .el .IP "\f(CW=trace_aranges\fR" 4
749 .IX Item "=trace_aranges"
750 .PD
751 Displays the contents of the \fB.trace_aranges\fR section.
752 .ie n .IP """u""" 4
753 .el .IP "\f(CWu\fR" 4
754 .IX Item "u"
755 .PD 0
756 .ie n .IP """=trace_abbrev""" 4
757 .el .IP "\f(CW=trace_abbrev\fR" 4
758 .IX Item "=trace_abbrev"
759 .PD
760 Displays the contents of the \fB.trace_abbrev\fR section.
761 .ie n .IP """U""" 4
762 .el .IP "\f(CWU\fR" 4
763 .IX Item "U"
764 .PD 0
765 .ie n .IP """=trace_info""" 4
766 .el .IP "\f(CW=trace_info\fR" 4
767 .IX Item "=trace_info"
768 .PD
769 Displays the contents of the \fB.trace_info\fR section.
770 .RE
771 .RS 4
772 .Sp
773 Note: displaying the contents of \fB.debug_static_funcs\fR,
774 \&\fB.debug_static_vars\fR and \fBdebug_weaknames\fR sections is not
775 currently supported.
776 .RE
777 .IP "\fB\-\-dwarf\-depth=\fR\fIn\fR" 4
778 .IX Item "--dwarf-depth=n"
779 Limit the dump of the \f(CW\*(C`.debug_info\*(C'\fR section to \fIn\fR children.
780 This is only useful with \fB\-\-debug\-dump=info\fR.  The default is
781 to print all DIEs; the special value 0 for \fIn\fR will also have this
782 effect.
783 .Sp
784 With a non-zero value for \fIn\fR, DIEs at or deeper than \fIn\fR
785 levels will not be printed.  The range for \fIn\fR is zero-based.
786 .IP "\fB\-\-dwarf\-start=\fR\fIn\fR" 4
787 .IX Item "--dwarf-start=n"
788 Print only DIEs beginning with the \s-1DIE\s0 numbered \fIn\fR.  This is only
789 useful with \fB\-\-debug\-dump=info\fR.
790 .Sp
791 If specified, this option will suppress printing of any header
792 information and all DIEs before the \s-1DIE\s0 numbered \fIn\fR.  Only
793 siblings and children of the specified \s-1DIE\s0 will be printed.
794 .Sp
795 This can be used in conjunction with \fB\-\-dwarf\-depth\fR.
796 .IP "\fB\-P\fR" 4
797 .IX Item "-P"
798 .PD 0
799 .IP "\fB\-\-process\-links\fR" 4
800 .IX Item "--process-links"
801 .PD
802 Display the contents of non-debug sections found in separate debuginfo
803 files that are linked to the main file.  This option automatically
804 implies the \fB\-wK\fR option, and only sections requested by other
805 command line options will be displayed.
806 .IP "\fB\-\-ctf[=\fR\fIsection\fR\fB]\fR" 4
807 .IX Item "--ctf[=section]"
808 Display the contents of the specified \s-1CTF\s0 section.  \s-1CTF\s0 sections themselves
809 contain many subsections, all of which are displayed in order.
810 .Sp
811 By default, display the name of the section named \fI.ctf\fR, which is the
812 name emitted by \fBld\fR.
813 .IP "\fB\-\-ctf\-parent=\fR\fImember\fR" 4
814 .IX Item "--ctf-parent=member"
815 If the \s-1CTF\s0 section contains ambiguously-defined types, it will consist
816 of an archive of many \s-1CTF\s0 dictionaries, all inheriting from one
817 dictionary containing unambiguous types.  This member is by default
818 named \fI.ctf\fR, like the section containing it, but it is possible to
819 change this name using the \f(CW\*(C`ctf_link_set_memb_name_changer\*(C'\fR
820 function at link time.  When looking at \s-1CTF\s0 archives that have been
821 created by a linker that uses the name changer to rename the parent
822 archive member, \fB\-\-ctf\-parent\fR can be used to specify the name
823 used for the parent.
824 .IP "\fB\-\-ctf\-symbols=\fR\fIsection\fR" 4
825 .IX Item "--ctf-symbols=section"
826 .PD 0
827 .IP "\fB\-\-ctf\-strings=\fR\fIsection\fR" 4
828 .IX Item "--ctf-strings=section"
829 .PD
830 Specify the name of another section from which the \s-1CTF\s0 file can inherit
831 strings and symbols.  By default, the \f(CW\*(C`.symtab\*(C'\fR and its linked
832 string table are used.
833 .Sp
834 If either of \fB\-\-ctf\-symbols\fR or \fB\-\-ctf\-strings\fR is specified, the
835 other must be specified as well.
836 .IP "\fB\-I\fR" 4
837 .IX Item "-I"
838 .PD 0
839 .IP "\fB\-\-histogram\fR" 4
840 .IX Item "--histogram"
841 .PD
842 Display a histogram of bucket list lengths when displaying the contents
843 of the symbol tables.
844 .IP "\fB\-v\fR" 4
845 .IX Item "-v"
846 .PD 0
847 .IP "\fB\-\-version\fR" 4
848 .IX Item "--version"
849 .PD
850 Display the version number of readelf.
851 .IP "\fB\-W\fR" 4
852 .IX Item "-W"
853 .PD 0
854 .IP "\fB\-\-wide\fR" 4
855 .IX Item "--wide"
856 .PD
857 Don't break output lines to fit into 80 columns. By default
858 \&\fBreadelf\fR breaks section header and segment listing lines for
859 64\-bit \s-1ELF\s0 files, so that they fit into 80 columns. This option causes
860 \&\fBreadelf\fR to print each section header resp. each segment one a
861 single line, which is far more readable on terminals wider than 80 columns.
862 .IP "\fB\-T\fR" 4
863 .IX Item "-T"
864 .PD 0
865 .IP "\fB\-\-silent\-truncation\fR" 4
866 .IX Item "--silent-truncation"
867 .PD
868 Normally when readelf is displaying a symbol name, and it has to
869 truncate the name to fit into an 80 column display, it will add a
870 suffix of \f(CW\*(C`[...]\*(C'\fR to the name.  This command line option
871 disables this behaviour, allowing 5 more characters of the name to be
872 displayed and restoring the old behaviour of readelf (prior to release
873 2.35).
874 .IP "\fB\-H\fR" 4
875 .IX Item "-H"
876 .PD 0
877 .IP "\fB\-\-help\fR" 4
878 .IX Item "--help"
879 .PD
880 Display the command-line options understood by \fBreadelf\fR.
881 .IP "\fB@\fR\fIfile\fR" 4
882 .IX Item "@file"
883 Read command-line options from \fIfile\fR.  The options read are
884 inserted in place of the original @\fIfile\fR option.  If \fIfile\fR
885 does not exist, or cannot be read, then the option will be treated
886 literally, and not removed.
887 .Sp
888 Options in \fIfile\fR are separated by whitespace.  A whitespace
889 character may be included in an option by surrounding the entire
890 option in either single or double quotes.  Any character (including a
891 backslash) may be included by prefixing the character to be included
892 with a backslash.  The \fIfile\fR may itself contain additional
893 @\fIfile\fR options; any such options will be processed recursively.
894 .SH "SEE ALSO"
895 .IX Header "SEE ALSO"
896 \&\fBobjdump\fR\|(1), and the Info entries for \fIbinutils\fR.
897 .SH "COPYRIGHT"
898 .IX Header "COPYRIGHT"
899 Copyright (c) 1991\-2023 Free Software Foundation, Inc.
900 .PP
901 Permission is granted to copy, distribute and/or modify this document
902 under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3
903 or any later version published by the Free Software Foundation;
904 with no Invariant Sections, with no Front-Cover Texts, and with no
905 Back-Cover Texts.  A copy of the license is included in the
906 section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".