llvm-readobj - LLVM Object Reader ================================= .. program:: llvm-readobj SYNOPSIS -------- :program:`llvm-readobj` [*options*] [*input...*] DESCRIPTION ----------- The :program:`llvm-readobj` tool displays low-level format-specific information about one or more object files. If ``input`` is "``-``", :program:`llvm-readobj` reads from standard input. Otherwise, it will read from the specified ``filenames``. DIFFERENCES TO LLVM-READELF --------------------------- :program:`llvm-readelf` is an alias for the :manpage:`llvm-readobj` tool with a slightly different command-line interface and output that is GNU compatible. Following is a list of differences between :program:`llvm-readelf` and :program:`llvm-readobj`: - :program:`llvm-readelf` uses `GNU` for the :option:`--elf-output-style` option by default. :program:`llvm-readobj` uses `LLVM`. - :program:`llvm-readelf` allows single-letter grouped flags (e.g. ``llvm-readelf -SW`` is the same as ``llvm-readelf -S -W``). :program:`llvm-readobj` does not allow grouping. - :program:`llvm-readelf` provides :option:`-s` as an alias for :option:`--symbols`, for GNU :program:`readelf` compatibility, whereas it is an alias for :option:`--section-headers` in :program:`llvm-readobj`. - :program:`llvm-readobj` provides ``-t`` as an alias for :option:`--symbols`. :program:`llvm-readelf` does not. - :program:`llvm-readobj` provides ``--sr``, ``--sd``, ``--st`` and ``--dt`` as aliases for :option:`--section-relocations`, :option:`--section-data`, :option:`--section-symbols` and :option:`--dyn-symbols` respectively. :program:`llvm-readelf` does not provide these aliases, to avoid conflicting with grouped flags. GENERAL AND MULTI-FORMAT OPTIONS -------------------------------- These options are applicable to more than one file format, or are unrelated to file formats. .. option:: --all Equivalent to specifying all the main display options relevant to the file format. .. option:: --addrsig Display the address-significance table. .. option:: --expand-relocs When used with :option:`--relocs`, display each relocation in an expanded multi-line format. .. option:: --file-header, -h Display file headers. .. option:: --headers, -e Equivalent to setting: :option:`--file-header`, :option:`--program-headers`, and :option:`--sections`. .. option:: --help Display a summary of command line options. .. option:: --hex-dump=, -x Display the specified section(s) as hexadecimal bytes. ``section`` may be a section index or section name. .. option:: --needed-libs Display the needed libraries. .. option:: --relocations, --relocs, -r Display the relocation entries in the file. .. option:: --sections, --section-headers, -S Display all sections. .. option:: --section-data, --sd When used with :option:`--sections`, display section data for each section shown. This option has no effect for GNU style output. .. option:: --section-relocations, --sr When used with :option:`--sections`, display relocations for each section shown. This option has no effect for GNU style output. .. option:: --section-symbols, --st When used with :option:`--sections`, display symbols for each section shown. This option has no effect for GNU style output. .. option:: --stackmap Display contents of the stackmap section. .. option:: --string-dump=, -p Display the specified section(s) as a list of strings. ``section`` may be a section index or section name. .. option:: --string-table Display contents of the string table. .. option:: --symbols, --syms, -s Display the symbol table. .. option:: --unwind, -u Display unwind information. .. option:: --version Display the version of the :program:`llvm-readobj` executable. .. option:: @ Read command-line options from response file ``. ELF SPECIFIC OPTIONS -------------------- The following options are implemented only for the ELF file format. .. option:: --arch-specific, -A Display architecture-specific information, e.g. the ARM attributes section on ARM. .. option:: --bb-addr-map Display the contents of the basic block address map section(s), which contain the address of each function, along with the relative offset of each basic block. .. option:: --demangle, -C Display demangled symbol names in the output. .. option:: --dependent-libraries Display the dependent libraries section. .. option:: --dyn-relocations Display the dynamic relocation entries. .. option:: --dyn-symbols, --dyn-syms, --dt Display the dynamic symbol table. .. option:: --dynamic-table, --dynamic, -d Display the dynamic table. .. option:: --cg-profile Display the callgraph profile section. .. option:: --histogram, -I Display a bucket list histogram for dynamic symbol hash tables. .. option:: --elf-linker-options Display the linker options section. .. option:: --elf-output-style= Format ELF information in the specified style. Valid options are ``LLVM``, ``GNU``, and ``JSON``. ``LLVM`` output (the default) is an expanded and structured format. ``GNU`` output mimics the equivalent GNU :program:`readelf` output. ``JSON`` is JSON formatted output intended for machine consumption. .. option:: --section-groups, -g Display section groups. .. option:: --gnu-hash-table Display the GNU hash table for dynamic symbols. .. option:: --hash-symbols Display the expanded hash table with dynamic symbol data. .. option:: --hash-table Display the hash table for dynamic symbols. .. option:: --notes, -n Display all notes. .. option:: --pretty-print When used with :option:`--elf-output-style`, JSON output will be formatted in a more readable format. .. option:: --program-headers, --segments, -l Display the program headers. .. option:: --raw-relr Do not decode relocations in RELR relocation sections when displaying them. .. option:: --section-mapping Display the section to segment mapping. .. option:: --stack-sizes Display the contents of the stack sizes section(s), i.e. pairs of function names and the size of their stack frames. Currently only implemented for GNU style output. .. option:: --version-info, -V Display version sections. MACH-O SPECIFIC OPTIONS ----------------------- The following options are implemented only for the Mach-O file format. .. option:: --macho-data-in-code Display the Data in Code command. .. option:: --macho-dsymtab Display the Dsymtab command. .. option:: --macho-indirect-symbols Display indirect symbols. .. option:: --macho-linker-options Display the Mach-O-specific linker options. .. option:: --macho-segment Display the Segment command. .. option:: --macho-version-min Display the version min command. PE/COFF SPECIFIC OPTIONS ------------------------ The following options are implemented only for the PE/COFF file format. .. option:: --codeview Display CodeView debug information. .. option:: --codeview-ghash Enable global hashing for CodeView type stream de-duplication. .. option:: --codeview-merged-types Display the merged CodeView type stream. .. option:: --codeview-subsection-bytes Dump raw contents of CodeView debug sections and records. .. option:: --coff-basereloc Display the .reloc section. .. option:: --coff-debug-directory Display the debug directory. .. option:: --coff-tls-directory Display the TLS directory. .. option:: --coff-directives Display the .drectve section. .. option:: --coff-exports Display the export table. .. option:: --coff-imports Display the import table. .. option:: --coff-load-config Display the load config. .. option:: --coff-resources Display the .rsrc section. XCOFF SPECIFIC OPTIONS ---------------------- The following options are implemented only for the XCOFF file format. .. option:: --auxiliary-header Display XCOFF Auxiliary header. EXIT STATUS ----------- :program:`llvm-readobj` returns 0 under normal operation. It returns a non-zero exit code if there were any errors. SEE ALSO -------- :manpage:`llvm-nm(1)`, :manpage:`llvm-objdump(1)`, :manpage:`llvm-readelf(1)`