Change the readelf and objdump programs so that they will automatically follow links to separate debug info files.
* configure.ac (follow-debug-links): Add option to enable or disable the following of debug links by default. Set the default for the option to be 'follow'. * dwarf.c (do_follow_links): Initialise with DEFAULT_FOR_FOLLOW_LINKS. (dwarf_select_sections_by_names): Add no-follow-links option. (dwarf_select_sections_by_letter): Add 'N' option. * objdump.c (usage): Add conditional text describing the follow links option. (slurp_symtab): Ensure that there is a NULL entry at the end of the symbol table. (slurp_dynamic_symtab): Likewise. (dump_bfd): When extending the symbol table, ensure that there is still a NULL entry at the end. * readelf.c (usage): Add conditional text describing the follow links option. * doc/binutils.texi: Update documentation for objcopy and readelf. * doc/debug.options.texi: Update documentation of the follow-links option. * config.in: Regenerate. * configure: Regenerate. * testsuite/binutils-all/compress.exp: Add the -WN option to objdump command lines that are not expecting to follow links. * testsuite/binutils-all/readelf.exp: Add the --debug-dump=no-follow-links option to tests that are not expecting to follow debug links. gas * testsuite/gas/mach-o/sections-1.d: Stop automatic debug link following. * testsuite/gas/xgate/insns-dwarf2.d: Likewise. ld * testsuite/ld-elf/sec64k.exp: Stop readelf from automatically following debug links.
This commit is contained in:
parent
96df3e28b8
commit
c46b706620
18 changed files with 183 additions and 47 deletions
|
@ -2187,8 +2187,10 @@ objdump [@option{-a}|@option{--archive-headers}]
|
|||
[@option{-r}|@option{--reloc}]
|
||||
[@option{-R}|@option{--dynamic-reloc}]
|
||||
[@option{-s}|@option{--full-contents}]
|
||||
[@option{-W[lLiaprmfFsoORtUuTgAckK]}|
|
||||
@option{--dwarf}[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow-links]]
|
||||
[@option{-W[lLiaprmfFsoORtUuTgAck]}|
|
||||
@option{--dwarf}[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]]
|
||||
[@option{-WK}|@option{--dwarf=follow-links}]
|
||||
[@option{-WN}|@option{--dwarf=no-follow-links}]
|
||||
[@option{--ctf=}@var{section}]
|
||||
[@option{-G}|@option{--stabs}]
|
||||
[@option{-t}|@option{--syms}]
|
||||
|
@ -2325,7 +2327,7 @@ will stop at the end of the function, otherwise it will stop when the
|
|||
next symbol is encountered. If there are no matches for @var{symbol}
|
||||
then nothing will be displayed.
|
||||
|
||||
Note if the @option{--dwarf=follow-links} option has also been enabled
|
||||
Note if the @option{--dwarf=follow-links} option is enabled
|
||||
then any symbol tables in linked debug info files will be read in and
|
||||
used when disassembling.
|
||||
|
||||
|
@ -2347,7 +2349,7 @@ If the target is an ARM architecture this switch also has the effect
|
|||
of forcing the disassembler to decode pieces of data found in code
|
||||
sections as if they were instructions.
|
||||
|
||||
Note if the @option{--dwarf=follow-links} option has also been enabled
|
||||
Note if the @option{--dwarf=follow-links} option is enabled
|
||||
then any symbol tables in linked debug info files will be read in and
|
||||
used when disassembling.
|
||||
|
||||
|
@ -4753,8 +4755,10 @@ readelf [@option{-a}|@option{--all}]
|
|||
[@option{-R} <number or name>|@option{--relocated-dump=}<number or name>]
|
||||
[@option{-z}|@option{--decompress}]
|
||||
[@option{-c}|@option{--archive-index}]
|
||||
[@option{-w[lLiaprmfFsoORtUuTgAckK]}|
|
||||
@option{--debug-dump}[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow-links]]
|
||||
[@option{-w[lLiaprmfFsoORtUuTgAck]}|
|
||||
@option{--debug-dump}[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links]]
|
||||
[@option{-wK}|@option{--debug-dump=follow-links}]
|
||||
[@option{-wN}|@option{--debug-dump=no-follow-links}]
|
||||
[@option{--dwarf-depth=@var{n}}]
|
||||
[@option{--dwarf-start=@var{n}}]
|
||||
[@option{--ctf=}@var{section}]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue