| llvm-dwarfdump - dump and verify DWARF debug information |
| ======================================================== |
| |
| SYNOPSIS |
| -------- |
| |
| :program:`llvm-dwarfdump` [*options*] [*filename ...*] |
| |
| DESCRIPTION |
| ----------- |
| |
| :program:`llvm-dwarfdump` parses DWARF sections in object files, |
| archives, and `.dSYM` bundles and prints their contents in |
| human-readable form. Only the .debug_info section is printed unless one of |
| the section-specific options or :option:`--all` is specified. |
| |
| OPTIONS |
| ------- |
| |
| .. option:: -a, --all |
| |
| Disassemble all supported DWARF sections. |
| |
| .. option:: --arch=<arch> |
| |
| Dump DWARF debug information for the specified CPU architecture. |
| Architectures may be specified by name or by number. This |
| option can be specified multiple times, once for each desired |
| architecture. All CPU architectures will be printed by |
| default. |
| |
| .. option:: -c, --show-children |
| |
| Show a debug info entry's children when using |
| the :option:`--debug-info`, :option:`--find`, |
| and :option:`--name` options. |
| |
| .. option:: -f <name>, --find=<name> |
| |
| Search for the exact text <name> in the accelerator tables |
| and print the matching debug information entries. |
| When there is no accelerator tables or the name of the DIE |
| you are looking for is not found in the accelerator tables, |
| try using the slower but more complete :option:`--name` option. |
| |
| .. option:: -F, --show-form |
| |
| Show DWARF form types after the DWARF attribute types. |
| |
| .. option:: -h, --help |
| |
| Show help and usage for this command. |
| |
| .. option:: -i, --ignore-case |
| |
| Ignore case distinctions in when searching entries by name |
| or by regular expression. |
| |
| .. option:: -n <pattern>, --name=<pattern> |
| |
| Find and print all debug info entries whose name |
| (`DW_AT_name` attribute) matches the exact text in |
| <pattern>. Use the :option:`--regex` option to have |
| <pattern> become a regular expression for more flexible |
| pattern matching. |
| |
| .. option:: --lookup=<address> |
| |
| Lookup <address> in the debug information and print out the file, |
| function, block, and line table details. |
| |
| .. option:: -o <path>, --out-file=<path> |
| |
| Redirect output to a file specified by <path>. |
| |
| .. option:: -p, --show-parents |
| |
| Show a debug info entry's parent objects when using the |
| :option:`--debug-info`, :option:`--find`, and |
| :option:`--name` options. |
| |
| .. option:: -r <n>, --recurse-depth=<n> |
| |
| Only recurse to a maximum depth of <n> when dumping debug info |
| entries. |
| |
| .. option:: --statistics |
| |
| Collect debug info quality metrics and print the results |
| as machine-readable single-line JSON output. |
| |
| .. option:: -x, --regex |
| |
| Treat any <pattern> strings as regular expressions when searching |
| instead of just as an exact string match. |
| |
| .. option:: -u, --uuid |
| |
| Show the UUID for each architecture. |
| |
| .. option:: --diff |
| |
| Dump the output in a format that is more friendly for comparing |
| DWARF output from two different files. |
| |
| .. option:: -v, --verbose |
| |
| Display verbose information when dumping. This can help to debug |
| DWARF issues. |
| |
| .. option:: --verify |
| |
| Verify the structure of the DWARF information by verifying the |
| compile unit chains, DIE relationships graph, address |
| ranges, and more. |
| |
| .. option:: --version |
| |
| Display the version of the tool. |
| |
| .. option:: --debug-abbrev, --debug-aranges, --debug-cu-index, --debug-frame [=<offset>], --debug-gnu-pubnames, --debug-gnu-pubtypes, --debug-info [=<offset>], --debug-line [=<offset>], --debug-loc [=<offset>], --debug-macro, --debug-pubnames, --debug-pubtypes, --debug-ranges, --debug-str, --debug-str-offsets, --debug-tu-index, --debug-types, --eh-frame, --gdb-index, --apple-names, --apple-types, --apple-namespaces, --apple-objc |
| |
| Dump the specified DWARF section by name. Only the |
| `.debug_info` section is shown by default. Some entries |
| support adding an `=<offset>` as a way to provide an |
| optional offset of the exact entry to dump within the |
| respective section. When an offset is provided, only the |
| entry at that offset will be dumped, else the entire |
| section will be dumped. Children of items at a specific |
| offset can be dumped by also using the |
| :option:`--show-children` option where applicable. |
| |
| EXIT STATUS |
| ----------- |
| |
| :program:`llvm-dwarfdump` returns 0 if the input files were parsed and dumped |
| successfully. Otherwise, it returns 1. |
| |
| SEE ALSO |
| -------- |
| |
| :manpage:`dsymutil(1)` |