1llvm-readobj - LLVM Object Reader
2=================================
3
4.. program:: llvm-readobj
5
6SYNOPSIS
7--------
8
9:program:`llvm-readobj` [*options*] [*input...*]
10
11DESCRIPTION
12-----------
13
14The :program:`llvm-readobj` tool displays low-level format-specific information
15about one or more object files.
16
17If ``input`` is "``-``" or omitted, :program:`llvm-readobj` reads from standard
18input. Otherwise, it will read from the specified ``filenames``.
19
20DIFFERENCES TO LLVM-READELF
21---------------------------
22
23:program:`llvm-readelf` is an alias for the :manpage:`llvm-readobj` tool with a
24slightly different command-line interface and output that is GNU compatible.
25Following is a list of differences between :program:`llvm-readelf` and
26:program:`llvm-readobj`:
27
28- :program:`llvm-readelf` uses `GNU` for the :option:`--elf-output-style` option
29  by default. :program:`llvm-readobj` uses `LLVM`.
30- :program:`llvm-readelf` allows single-letter grouped flags (e.g.
31  ``llvm-readelf -SW`` is the same as  ``llvm-readelf -S -W``).
32  :program:`llvm-readobj` does not allow grouping.
33- :program:`llvm-readelf` provides :option:`-s` as an alias for
34  :option:`--symbols`, for GNU :program:`readelf` compatibility, whereas it is
35  an alias for :option:`--section-headers` in :program:`llvm-readobj`.
36- :program:`llvm-readobj` provides ``-t`` as an alias for :option:`--symbols`.
37  :program:`llvm-readelf` does not.
38- :program:`llvm-readobj` provides ``--sr``, ``--sd``, ``--st`` and ``--dt`` as
39  aliases for :option:`--section-relocations`, :option:`--section-data`,
40  :option:`--section-symbols` and :option:`--dyn-symbols` respectively.
41  :program:`llvm-readelf` does not provide these aliases, to avoid conflicting
42  with grouped flags.
43
44GENERAL AND MULTI-FORMAT OPTIONS
45--------------------------------
46
47These options are applicable to more than one file format, or are unrelated to
48file formats.
49
50.. option:: --all
51
52 Equivalent to specifying all the main display options relevant to the file
53 format.
54
55.. option:: --addrsig
56
57 Display the address-significance table.
58
59.. option:: --color
60
61 Use colors in the output for warnings and errors.
62
63.. option:: --expand-relocs
64
65 When used with :option:`--relocations`, display each relocation in an expanded
66 multi-line format.
67
68.. option:: --file-headers, -h
69
70 Display file headers.
71
72.. option:: --headers, -e
73
74 Equivalent to setting: :option:`--file-headers`, :option:`--program-headers`,
75 and :option:`--sections`.
76
77.. option:: --help
78
79 Display a summary of command line options.
80
81.. option:: --help-list
82
83 Display an uncategorized summary of command line options.
84
85.. option:: --hex-dump=<section[,section,...]>, -x
86
87 Display the specified section(s) as hexadecimal bytes. ``section`` may be a
88 section index or section name.
89
90.. option:: --needed-libs
91
92 Display the needed libraries.
93
94.. option:: --relocations, --relocs, -r
95
96 Display the relocation entries in the file.
97
98.. option:: --sections, --section-headers, -s, -S
99
100 Display all sections.
101
102.. option:: --section-data, --sd
103
104 When used with :option:`--sections`, display section data for each section
105 shown. This option has no effect for GNU style output.
106
107.. option:: --section-relocations, --sr
108
109 When used with :option:`--sections`, display relocations for each section
110 shown. This option has no effect for GNU style output.
111
112.. option:: --section-symbols, --st
113
114 When used with :option:`--sections`, display symbols for each section shown.
115 This option has no effect for GNU style output.
116
117.. option:: --stackmap
118
119 Display contents of the stackmap section.
120
121.. option:: --string-dump=<section[,section,...]>, -p
122
123 Display the specified section(s) as a list of strings. ``section`` may be a
124 section index or section name.
125
126.. option:: --symbols, --syms, -t
127
128 Display the symbol table.
129
130.. option:: --unwind, -u
131
132 Display unwind information.
133
134.. option:: --version
135
136 Display the version of the :program:`llvm-readobj` executable.
137
138.. option:: @<FILE>
139
140 Read command-line options from response file `<FILE>`.
141
142ELF SPECIFIC OPTIONS
143--------------------
144
145The following options are implemented only for the ELF file format.
146
147.. option:: --arm-attributes
148
149 Display the ARM attributes section. Only applicable for ARM architectures.
150
151.. option:: --demangle, -C
152
153 Display demangled symbol names in the output.
154
155.. option:: --dyn-relocations
156
157 Display the dynamic relocation entries.
158
159.. option:: --dyn-symbols, --dyn-syms, --dt
160
161 Display the dynamic symbol table.
162
163.. option:: --dynamic-table, --dynamic, -d
164
165 Display the dynamic table.
166
167.. option:: --elf-cg-profile
168
169 Display the callgraph profile section.
170
171.. option:: --elf-hash-histogram, --histogram, -I
172
173 Display a bucket list histogram for dynamic symbol hash tables.
174
175.. option:: --elf-linker-options
176
177 Display the linker options section.
178
179.. option:: --elf-output-style=<value>
180
181 Format ELF information in the specified style. Valid options are ``LLVM`` and
182 ``GNU``. ``LLVM`` output (the default) is an expanded and structured format,
183 whilst ``GNU`` output mimics the equivalent GNU :program:`readelf` output.
184
185.. option:: --elf-section-groups, --section-groups, -g
186
187 Display section groups.
188
189.. option:: --gnu-hash-table
190
191 Display the GNU hash table for dynamic symbols.
192
193.. option:: --hash-symbols
194
195 Display the expanded hash table with dynamic symbol data.
196
197.. option:: --hash-table
198
199 Display the hash table for dynamic symbols.
200
201.. option:: --notes, -n
202
203 Display all notes.
204
205.. option:: --program-headers, --segments, -l
206
207 Display the program headers.
208
209.. option:: --raw-relr
210
211 Do not decode relocations in RELR relocation sections when displaying them.
212
213.. option:: --section-mapping
214
215 Display the section to segment mapping.
216
217.. option:: --stack-sizes
218
219 Display the contents of the stack sizes section(s), i.e. pairs of function
220 names and the size of their stack frames. Currently only implemented for GNU
221 style output.
222
223.. option:: --version-info, -V
224
225 Display version sections.
226
227MACH-O SPECIFIC OPTIONS
228-----------------------
229
230The following options are implemented only for the Mach-O file format.
231
232.. option:: --macho-data-in-code
233
234 Display the Data in Code command.
235
236.. option:: --macho-dsymtab
237
238 Display the Dsymtab command.
239
240.. option:: --macho-indirect-symbols
241
242 Display indirect symbols.
243
244.. option:: --macho-linker-options
245
246 Display the Mach-O-specific linker options.
247
248.. option:: --macho-segment
249
250 Display the Segment command.
251
252.. option:: --macho-version-min
253
254 Display the version min command.
255
256PE/COFF SPECIFIC OPTIONS
257------------------------
258
259The following options are implemented only for the PE/COFF file format.
260
261.. option:: --codeview
262
263 Display CodeView debug information.
264
265.. option:: --codeview-ghash
266
267 Enable global hashing for CodeView type stream de-duplication.
268
269.. option:: --codeview-merged-types
270
271 Display the merged CodeView type stream.
272
273.. option:: --codeview-subsection-bytes
274
275 Dump raw contents of CodeView debug sections and records.
276
277.. option:: --coff-basereloc
278
279 Display the .reloc section.
280
281.. option:: --coff-debug-directory
282
283 Display the debug directory.
284
285.. option:: --coff-directives
286
287 Display the .drectve section.
288
289.. option:: --coff-exports
290
291 Display the export table.
292
293.. option:: --coff-imports
294
295 Display the import table.
296
297.. option:: --coff-load-config
298
299 Display the load config.
300
301.. option:: --coff-resources
302
303 Display the .rsrc section.
304
305EXIT STATUS
306-----------
307
308:program:`llvm-readobj` returns 0 under normal operation. It returns a non-zero
309exit code if there were any errors.
310
311SEE ALSO
312--------
313
314:manpage:`llvm-nm(1)`, :manpage:`llvm-objdump(1)`, :manpage:`llvm-readelf(1)`
315