Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LLVM-DWARFDUMP(1)		     LLVM		     LLVM-DWARFDUMP(1)

NAME
       llvm-dwarfdump -	dump and verify	DWARF debug information

SYNOPSIS
       llvm-dwarfdump [options]	[filename ...]

DESCRIPTION
       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 --all	is specified.

       If no input file	is specified, a.out is used instead. If	- is  used  as
       the  input file,	llvm-dwarfdump reads the input from its	standard input
       stream.

OPTIONS
       -a, --all
	      Dump all supported DWARF sections.

       --arch=<arch>
	      Dump DWARF debug information for the specified CPU architecture.
	      Architectures may	be specified by	name or	by number.   This  op-
	      tion  can	be specified multiple times, once for each desired ar-
	      chitecture.  All CPU architectures will be printed by default.

       -c, --show-children
	      Show a debug info	entry's	 children  when	 selectively  printing
	      with  the	=<offset> argument of --debug-info, or options such as
	      --find or	--name.

       --color
	      Use colors in output.

       --error-display=<value>
	      Set the level of detail and summary to display  when  verifying.
	      Implies --verify.	The supported values are:

	      quiet    - Only display whether errors occurred.	summary	- Dis-
	      play only	a summary of the errors	found.	details	- Display each
	      error in detail but no summary.  full    - Display each error as
	      well as a	summary. [default]

       -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 --name option.

       -F, --show-form
	      Show DWARF form types after the DWARF attribute types.

       -h, --help
	      Show help	and usage for this command.

       --help-list
	      Show  help  and  usage for this command without grouping the op-
	      tions into categories.

       -i, --ignore-case
	      Ignore case distinctions when using --name.

       -n <name>, --name=<name>
	      Find and print all debug info entries whose name (DW_AT_name at-
	      tribute) is <name>.

       --lookup=<address>
	      Look up <address>	in the debug information  and  print  out  the
	      file, function, block, and line table details.

       -o <path>
	      Redirect	output	to  a file specified by	<path>,	where -	is the
	      standard output stream.

       -p, --show-parents
	      Show a debug info	entry's	parents	when selectively printing with
	      the =<offset> argument  of  --debug-info,	 or  options  such  as
	      --find or	--name.

       --parent-recurse-depth=<N>
	      When  displaying	debug  info entry parents, only	show them to a
	      maximum depth of <N>.

       --quiet
	      Use with --verify	to not emit to STDOUT.

       -r <N>, --recurse-depth=<N>
	      When displaying debug info entries, only show children to	a max-
	      imum depth of <N>.

       --show-section-sizes
	      Show the sizes of	all debug sections, expressed in bytes.

       --show-sources
	      Print all	source files mentioned in the debug  information.  Ab-
	      solute paths are given whenever possible.

       --statistics
	      Collect  debug info quality metrics and print the	results	as ma-
	      chine-readable single-line JSON output. The output format	is de-
	      scribed in the section below (FORMAT OF STATISTICS OUTPUT).

       --summarize-types
	      Abbreviate the description of type unit entries.

       -x, --regex
	      Treat any	<name> strings as regular expressions  when  searching
	      with --name. If --ignore-case is also specified, the regular ex-
	      pression becomes case-insensitive.

       -u, --uuid
	      Show the UUID for	each architecture.

       --diff Dump  the	output in a format that	is more	friendly for comparing
	      DWARF output from	two different files.

       -v, --verbose
	      Display verbose information when dumping.	This can help to debug
	      DWARF issues.

       --verify
	      Verify the structure of the DWARF	information by	verifying  the
	      compile  unit  chains,  DIE relationships	graph, address ranges,
	      and more.

       --verify-json=<path>
	      Output JSON-formatted error summary to  the  file	 specified  by
	      <path>. Implies --verify.	 The output format is described	in the
	      section below (FORMAT OF VERIFY JSON OUTPUT).

       --version
	      Display the version of the tool.

       --debug-abbrev, --debug-addr, --debug-aranges, --debug-cu-index,	--de-
       bug-frame [=<offset>], --debug-gnu-pubnames, --debug-gnu-pubtypes,
       --debug-info [=<offset>], --debug-line [=<offset>], --debug-line-str,
       --debug-loc [=<offset>],	--debug-loclists [=<offset>], --debug-macro,
       --debug-names, --debug-pubnames,	--debug-pubtypes, --debug-ranges,
       --debug-rnglists, --debug-str, --debug-str-offsets, --debug-tu-index,
       --debug-types [=<offset>], --eh-frame [=<offset>], --gdb-index, --ap-
       ple-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.

	      The  --debug-macro  option  prints both the .debug_macro and the
	      .debug_macinfo sections.

	      The --debug-frame	and --eh-frame options are aliases,  in	 cases
	      where both sections are present one command outputs both.

       @<FILE>
	      Read command-line	options	from <FILE>.

FORMAT OF STATISTICS OUTPUT
       The  --statistics option	generates single-line JSON output representing
       quality metrics of the processed	debug info. These metrics  are	useful
       to  compare changes between two compilers, particularly for judging the
       effect that a change to the compiler has	on the debug info quality.

       The output is formatted as key-value pairs. The first pair  contains  a
       version number. The following naming scheme is used for the keys:

	   variables ==> local	variables and parameters

	   local vars ==> local variables

	   params ==> formal parameters

       For aggregated values, the following keys are used:

	   sum_of_all_variables(...) ==> the sum applied to all variables

	   #bytes ==> the number of bytes

	   #variables	- entry	values ... ==> the number of variables exclud-
	    ing	the entry values etc.

FORMAT OF VERIFY JSON OUTPUT
       The format of the JSON output created by	the --verify-json is:

	  {
	    "error-categories":	{
	      "<first category description>": {"count":	1234},
	      "<next category description>": {"count": 4321}
	    },
	    "error-count": 5555
	  }

       The following is	generated if there are no errors reported:

	  {
	    "error-categories":	{},
	    "error-count": 0
	  }

EXIT STATUS
       llvm-dwarfdump returns 0	if the input files were	parsed and dumped suc-
       cessfully. Otherwise, it	returns	1.

SEE ALSO
       dsymutil(1)

AUTHOR
       Maintained by the LLVM Team (https://llvm.org/).

COPYRIGHT
       2003-2025, LLVM Project

21				  2025-11-02		     LLVM-DWARFDUMP(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=llvm-dwarfdump-cheriot&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help