llvm-objdump - LLVM's object file dumper ======================================== .. program:: llvm-objdump SYNOPSIS -------- :program:`llvm-objdump` [*commands*] [*options*] [*filenames...*] DESCRIPTION ----------- The :program:`llvm-objdump` utility prints the contents of object files and final linked images named on the command line. If no file name is specified, :program:`llvm-objdump` will attempt to read from *a.out*. If *-* is used as a file name, :program:`llvm-objdump` will process a file on its standard input stream. COMMANDS -------- At least one of the following commands are required, and some commands can be combined with other commands: .. option:: -a, --archive-headers Display the information contained within an archive's headers. .. option:: -d, --disassemble Disassemble all text sections found in the input files. .. option:: -D, --disassemble-all Disassemble all sections found in the input files. .. option:: --disassemble-functions=<symbol1[,symbol2,...]> Disassemble only the specified symbols. Takes demangled symbol names when :option:`--demangle` is specified, otherwise takes mangled symbol names. Implies :option:`--disassemble`. .. option:: --dwarf=<value> Dump the specified DWARF debug sections. The supported values are: `frames` - .debug_frame .. option:: -f, --file-headers Display the contents of the overall file header. .. option:: --fault-map-section Display the content of the fault map section. .. option:: -h, --headers, --section-headers Display summaries of the headers for each section. .. option:: --help Display usage information and exit. Does not stack with other commands. .. option:: -p, --private-headers Display format-specific file headers. .. option:: -r, --reloc Display the relocation entries in the file. .. option:: -R, --dynamic-reloc Display the dynamic relocation entries in the file. .. option:: --raw-clang-ast Dump the raw binary contents of the clang AST section. .. option:: -s, --full-contents Display the contents of each section. .. option:: -t, --syms Display the symbol table. .. option:: -u, --unwind-info Display the unwind info of the input(s). .. option:: --version Display the version of the :program:`llvm-objdump` executable. Does not stack with other commands. .. option:: -x, --all-headers Display all available header information. Equivalent to specifying :option:`--archive-headers`, :option:`--file-headers`, :option:`--private-headers`, :option:`--reloc`, :option:`--section-headers`, and :option:`--syms`. OPTIONS ------- :program:`llvm-objdump` supports the following options: .. option:: --adjust-vma=<offset> Increase the displayed address in disassembly or section header printing by the specified offset. .. option:: --arch-name=<string> Specify the target architecture when disassembling. Use :option:`--version` for a list of available targets. .. option:: -C, --demangle Demangle symbol names in the output. .. option:: -j, --section=<section1[,section2,...]> Perform commands on the specified sections only. For Mach-O use `segment,section` to specify the section name. .. option:: -l, --line-numbers When disassembling, display source line numbers. Implies :option:`--disassemble`. .. option:: -M, --disassembler-options=<opt1[,opt2,...]> Pass target-specific disassembler options. Currently supported for ARM targets only. Available options are ``reg-names-std`` and ``reg-names-raw``. .. option:: --mcpu=<cpu-name> Target a specific CPU type for disassembly. Specify ``--mcpu=help`` to display available CPUs. .. option:: --mattr=<a1,+a2,-a3,...> Enable/disable target-specific attributes. Specify ``--mcpu=help`` to display the available attributes. .. option:: --no-leading-addr When disassembling, do not print leading addresses. .. option:: --no-show-raw-insn When disassembling, do not print the raw bytes of each instruction. .. option:: --print-imm-hex Use hex format when printing immediate values in disassembly output. .. option:: -S, --source When disassembling, display source interleaved with the disassembly. Implies :option:`--disassemble`. .. option:: --show-lma Display the LMA column when dumping ELF section headers. Defaults to off unless any section has different VMA and LMAs. .. option:: --start-address=<address> When disassembling, only disassemble from the specified address. When printing relocations, only print the relocations patching offsets from at least ``address``. When printing symbols, only print symbols with a value of at least ``address``. .. option:: --stop-address=<address> When disassembling, only disassemble up to, but not including the specified address. When printing relocations, only print the relocations patching offsets up to ``address``. When printing symbols, only print symbols with a value up to ``address``. .. option:: --triple=<string> Target triple to disassemble for, see ``--version`` for available targets. .. option:: -w, --wide Ignored for compatibility with GNU objdump. .. option:: --x86-asm-syntax=<style> When used with :option:`--disassemble`, choose style of code to emit from X86 backend. Supported values are: .. option:: att AT&T-style assembly .. option:: intel Intel-style assembly The default disassembly style is **att**. .. option:: -z, --disassemble-zeroes Do not skip blocks of zeroes when disassembling. .. option:: @<FILE> Read command-line options and commands from response file `<FILE>`. MACH-O ONLY OPTIONS AND COMMANDS -------------------------------- .. option:: --arch=<architecture> Specify the architecture to disassemble. see ``--version`` for available architectures. .. option:: --archive-member-offsets Print the offset to each archive member for Mach-O archives (requires :option:`--archive-headers`). .. option:: --bind Display binding info .. option:: --cfg Create a CFG for every symbol in the object file and write it to a graphviz file. .. option:: --data-in-code Display the data in code table. .. option:: --dis-symname=<name> Disassemble just the specified symbol's instructions. .. option:: --dylibs-used Display the shared libraries used for linked files. .. option:: --dsym=<string> Use .dSYM file for debug info. .. option:: --dylib-id Display the shared library's ID for dylib files. .. option:: --exports-trie Display exported symbols. .. option:: -g Print line information from debug info if available. .. option:: --full-leading-addr Print the full leading address when disassembling. .. option:: --indirect-symbols Display the indirect symbol table. .. option:: --info-plist Display the info plist section as strings. .. option:: --lazy-bind Display lazy binding info. .. option:: --link-opt-hints Display the linker optimization hints. .. option:: -m, --macho Use Mach-O specific object file parser. Commands and other options may behave differently when used with ``--macho``. .. option:: --no-leading-headers Do not print any leading headers. .. option:: --no-symbolic-operands Do not print symbolic operands when disassembling. .. option:: --non-verbose Display the information for Mach-O objects in non-verbose or numeric form. .. option:: --objc-meta-data Display the Objective-C runtime meta data. .. option:: --private-header Display only the first format specific file header. .. option:: --rebase Display rebasing information. .. option:: --universal-headers Display universal headers. .. option:: --weak-bind Display weak binding information. BUGS ---- To report bugs, please visit <http://llvm.org/bugs/>. SEE ALSO -------- :manpage:`llvm-nm(1)`, :manpage:`llvm-readelf(1)`, :manpage:`llvm-readobj(1)`