mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-28 04:25:10 +08:00
nm: Remove --with-symbol-versions
Since
commit 7e6e972f74
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Tue Mar 24 04:23:11 2020 -0700
bfd: Display symbol version for nm -D
always displays symbol version for nm, remove --with-symbol-versions and
silently accept it for backward compatibility.
binutils/
PR binutils/26302
* nm.c (with_symbol_versions): Removed.
(long_option_values): Add OPTION_WITH_SYMBOL_VERSIONS.
(long_options): Update --with-symbol-versions entry.
(print_symbol): Remove the with_symbol_versions check.
(main): Add OPTION_WITH_SYMBOL_VERSIONS for backward
compatibility.
* doc/binutils.texi: Remove --with-symbol-versions.
ld/
PR binutils/26302
* testsuite/ld-elf/pr26302.nd: New file.
* testsuite/ld-elf/pr26302.ver: Likewise.
* testsuite/ld-elf/pr26302a.c: Likewise.
* testsuite/ld-elf/pr26302b.c: Likewise.
* testsuite/ld-elf/shared.exp: Run binutils/26302 tests.
This commit is contained in:
parent
40f3419a81
commit
9b0ac51b22
@ -1,3 +1,14 @@
|
||||
2020-08-10 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
PR binutils/26302
|
||||
* nm.c (with_symbol_versions): Removed.
|
||||
(long_option_values): Add OPTION_WITH_SYMBOL_VERSIONS.
|
||||
(long_options): Update --with-symbol-versions entry.
|
||||
(print_symbol): Remove the with_symbol_versions check.
|
||||
(main): Add OPTION_WITH_SYMBOL_VERSIONS for backward
|
||||
compatibility.
|
||||
* doc/binutils.texi: Remove --with-symbol-versions.
|
||||
|
||||
2020-08-05 Alan Modra <amodra@gmail.com>
|
||||
|
||||
PR 26337
|
||||
|
@ -796,7 +796,7 @@ nm [@option{-A}|@option{-o}|@option{--print-file-name}] [@option{-a}|@option{--d
|
||||
[@option{--plugin} @var{name}]
|
||||
[@option{--no-recurse-limit}|@option{--recurse-limit}]]
|
||||
[@option{--size-sort}] [@option{--special-syms}]
|
||||
[@option{--synthetic}] [@option{--with-symbol-versions}] [@option{--target=}@var{bfdname}]
|
||||
[@option{--synthetic}] [@option{--target=}@var{bfdname}]
|
||||
[@var{objfile}@dots{}]
|
||||
@c man end
|
||||
@end smallexample
|
||||
@ -1130,14 +1130,6 @@ Include synthetic symbols in the output. These are special symbols
|
||||
created by the linker for various purposes. They are not shown by
|
||||
default since they are not part of the binary's original source code.
|
||||
|
||||
@item --with-symbol-versions
|
||||
Enables the display of symbol version information if any exists. The
|
||||
version string is displayed as a suffix to the symbol name, preceded by
|
||||
an @@ character. For example @samp{foo@@VER_1}. If the version is
|
||||
the default version to be used when resolving unversioned references
|
||||
to the symbol then it is displayed as a suffix preceded by two @@
|
||||
characters. For example @samp{foo@@@@VER_2}.
|
||||
|
||||
@item --target=@var{bfdname}
|
||||
@cindex object code format
|
||||
Specify an object code format other than your system's default format.
|
||||
|
@ -161,7 +161,6 @@ static int show_version = 0; /* Show the version number. */
|
||||
static int show_synthetic = 0; /* Display synthesized symbols too. */
|
||||
static int line_numbers = 0; /* Print line numbers for symbols. */
|
||||
static int allow_special_symbols = 0; /* Allow special symbols. */
|
||||
static int with_symbol_versions = 0; /* Include symbol version information in the output. */
|
||||
|
||||
static int demangle_flags = DMGL_ANSI | DMGL_PARAMS;
|
||||
|
||||
@ -192,7 +191,8 @@ enum long_option_values
|
||||
OPTION_PLUGIN,
|
||||
OPTION_SIZE_SORT,
|
||||
OPTION_RECURSE_LIMIT,
|
||||
OPTION_NO_RECURSE_LIMIT
|
||||
OPTION_NO_RECURSE_LIMIT,
|
||||
OPTION_WITH_SYMBOL_VERSIONS
|
||||
};
|
||||
|
||||
static struct option long_options[] =
|
||||
@ -226,7 +226,8 @@ static struct option long_options[] =
|
||||
{"defined-only", no_argument, &defined_only, 1},
|
||||
{"undefined-only", no_argument, &undefined_only, 1},
|
||||
{"version", no_argument, &show_version, 1},
|
||||
{"with-symbol-versions", no_argument, &with_symbol_versions, 1},
|
||||
{"with-symbol-versions", no_argument, NULL,
|
||||
OPTION_WITH_SYMBOL_VERSIONS},
|
||||
{0, no_argument, 0, 0}
|
||||
};
|
||||
|
||||
@ -901,22 +902,6 @@ print_symbol (bfd * abfd,
|
||||
|
||||
format->print_symbol_info (&info, abfd);
|
||||
|
||||
if (with_symbol_versions)
|
||||
{
|
||||
const char * version_string = NULL;
|
||||
bfd_boolean hidden = FALSE;
|
||||
|
||||
if ((sym->flags & (BSF_SECTION_SYM | BSF_SYNTHETIC)) == 0)
|
||||
version_string = bfd_get_symbol_version_string (abfd, sym,
|
||||
TRUE, &hidden);
|
||||
|
||||
if (bfd_is_und_section (bfd_asymbol_section (sym)))
|
||||
hidden = TRUE;
|
||||
|
||||
if (version_string && *version_string != '\0')
|
||||
printf (hidden ? "@%s" : "@@%s", version_string);
|
||||
}
|
||||
|
||||
if (line_numbers)
|
||||
{
|
||||
static asymbol **syms;
|
||||
@ -1761,6 +1746,9 @@ main (int argc, char **argv)
|
||||
case OPTION_NO_RECURSE_LIMIT:
|
||||
demangle_flags |= DMGL_NO_RECURSE_LIMIT;
|
||||
break;
|
||||
case OPTION_WITH_SYMBOL_VERSIONS:
|
||||
/* Ignored for backward compatibility. */
|
||||
break;
|
||||
case 'D':
|
||||
dynamic = 1;
|
||||
break;
|
||||
|
@ -1,3 +1,12 @@
|
||||
2020-08-10 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
PR binutils/26302
|
||||
* testsuite/ld-elf/pr26302.nd: New file.
|
||||
* testsuite/ld-elf/pr26302.ver: Likewise.
|
||||
* testsuite/ld-elf/pr26302a.c: Likewise.
|
||||
* testsuite/ld-elf/pr26302b.c: Likewise.
|
||||
* testsuite/ld-elf/shared.exp: Run binutils/26302 tests.
|
||||
|
||||
2020-08-07 David Faust <david.faust@oracle.com>
|
||||
|
||||
* testsuite/ld-bpf/call-3.s: New file.
|
||||
|
3
ld/testsuite/ld-elf/pr26302.nd
Normal file
3
ld/testsuite/ld-elf/pr26302.nd
Normal file
@ -0,0 +1,3 @@
|
||||
#...
|
||||
+U foo@@FOO
|
||||
#pass
|
5
ld/testsuite/ld-elf/pr26302.ver
Normal file
5
ld/testsuite/ld-elf/pr26302.ver
Normal file
@ -0,0 +1,5 @@
|
||||
FOO
|
||||
{
|
||||
global:
|
||||
foo;
|
||||
};
|
4
ld/testsuite/ld-elf/pr26302a.c
Normal file
4
ld/testsuite/ld-elf/pr26302a.c
Normal file
@ -0,0 +1,4 @@
|
||||
void
|
||||
foo (void)
|
||||
{
|
||||
}
|
7
ld/testsuite/ld-elf/pr26302b.c
Normal file
7
ld/testsuite/ld-elf/pr26302b.c
Normal file
@ -0,0 +1,7 @@
|
||||
extern void foo (void);
|
||||
|
||||
void
|
||||
bar (void)
|
||||
{
|
||||
foo ();
|
||||
}
|
@ -843,6 +843,24 @@ run_cc_link_tests [list \
|
||||
{{readelf {--dyn-syms --wide} pr26094-1b.rd}} \
|
||||
"pr26094-1" \
|
||||
] \
|
||||
[list \
|
||||
"Build pr26302a.so" \
|
||||
"-shared -Wl,--version-script=pr26302.ver" \
|
||||
"-fPIC" \
|
||||
{pr26302a.c} \
|
||||
{} \
|
||||
"pr26302a.so"
|
||||
] \
|
||||
[list \
|
||||
"Build pr26302b.so" \
|
||||
"-shared -Wl,--no-as-needed tmpdir/pr26302a.so" \
|
||||
"-fPIC" \
|
||||
{pr26302b.c} \
|
||||
{{nm {-u} pr26302.nd} \
|
||||
{nm {-u -D} pr26302.nd} \
|
||||
{nm {-u -D --with-symbol-versions} pr26302.nd}} \
|
||||
"pr26302b.so" \
|
||||
] \
|
||||
]
|
||||
|
||||
run_ld_link_tests [list \
|
||||
|
Loading…
Reference in New Issue
Block a user