LLVM-DWARFDUMP(1)

πŸ’– LLVM-DWARFDUMP(1) πŸ’–

okay so bestie, welcome to llvm-dwarfdump from the User Commands manual β€” yes, the LLVM-DWARFDUMP(1) one, and it's giving debug-info main character energy πŸ’…βœ¨

🌸 NAME 🌸

llvm-dwarfdump β€” manual page for llvm-dwarfdump 18 🫢

πŸ¦‹ DESCRIPTION πŸ¦‹

✨ OVERVIEW ✨

OVERVIEW: pretty-print DWARF debug information in object files and debug info archives. No cap, that's the whole vibe πŸ’–

πŸŽ€ USAGE πŸŽ€

USAGE: llvm-dwarfdump [options] <input object files or .dSYM bundles>

πŸ’… OPTIONS πŸ’…

🌈 Color Options 🌈

  • --color β€” use colors in output (default=autodetect) 🎨

⭐ Generic Options ⭐

  • --help β€” display available options (--help-hidden for more) πŸ™‹β€β™€οΈ
  • --help-list β€” display list of available options (--help-list-hidden for more) πŸ“‹
  • --version β€” display the version of this program πŸ‘‘

πŸ¦‹ Section-specific Dump Options πŸ¦‹

These control which sections are dumped. Where applicable, these parameters take an optional =<offset> argument to dump only the entry at the specified offset 🎯

  • -a β€” alias for --all ✨
  • --all β€” dump all debug info sections πŸ’–
  • --apple-names β€” dump the .apple_names section 🍎
  • --apple-namespaces β€” dump the .apple_namespaces section 🍎
  • --apple-objc β€” dump the .apple_objc section 🍎
  • --apple-types β€” dump the .apple_types section 🍎
  • --debug-abbrev β€” dump the .debug_abbrev section 🧚
  • --debug-addr β€” dump the .debug_addr section 🧚
  • --debug-aranges β€” dump the .debug_aranges section 🧚
  • --debug-cu-index β€” dump the .debug_cu_index section 🧚
  • --debug-frame[=<offset>] β€” dump the .debug_frame section πŸ–ΌοΈ
  • --debug-gnu-pubnames β€” dump the .debug_gnu_pubnames section 🧚
  • --debug-gnu-pubtypes β€” dump the .debug_gnu_pubtypes section 🧚
  • --debug-info[=<offset>] β€” dump the .debug_info section πŸ’œ
  • --debug-line[=<offset>] β€” dump the .debug_line section πŸ’œ
  • --debug-line-str β€” dump the .debug_line_str section 🧚
  • --debug-loc[=<offset>] β€” dump the .debug_loc section πŸ’œ
  • --debug-loclists[=<offset>] β€” dump the .debug_loclists section πŸ’œ
  • --debug-macro β€” dump the .debug_macro section 🧚
  • --debug-names β€” dump the .debug_names section 🧚
  • --debug-pubnames β€” dump the .debug_pubnames section 🧚
  • --debug-pubtypes β€” dump the .debug_pubtypes section 🧚
  • --debug-ranges β€” dump the .debug_ranges section 🧚
  • --debug-rnglists β€” dump the .debug_rnglists section 🧚
  • --debug-str β€” dump the .debug_str section 🧚
  • --debug-str-offsets β€” dump the .debug_str_offsets section 🧚
  • --debug-tu-index β€” dump the .debug_tu_index section 🧚
  • --debug-types[=<offset>] β€” dump the .debug_types section πŸ’œ
  • --eh-frame β€” alias for --debug-frame πŸ–ΌοΈ
  • --gdb-index β€” dump the .gdb_index section 🧚

πŸ“ Specific Options πŸ“

  • -F β€” alias for --show-form πŸ’…
  • --arch=<string> β€” dump debug information for the specified CPU architecture only. Architectures may be specified by name or by number. This option can be specified multiple times, once for each desired architecture πŸ—οΈ
  • -c β€” alias for --show-children πŸ‘Ά
  • --diff β€” emit diff-friendly output by omitting offsets and addresses πŸͺ„
  • --dwo β€” dump the non skeleton DIE in the .dwo or .dwp file after dumping the skeleton DIE from the main executable. This allows dumping the .dwo files with resolved addresses πŸ”₯
  • -f β€” alias for --find πŸ”Ž
  • --find=<name> β€” search for the exact match for <name> in the accelerator tables and print the matching debug information entries. When no accelerator tables are available, the slower but more complete -name option can be used instead πŸ•΅οΈβ€β™€οΈ
  • --find-all-apple β€” print every debug information entry in the accelerator tables 🍎
  • -i β€” alias for --ignore-case πŸ™ˆ
  • --ignore-case β€” ignore case distinctions when using --name 🫢
  • --lookup=<address> β€” lookup <address> in the debug information and print out any available file, function, block and line table details πŸ“
  • -n β€” alias for --name 🏷️
  • --name=<pattern> β€” find and print all debug info entries whose name (DW_AT_name attribute) matches the exact text in <pattern>. When used with the -regex option, <pattern> is interpreted as a regular expression 🧐
  • -o <filename> β€” redirect output to the specified file πŸ“
  • -p β€” alias for --show-parents πŸ‘¨β€πŸ‘©β€πŸ‘§
  • --parent-recurse-depth=<N> β€” only recurse to a depth of N when displaying parents of debug info entries πŸŒ€
  • --quiet β€” use with -verify to not emit to STDOUT 🀫
  • -r β€” alias for --recurse-depth πŸ”
  • --recurse-depth=<N> β€” only recurse to a depth of N when displaying children of debug info entries πŸŒ€
  • --regex β€” treat any <pattern> strings as regular expressions when searching with --name. If --ignore-case is also specified, the regular expression becomes case-insensitive πŸ”€
  • --show-children β€” show a debug info entry's children when selectively printing entries πŸ‘Ά
  • --show-form β€” show DWARF form types after the DWARF attribute types πŸ“š
  • --show-parents β€” show a debug info entry's parents when selectively printing entries πŸ‘¨β€πŸ‘©β€πŸ‘§
  • --show-section-sizes β€” show the sizes of all debug sections, expressed in bytes πŸ“
  • --show-sources β€” show the sources across all compilation units 🌍
  • --statistics β€” emit JSON-formatted debug info quality metrics πŸ“Š
  • --summarize-types β€” abbreviate the description of type unit entries βœ‚οΈ
  • -u β€” alias for --uuid πŸ†”
  • --uuid β€” show the UUID for each architecture πŸ†”
  • -v β€” alias for --verbose πŸ—£οΈ
  • --verbose β€” print more low-level encoding details πŸ”
  • --verify β€” verify the DWARF debug info βœ…
  • -x β€” alias for --regex πŸ”€

Pass @FILE as argument to read options from FILE πŸ“„


xoxo, this iconic page is from llvm-dwarfdump 18, dated June 2025, and it lives under LLVM-DWARFDUMP(1) πŸ’…πŸ«Άβœ¨

πŸ“¦ where this page comes from