Added -D (--dynamic) option to nm and -T (--dynamic-syms) and -R

(--dynamic-reloc) arguments to objdump.
	* nm.c (dynamic): New static variable.
	(long_options): Added "dynamic".
	(usage): Mention -D and --dynamic.
	(main): Add D to getopt string.  Handle -D by setting dynamic.
	(display_rel_file): If dynamic is non-zero, read dynamic symbols
	rather than normal symbols.
	* nm.1: Updated for -D (--dynamic) option.
	* objdump.c (dump_dynamic_symtab): New global variable.
	(dump_dynamic_reloc_info): New global variable.
	(dynsyms, dynsymcount): New global variables.
	(usage): Mention -R, -T, --dynamic-syms and --dynamic-reloc.
	(long_options): Added "dynamic-reloc" and "dynamic-syms".
	(slurp_symtab): If no symbols, return rather than exit.
	(slurp_dynamic_symtab): New function.
	(display_bfd): Handle dump_dynamic_symtab and
	dump_dynamic_reloc_info.
	(dump_symbols): Take new dynamic argument, indicating whether to
	display dynamic symbols.
	(dump_relocs): Move most printing into dump_reloc_set.
	(dump_dynamic_relocs): New function.
	(dump_reloc_set): New function, extracted from dump_relocs.
	(main): Add R and T to getopt string.  Handle -T by setting
	dump_dynamic_symtab and -R by setting dump_dynamic_reloc_info.
	* objdump.1: Updated for -R (--dynamic-reloc) and -T
	(--dynamic-syms) options.
	* binutils.texi: Updated for new nm and objdump options.
This commit is contained in:
Ian Lance Taylor 1994-04-07 02:04:34 +00:00
parent dfc1c00613
commit de3b08ac2e
5 changed files with 278 additions and 72 deletions

View file

@ -566,7 +566,7 @@ The GNU linker @code{ld} is now described in a separate manual.
@smallexample
nm [ -a | --debug-syms ] [ -g | --extern-only ]
[ -B ] [ -C | --demangle ]
[ -B ] [ -C | --demangle ] [ -D | --dynamic ]
[ -s | --print-armap ] [ -A | -o | --print-file-name ]
[ -n | -v | --numeric-sort ] [ -p | --no-sort ]
[ -r | --reverse-sort ] [ -u | --undefined-only ]
@ -653,6 +653,13 @@ Besides removing any initial underscore prepended by the system, this
makes C++ function names readable. @xref{c++filt}, for more information
on demangling.
@item -D
@itemx --dynamic
@cindex dynamic symbols
Display the dynamic symbols rather than the normal symbols. This is
only meaningful for dynamic objects, such as certain types of shared
libraries.
@item -f @var{format}
@itemx --format=@var{format}
@cindex @code{nm} format
@ -832,9 +839,9 @@ objdump [ -a | --archive-headers ]
[ -j @var{section} | --section=@var{section} ]
[ -l | --line-numbers ]
[ -m @var{machine} | --architecture=@var{machine} ] [ -r | --reloc ]
[ -s | --full-contents ] [ --stabs ] [ -t | --syms ]
[ -x | --all-headers ] [ --version ] [ --help ]
@var{objfile}@dots{}
[ -R | --dynamic-reloc ] [ -s | --full-contents ] [ --stabs ]
[ -t | --syms ] [ -T | --dynamic-syms ] [ -x | --all-headers ]
[ --version ] [ --help ] @var{objfile}@dots{}
@end smallexample
@code{objdump} displays information about one or more object files.
@ -940,6 +947,13 @@ option.
@cindex relocation entries, in object file
Print the relocation entries of the file.
@item -R
@itemx --dynamic-reloc
@cindex dynamic relocation entries, in object file
Print the dynamic relocation entries of the file. This is only
meaningful for dynamic objects, such as certain types of shared
libraries.
@item -s
@itemx --full-contents
@cindex sections, full contents
@ -965,6 +979,14 @@ output.
Print the symbol table entries of the file.
This is similar to the information provided by the @samp{nm} program.
@item -T
@itemx --dynamic-syms
@cindex dynamic symbol table entries, printing
Print the dynamic symbol table entries of the file. This is only
meaningful for dynamic objects, such as certain types of shared
libraries. This is similar to the information provided by the @samp{nm}
program when given the @samp{-D} (@samp{--dynamic}) option.
@item --version
Print the version number of @code{objdump} and exit.