mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-19 09:14:14 +08:00
Apply patch from Thomas de Lellis to allow nm to distinguish between weak
function symbols and weak data symbols.
This commit is contained in:
@ -1,3 +1,12 @@
|
||||
2000-27-01 Thomas de Lellis <tdel@windriver.com>
|
||||
|
||||
* nm.c (print_symbol_info_bsd): Use bfd_is_undefined_symclass to
|
||||
check to unresolved symbols.
|
||||
(print_symbol_info_sysv): Ditto.
|
||||
(print_symbol_info_posix): Ditto.
|
||||
|
||||
* binutils.texi: Document new 'V' symclass flag for nm.
|
||||
|
||||
2000-01-27 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
* binutils.texi (objdump): Document new ARM specific
|
||||
|
@ -700,11 +700,18 @@ The symbol is in the text (code) section.
|
||||
@item U
|
||||
The symbol is undefined.
|
||||
|
||||
@item V
|
||||
The symbol is a weak object. When a weak defined symbol is linked with
|
||||
a normal defined symbol, the normal defined symbol is used with no error.
|
||||
When a weak undefined symbol is linked and the symbol is not defined,
|
||||
the value of the weak symbol becomes zero with no error.
|
||||
|
||||
@item W
|
||||
The symbol is weak. When a weak defined symbol is linked with a normal
|
||||
defined symbol, the normal defined symbol is used with no error. When a
|
||||
weak undefined symbol is linked and the symbol is not defined, the value
|
||||
of the weak symbol becomes zero with no error.
|
||||
The symbol is a weak symbol that has not been specifically tagged as a
|
||||
weak object symbol. When a weak defined symbol is linked with a normal
|
||||
defined symbol, the normal defined symbol is used with no error.
|
||||
When a weak undefined symbol is linked and the symbol is not defined,
|
||||
the value of the weak symbol becomes zero with no error.
|
||||
|
||||
@item -
|
||||
The symbol is a stabs symbol in an a.out object file. In this case, the
|
||||
|
@ -1427,7 +1427,7 @@ print_symbol_info_bsd (info, abfd)
|
||||
symbol_info *info;
|
||||
bfd *abfd;
|
||||
{
|
||||
if (info->type == 'U' || info->type == 'w')
|
||||
if (bfd_is_undefined_symclass (info->type))
|
||||
{
|
||||
printf ("%*s",
|
||||
#ifdef BFD64
|
||||
@ -1458,7 +1458,7 @@ print_symbol_info_sysv (info, abfd)
|
||||
bfd *abfd;
|
||||
{
|
||||
print_symname ("%-20s|", info->name, abfd); /* Name */
|
||||
if (info->type == 'U' || info->type == 'w')
|
||||
if (bfd_is_undefined_symclass (info->type))
|
||||
printf (" "); /* Value */
|
||||
else
|
||||
print_value (info->value);
|
||||
@ -1481,7 +1481,7 @@ print_symbol_info_posix (info, abfd)
|
||||
{
|
||||
print_symname ("%s ", info->name, abfd);
|
||||
printf ("%c ", info->type);
|
||||
if (info->type == 'U' || info->type == 'w')
|
||||
if (bfd_is_undefined_symclass (info->type))
|
||||
printf (" ");
|
||||
else
|
||||
print_value (info->value);
|
||||
|
Reference in New Issue
Block a user