14a68586dSMichael Trentllvm-objdump - LLVM's object file dumper
24a68586dSMichael Trent========================================
34a68586dSMichael Trent
44a68586dSMichael TrentSYNOPSIS
54a68586dSMichael Trent--------
64a68586dSMichael Trent
74a68586dSMichael Trent:program:`llvm-objdump` [*commands*] [*options*] [*filenames...*]
84a68586dSMichael Trent
94a68586dSMichael TrentDESCRIPTION
104a68586dSMichael Trent-----------
114a68586dSMichael TrentThe :program:`llvm-objdump` utility prints the contents of object files and
124a68586dSMichael Trentfinal linked images named on the command line. If no file name is specified,
134a68586dSMichael Trent:program:`llvm-objdump` will attempt to read from *a.out*. If *-* is used as a
144a68586dSMichael Trentfile name, :program:`llvm-objdump` will process a file on its standard input
154a68586dSMichael Trentstream.
164a68586dSMichael Trent
174a68586dSMichael TrentCOMMANDS
184a68586dSMichael Trent--------
197e660211SMichael TrentAt least one of the following commands are required, and some commands can be
207e660211SMichael Trentcombined with other commands:
214a68586dSMichael Trent
22a8ed354bSJames Henderson.. option:: -a, --archive-headers
23a8ed354bSJames Henderson
24a8ed354bSJames Henderson  Display the information contained within an archive's headers.
25a8ed354bSJames Henderson
26a8ed354bSJames Henderson.. option:: -d, --disassemble
274a68586dSMichael Trent
287e660211SMichael Trent  Display assembler mnemonics for the machine instructions. Disassembles all
29a8ed354bSJames Henderson  text sections found in the input file(s) by default.
307e660211SMichael Trent
31a8ed354bSJames Henderson.. option:: -D, --disassemble-all
327e660211SMichael Trent
337e660211SMichael Trent  Display assembler mnemonics for the machine instructions. Disassembles all
34a8ed354bSJames Henderson  sections found in the input file(s) by default.
354a68586dSMichael Trent
36a8ed354bSJames Henderson.. option:: --disassemble-functions=<func1[,func2,...]>
374a68586dSMichael Trent
38a8ed354bSJames Henderson  Disassemble only the specified symbols. Implies :option:`--disassemble`.
394a68586dSMichael Trent
40a8ed354bSJames Henderson.. option:: --dwarf=<value>
414a68586dSMichael Trent
42a8ed354bSJames Henderson  Dump the specified DWARF debug sections. The supported values are:
434a68586dSMichael Trent
44a8ed354bSJames Henderson  `frames` - .debug_frame
454a68586dSMichael Trent
46a8ed354bSJames Henderson.. option:: -f, --file-headers
474a68586dSMichael Trent
48a8ed354bSJames Henderson  Display the contents of the overall file header.
49a8ed354bSJames Henderson
50a8ed354bSJames Henderson.. option:: --fault-map-section
51a8ed354bSJames Henderson
52a8ed354bSJames Henderson  Display the content of the fault map section.
53a8ed354bSJames Henderson
54a8ed354bSJames Henderson.. option:: -h, --headers, --section-headers
554a68586dSMichael Trent
564a68586dSMichael Trent  Display summaries of the headers for each section.
574a68586dSMichael Trent
58a8ed354bSJames Henderson.. option:: --help
59a8ed354bSJames Henderson
60a8ed354bSJames Henderson  Display usage information and exit. Does not stack with other commands.
61a8ed354bSJames Henderson
62a8ed354bSJames Henderson.. option:: -p, --private-headers
63a8ed354bSJames Henderson
64a8ed354bSJames Henderson  Display format-specific file headers.
65a8ed354bSJames Henderson
66a8ed354bSJames Henderson.. option:: -r, --reloc
67a8ed354bSJames Henderson
68a8ed354bSJames Henderson  Display the relocation entries in the file.
69a8ed354bSJames Henderson
70a8ed354bSJames Henderson.. option:: -R, --dynamic-reloc
71a8ed354bSJames Henderson
72a8ed354bSJames Henderson  Display the dynamic relocation entries in the file.
73a8ed354bSJames Henderson
74a8ed354bSJames Henderson.. option:: --raw-clang-ast
75a8ed354bSJames Henderson
76a8ed354bSJames Henderson  Dump the raw binary contents of the clang AST section.
77a8ed354bSJames Henderson
78a8ed354bSJames Henderson.. option:: -s, --full-contents
79a8ed354bSJames Henderson
80a8ed354bSJames Henderson  Display the contents of each section.
81a8ed354bSJames Henderson
82a8ed354bSJames Henderson.. option:: -t, --syms
834a68586dSMichael Trent
844a68586dSMichael Trent  Display the symbol table.
854a68586dSMichael Trent
86a8ed354bSJames Henderson.. option:: -u, --unwind-info
87a8ed354bSJames Henderson
88a8ed354bSJames Henderson  Display the unwind info of the input(s).
89a8ed354bSJames Henderson
90a8ed354bSJames Henderson.. option:: --version
914a68586dSMichael Trent
924a68586dSMichael Trent  Display the version of this program. Does not stack with other commands.
934a68586dSMichael Trent
94a8ed354bSJames Henderson.. option:: -x, --all-headers
95a8ed354bSJames Henderson
96a8ed354bSJames Henderson  Display all available header information. Equivalent to specifying
97a8ed354bSJames Henderson  :option:`--archive-headers`, :option:`--file-headers`,
98a8ed354bSJames Henderson  :option:`--private-headers`, :option:`--reloc`, :option:`--section-headers`,
99a8ed354bSJames Henderson  and :option:`--syms`.
100a8ed354bSJames Henderson
1014a68586dSMichael TrentOPTIONS
1024a68586dSMichael Trent-------
1034a68586dSMichael Trent:program:`llvm-objdump` supports the following options:
1044a68586dSMichael Trent
105a8ed354bSJames Henderson.. option:: --adjust-vma=<offset>
1064a68586dSMichael Trent
107a8ed354bSJames Henderson  Increase the displayed address in disassembly or section header printing by
108a8ed354bSJames Henderson  the specified offset.
1094a68586dSMichael Trent
110a8ed354bSJames Henderson.. option:: --arch-name=<string>
1114a68586dSMichael Trent
112a8ed354bSJames Henderson  Specify the target architecture when disassembling. Use :option:``--version``
113a8ed354bSJames Henderson  for a list of available targets.
1144a68586dSMichael Trent
115a8ed354bSJames Henderson.. option:: -C, --demangle
1164a68586dSMichael Trent
117a8ed354bSJames Henderson  Demangle symbol names in the output.
1184a68586dSMichael Trent
119a8ed354bSJames Henderson.. option:: -j, --section=<section1[,section2,...]>
1204a68586dSMichael Trent
121a8ed354bSJames Henderson  Perform the specified command(s) on the specified section(s) only. For Mach-O
122a8ed354bSJames Henderson  use `segment,section` to specify the section name.
1234a68586dSMichael Trent
124a8ed354bSJames Henderson.. option:: -l, --line-numbers
1254a68586dSMichael Trent
126a8ed354bSJames Henderson  When disassembling, display source line numbers with disassembly. Implies
127a8ed354bSJames Henderson  :option:`--disassemble`.
1284a68586dSMichael Trent
129a8ed354bSJames Henderson.. option:: -M, --disassembler-options=<opt1[,opt2,...]>
1304a68586dSMichael Trent
131a8ed354bSJames Henderson  Pass target-specific disassembler options. Currently supported for ARM targets
132a8ed354bSJames Henderson  only. Available options are ``reg-names-std`` and ``reg-names-raw``.
1334a68586dSMichael Trent
134a8ed354bSJames Henderson.. option:: --mcpu=<cpu-name>
1354a68586dSMichael Trent
136a8ed354bSJames Henderson  Target a specific CPU type for disassembly. Specify ``--mcpu=help`` to display
137a8ed354bSJames Henderson  available CPUs.
1384a68586dSMichael Trent
139a8ed354bSJames Henderson.. option:: --mattr=<a1,+a2,-a3,...>
1404a68586dSMichael Trent
141a8ed354bSJames Henderson  Enable/disable target-specific attributes. Specify ``--mcpu=help`` to display
142a8ed354bSJames Henderson  the available attributes.
1434a68586dSMichael Trent
144a8ed354bSJames Henderson.. option:: --no-leading-addr
1454a68586dSMichael Trent
146a8ed354bSJames Henderson  When disassembling, do not print the leading address in the disassembly
147a8ed354bSJames Henderson  output.
1484a68586dSMichael Trent
149a8ed354bSJames Henderson.. option:: --no-show-raw-insn
1504a68586dSMichael Trent
151a8ed354bSJames Henderson  When disassembling instructions, do not print the raw bytes of the
152a8ed354bSJames Henderson  instruction.
153a8ed354bSJames Henderson
154a8ed354bSJames Henderson.. option:: --print-imm-hex
155a8ed354bSJames Henderson
156a8ed354bSJames Henderson  Use hex format when printing immediate values in disassembly output.
157a8ed354bSJames Henderson
158a8ed354bSJames Henderson.. option:: -S, --source
159a8ed354bSJames Henderson
160a8ed354bSJames Henderson  When disassembling, display source inlined with the disassembly.
161a8ed354bSJames Henderson  Implies :option:`--disassemble`.
162a8ed354bSJames Henderson
163a8ed354bSJames Henderson.. option:: --show-lma
164a8ed354bSJames Henderson
165a8ed354bSJames Henderson  Display the LMA column when dumping ELF section headers. Defaults to off
166a8ed354bSJames Henderson  unless any section has different VMA and LMAs.
167a8ed354bSJames Henderson
168a8ed354bSJames Henderson.. option:: --start-address=<address>
169a8ed354bSJames Henderson
170a8ed354bSJames Henderson  When disassembling, only disassemble from the specified address.
171a8ed354bSJames Henderson
172a8ed354bSJames Henderson  When printing relocations, only print the relocations patching offsets from at least ``address``.
173a8ed354bSJames Henderson
174a8ed354bSJames Henderson  When printing symbols, only print symbols with a value of at least ``address``.
175a8ed354bSJames Henderson
176a8ed354bSJames Henderson.. option:: --stop-address=<address>
177a8ed354bSJames Henderson
178a8ed354bSJames Henderson  When disassembling, only disassemble up to, but not including the specified address.
179a8ed354bSJames Henderson
180a8ed354bSJames Henderson  When printing relocations, only print the relocations patching offsets up to ``address``.
181a8ed354bSJames Henderson
182a8ed354bSJames Henderson  When printing symbols, only print symbols with a value up to ``address``.
183a8ed354bSJames Henderson
184a8ed354bSJames Henderson.. option:: --triple=<string>
185a8ed354bSJames Henderson
186a8ed354bSJames Henderson  Target triple to disassemble for, see ``--version`` for available targets.
187a8ed354bSJames Henderson
188a8ed354bSJames Henderson.. option:: -w, --wide
189a8ed354bSJames Henderson
190a8ed354bSJames Henderson  Ignored for compatibility with GNU objdump.
191a8ed354bSJames Henderson
192a8ed354bSJames Henderson.. option:: --x86-asm-syntax=<style>
193a8ed354bSJames Henderson
194a8ed354bSJames Henderson  When used with the ``--disassemble`` option, choose style of code to emit from
1954a68586dSMichael Trent  X86 backend. Supported values are:
1964a68586dSMichael Trent
1974a68586dSMichael Trent   .. option:: att
1984a68586dSMichael Trent
1994a68586dSMichael Trent    AT&T-style assembly
2004a68586dSMichael Trent
2014a68586dSMichael Trent   .. option:: intel
2024a68586dSMichael Trent
2034a68586dSMichael Trent    Intel-style assembly
2044a68586dSMichael Trent
2054a68586dSMichael Trent
2064a68586dSMichael Trent  The default disassembly style is **att**.
2074a68586dSMichael Trent
208a8ed354bSJames Henderson.. option:: -z, --disassemble-zeroes
209a8ed354bSJames Henderson
210a8ed354bSJames Henderson  Do not skip blocks of zeroes when disassembling.
211a8ed354bSJames Henderson
212*f7212dbeSJames Henderson.. option:: @<FILE>
213*f7212dbeSJames Henderson
214*f7212dbeSJames Henderson  Read command-line options and commands from response file `<FILE>`.
215*f7212dbeSJames Henderson
216a8ed354bSJames HendersonMACH-O ONLY OPTIONS AND COMMANDS
217a8ed354bSJames Henderson--------------------------------
218a8ed354bSJames Henderson
219a8ed354bSJames Henderson.. option:: --arch=<architecture>
220a8ed354bSJames Henderson
221a8ed354bSJames Henderson  Specify the architecture to disassemble. see ``--version`` for available
222a8ed354bSJames Henderson  architectures.
223a8ed354bSJames Henderson
224a8ed354bSJames Henderson.. option:: --archive-member-offsets
225a8ed354bSJames Henderson
226a8ed354bSJames Henderson  Print the offset to each archive member for Mach-O archives (requires
227a8ed354bSJames Henderson  :option:`--archive-headers`).
228a8ed354bSJames Henderson
229a8ed354bSJames Henderson.. option:: --bind
230a8ed354bSJames Henderson
231a8ed354bSJames Henderson  Display binding info
232a8ed354bSJames Henderson
233a8ed354bSJames Henderson.. option:: --cfg
234a8ed354bSJames Henderson
235a8ed354bSJames Henderson  Create a CFG for every symbol in the object file and write it to a graphviz
236a8ed354bSJames Henderson  file.
237a8ed354bSJames Henderson
238a8ed354bSJames Henderson.. option:: --data-in-code
239a8ed354bSJames Henderson
240a8ed354bSJames Henderson  Display the data in code table.
241a8ed354bSJames Henderson
242a8ed354bSJames Henderson.. option:: --dis-symname=<name>
243a8ed354bSJames Henderson
244a8ed354bSJames Henderson  Disassemble just the specified symbol's instructions.
245a8ed354bSJames Henderson
246a8ed354bSJames Henderson.. option:: --dylibs-used
247a8ed354bSJames Henderson
248a8ed354bSJames Henderson  Display the shared libraries used for linked files.
249a8ed354bSJames Henderson
250a8ed354bSJames Henderson.. option:: --dsym=<string>
251a8ed354bSJames Henderson
252a8ed354bSJames Henderson  Use .dSYM file for debug info.
253a8ed354bSJames Henderson
254a8ed354bSJames Henderson.. option:: --dylib-id
255a8ed354bSJames Henderson
256a8ed354bSJames Henderson  Display the shared library's ID for dylib files.
257a8ed354bSJames Henderson
258a8ed354bSJames Henderson.. option:: --exports-trie
259a8ed354bSJames Henderson
260a8ed354bSJames Henderson  Display exported symbols.
261a8ed354bSJames Henderson
262a8ed354bSJames Henderson.. option:: -g
263a8ed354bSJames Henderson
264a8ed354bSJames Henderson  Print line information from debug info if available.
265a8ed354bSJames Henderson
266a8ed354bSJames Henderson.. option:: --full-leading-addr
267a8ed354bSJames Henderson
268a8ed354bSJames Henderson  Print the full leading address when disassembling.
269a8ed354bSJames Henderson
270a8ed354bSJames Henderson.. option:: --indirect-symbols
271a8ed354bSJames Henderson
272a8ed354bSJames Henderson  Display the indirect symbol table.
273a8ed354bSJames Henderson
274a8ed354bSJames Henderson.. option:: --info-plist
275a8ed354bSJames Henderson
276a8ed354bSJames Henderson  Display the info plist section as strings.
277a8ed354bSJames Henderson
278a8ed354bSJames Henderson.. option:: --lazy-bind
279a8ed354bSJames Henderson
280a8ed354bSJames Henderson  Display lazy binding info.
281a8ed354bSJames Henderson
282a8ed354bSJames Henderson.. option:: --link-opt-hints
283a8ed354bSJames Henderson
284a8ed354bSJames Henderson  Display the linker optimization hints.
285a8ed354bSJames Henderson
286a8ed354bSJames Henderson.. option:: -m, --macho
287a8ed354bSJames Henderson
288a8ed354bSJames Henderson  Use Mach-O specific object file parser. Commands and other options may behave
289a8ed354bSJames Henderson  differently when used with ``--macho``.
290a8ed354bSJames Henderson
291a8ed354bSJames Henderson.. option:: --no-leading-headers
292a8ed354bSJames Henderson
293a8ed354bSJames Henderson  Do not print any leading headers.
294a8ed354bSJames Henderson
295a8ed354bSJames Henderson.. option:: --no-symbolic-operands
296a8ed354bSJames Henderson
297a8ed354bSJames Henderson  Do not print symbolic operands when disassembling.
298a8ed354bSJames Henderson
299a8ed354bSJames Henderson.. option:: --non-verbose
300a8ed354bSJames Henderson
301a8ed354bSJames Henderson  Display the information for Mach-O objects in non-verbose or numeric form.
302a8ed354bSJames Henderson
303a8ed354bSJames Henderson.. option:: --objc-meta-data
304a8ed354bSJames Henderson
305a8ed354bSJames Henderson  Display the Objective-C runtime meta data.
306a8ed354bSJames Henderson
307a8ed354bSJames Henderson.. option:: --private-header
308a8ed354bSJames Henderson
309a8ed354bSJames Henderson  Display only the first format specific file header.
310a8ed354bSJames Henderson
311a8ed354bSJames Henderson.. option:: --rebase
312a8ed354bSJames Henderson
313a8ed354bSJames Henderson  Display rebasing information.
314a8ed354bSJames Henderson
315a8ed354bSJames Henderson.. option:: --universal-headers
316a8ed354bSJames Henderson
317a8ed354bSJames Henderson  Display universal headers.
318a8ed354bSJames Henderson
319a8ed354bSJames Henderson.. option:: --weak-bind
320a8ed354bSJames Henderson
321a8ed354bSJames Henderson  Display weak binding information.
322a8ed354bSJames Henderson
3234a68586dSMichael TrentBUGS
3244a68586dSMichael Trent----
3254a68586dSMichael Trent
3264a68586dSMichael TrentTo report bugs, please visit <http://llvm.org/bugs/>.
3274a68586dSMichael Trent
3284a68586dSMichael TrentSEE ALSO
3294a68586dSMichael Trent--------
3304a68586dSMichael Trent
331a8ed354bSJames Henderson:manpage:`llvm-nm(1)`, :manpage:`llvm-readobj(1)`
332