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