d85bf2ba86
* 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.
145 lines
4.2 KiB
Plaintext
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}.
|
|
|