binutils-gdb/binutils/doc/debug.options.texi
Nick Clifton d85bf2ba86 Add ability to follow dwo links to readelf/objdump.
* dwarf.c (dwo_name, dwo_dir, dwo_id, dwo_id_len): New variables.
	(read_and_display_attr_value): Record dwo variables if requested.
	(display_augmentation_data): Rename to display_data and make
	generic.
	(load_dwo_file): New function.  Loads a separate dwarf object
	file.
	(load_separate_debug_file): Add reporting and loading of separate
	dwarf objet files.
	* readelf.c (process_section_headers): Add do_debug_links to list
	of flags requiring a debug dump.
	(display_debug_section): Tidy up code.
	* doc/debug.options.texi: Add note that dwo links will also be
	followed.
	* testsuite/binutils-all/debuglink.s: Tidy code.
	* testsuite/binutils-all/dwo.s: New test file.
	* testsuite/binutils-all/readelf.wk2: New file - expected output
	from readelf.
	* testsuite/binutils-all/readelf.exp: Run the new test.
2017-11-21 13:12:04 +00:00

145 lines
4.2 KiB
Plaintext

@c This file contains the entry for the -w/--debug-dump (readelf) and
@c -W/--dwarf (objdump) option that is common to both readelf and objdump.
Displays the contents of the DWARF debug sections in the file, if any
are present. Compressed debug sections are automatically decompressed
(temporarily) before they are displayed. If one or more of the
optional letters or words follows the switch then only those type(s)
of data will be dumped. The letters and words refer to the following
information:
@c Please Keep This Table Alpha Sorted.
@table @code
@item a
@itemx =abbrev
Displays the contents of the @samp{.debug_abbrev} section.
@item A
@itemx =addr
Displays the contents of the @samp{.debug_addr} section.
@item c
@itemx =cu_index
Displays the contents of the @samp{.debug_cu_index} and/or
@samp{.debug_tu_index} sections.
@item f
@itemx =frames
Display the raw contents of a @samp{.debug_frame} section.
@item F
@item =frame-interp
Display the interpreted contents of a @samp{.debug_frame} section.
@item g
@itemx =gdb_index
Displays the contents of the @samp{.gdb_index} and/or
@samp{.debug_names} sections.
@item i
@itemx =info
Displays the contents of the @samp{.debug_info} section. Note: the
output from this option can also be restricted by the use of the
@option{--dwarf-depth} and @option{--dwarf-start} options.
@item k
@itemx =links
Displays the contents of the @samp{.gnu_debuglink} and/or
@samp{.gnu_debugaltlink} sections. Also displays the link to a
separate dwarf object file (dwo), if one is specified by the
DW_AT_GNU_dwo_name or DW_AT_dwo_name attributes in the
@samp{.debug_info} section.
@item K
@itemx =follow-links
Display the contents of any selected debug sections that are found in
a linked, separate debug info file. This can result in multiple
versions of the same debug section being displayed if both the main
file and the separate debug info file contain sections with the same
name.
In addition, when displaying DWARF attributes, if a form is found that
references the separate debug info file, then the referenced contents
will also be displayed.
@item l
@itemx =rawline
Displays the contents of the @samp{.debug_line} section in a raw
format.
@item L
@item =decodedline
Displays the interpreted contents of the @samp{.debug_line} section.
@item m
@itemx =macro
Displays the contents of the @samp{.debug_macro} and/or
@samp{.debug_macinfo} sections.
@item o
@itemx =loc
Displays the contents of the @samp{.debug_loc} and/or
@samp{.debug_loclists} sections.
@item p
@itemx =pubnames
Displays the contents of the @samp{.debug_pubnames} and/or
@samp{.debug_gnu_pubnames} sections.
@item r
@itemx =aranges
Displays the contents of the @samp{.debug_aranges} section.
@item R
@itemx =Ranges
Displays the contents of the @samp{.debug_ranges} and/or
@samp{.debug_rnglists} sections.
@item s
@itemx =str
Displays the contents of the @samp{.debug_str}, @samp{.debug_line_str}
and/or @samp{.debug_str_offsets} sections.
@item t
@itemx =pubtype
Displays the contents of the @samp{.debug_pubtypes} and/or
@samp{.debug_gnu_pubtypes} sections.
@item T
@itemx =trace_aranges
Displays the contents of the @samp{.trace_aranges} section.
@item u
@itemx =trace_abbrev
Displays the contents of the @samp{.trace_abbrev} section.
@item U
@itemx =trace_info
Displays the contents of the @samp{.trace_info} section.
@end table
Note: displaying the contents of @samp{.debug_static_funcs},
@samp{.debug_static_vars} and @samp{debug_weaknames} sections is not
currently supported.
@item --dwarf-depth=@var{n}
Limit the dump of the @code{.debug_info} section to @var{n} children.
This is only useful with @option{--debug-dump=info}. The default is
to print all DIEs; the special value 0 for @var{n} will also have this
effect.
With a non-zero value for @var{n}, DIEs at or deeper than @var{n}
levels will not be printed. The range for @var{n} is zero-based.
@item --dwarf-start=@var{n}
Print only DIEs beginning with the DIE numbered @var{n}. This is only
useful with @option{--debug-dump=info}.
If specified, this option will suppress printing of any header
information and all DIEs before the DIE numbered @var{n}. Only
siblings and children of the specified DIE will be printed.
This can be used in conjunction with @option{--dwarf-depth}.