aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog47
-rw-r--r--bfd/aout-adobe.c1
-rw-r--r--bfd/aout-target.h4
-rw-r--r--bfd/aout-tic30.c4
-rw-r--r--bfd/bfd-in2.h4
-rw-r--r--bfd/binary.c2
-rw-r--r--bfd/bout.c1
-rw-r--r--bfd/coff-rs6000.c2
-rw-r--r--bfd/coff64-rs6000.c2
-rw-r--r--bfd/elf-bfd.h2
-rw-r--r--bfd/elf.c10
-rw-r--r--bfd/elfxx-target.h4
-rw-r--r--bfd/i386msdos.c2
-rw-r--r--bfd/i386os9k.c2
-rw-r--r--bfd/ieee.c2
-rw-r--r--bfd/ihex.c1
-rw-r--r--bfd/libbfd-in.h2
-rw-r--r--bfd/libbfd.h2
-rw-r--r--bfd/libcoff-in.h2
-rw-r--r--bfd/libcoff.h2
-rw-r--r--bfd/libecoff.h2
-rw-r--r--bfd/mach-o-target.c1
-rw-r--r--bfd/mmo.c3
-rw-r--r--bfd/nlm-target.h1
-rw-r--r--bfd/oasys.c1
-rw-r--r--bfd/pef.c1
-rw-r--r--bfd/plugin.c1
-rw-r--r--bfd/ppcboot.c2
-rw-r--r--bfd/som.c1
-rw-r--r--bfd/srec.c1
-rw-r--r--bfd/targets.c4
-rw-r--r--bfd/tekhex.c1
-rw-r--r--bfd/versados.c1
-rw-r--r--bfd/vms-alpha.c3
-rw-r--r--bfd/xsym.c1
-rw-r--r--binutils/ChangeLog6
-rw-r--r--binutils/objdump.c4
37 files changed, 123 insertions, 9 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 7b3971e..54942a1 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,52 @@
2014-11-25 H.J. Lu <hongjiu.lu@intel.com>
+ * targets.c (BFD_JUMP_TABLE_SYMBOLS): Use
+ NAME##_get_symbol_version_string.
+ (bfd_get_symbol_version_string): New.
+ * aout-adobe.c (aout_32_get_symbol_version_string): Define using
+ _bfd_nosymbols define.
+ * aout-target.h (MY_get_symbol_version_string): Likewise.
+ * aout-tic30.c (MY_get_symbol_version_string): Likewise.
+ * binary.c (binary_get_symbol_version_string): Likewise.
+ * bout.c (aout_32_get_symbol_version_string): Likewise.
+ * coff-rs6000.c (_bfd_xcoff_get_symbol_version_string): Likewise.
+ * i386msdos.c (msdos_get_symbol_version_string): Likewise.
+ * i386os9k.c (aout_32_get_symbol_version_string): Likewise.
+ * ieee.c (ieee_get_symbol_version_string): Likewise.
+ * ihex.c (ihex_get_symbol_version_string): Likewise.
+ * libecoff.h (_bfd_ecoff_get_symbol_version_string): Likewise.
+ * mach-o-target.c (bfd_mach_o_get_symbol_version_string): Likewise.
+ * mmo.c (mmo_get_symbol_version_string): Likewise.
+ * nlm-target.h (nlm_get_symbol_version_string): Likewise.
+ * oasys.c (oasys_get_symbol_version_string): Likewise.
+ * pef.c (bfd_pef_get_symbol_version_string): Likewise.
+ * plugin.c (bfd_plugin_get_symbol_version_string): Likewise.
+ * ppcboot.c (ppcboot_get_symbol_version_string): Likewise.
+ * som.c (som_get_symbol_version_string): Likewise.
+ * srec.c (srec_get_symbol_version_string): Likewise.
+ * tekhex.c (tekhex_get_symbol_version_string): Likewise.
+ * versados.c (versados_get_symbol_version_string): Likewise.
+ * vms-alpha.c (alpha_vms_get_symbol_version_string): Likewise.
+ * xsym.c (bfd_sym_get_symbol_version_string): Likewise.
+
+ * coff64-rs6000.c (rs6000_xcoff64_vec): Use
+ coff_get_symbol_version_string.
+ (rs6000_xcoff64_aix_vec): Likewise.
+
+ * elf-bfd.h (bfd_elf_get_symbol_version_string): Renamed to ...
+ (_bfd_elf_get_symbol_version_string): This.
+ * elf.c: Likewise.
+ (bfd_elf_print_symbol): Updated.
+ * elfxx-target.h (bfd_elfNN_get_symbol_version_string): Define.
+
+ * libbfd-in.h (_bfd_nosymbols_get_symbol_version_string): Define.
+ * libcoff-in.h (coff_get_symbol_version_string): Likewise.
+ * bfd-in2.h: Regenerated.
+ * libbfd.h: Likewise.
+ * libcoff.h: Likewise.
+
+2014-11-25 H.J. Lu <hongjiu.lu@intel.com>
+
PR binutils/16496
* elf-bfd.h (bfd_elf_get_symbol_version_string): New.
* elf.c (bfd_elf_get_symbol_version_string): New. Extracted
diff --git a/bfd/aout-adobe.c b/bfd/aout-adobe.c
index cfdcc64..50394a2 100644
--- a/bfd/aout-adobe.c
+++ b/bfd/aout-adobe.c
@@ -447,6 +447,7 @@ aout_adobe_sizeof_headers (bfd *ignore_abfd ATTRIBUTE_UNUSED,
/* Build the transfer vector for Adobe A.Out files. */
#define aout_32_find_line _bfd_nosymbols_find_line
+#define aout_32_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define aout_32_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define aout_32_bfd_reloc_type_lookup _bfd_norelocs_bfd_reloc_type_lookup
#define aout_32_bfd_reloc_name_lookup _bfd_norelocs_bfd_reloc_name_lookup
diff --git a/bfd/aout-target.h b/bfd/aout-target.h
index 3bca8b5..7982bf0 100644
--- a/bfd/aout-target.h
+++ b/bfd/aout-target.h
@@ -459,6 +459,10 @@ MY_bfd_final_link (bfd *abfd, struct bfd_link_info *info)
#ifndef MY_get_symbol_info
#define MY_get_symbol_info NAME (aout, get_symbol_info)
#endif
+#ifndef MY_get_symbol_version_string
+#define MY_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
+#endif
#ifndef MY_get_lineno
#define MY_get_lineno NAME (aout, get_lineno)
#endif
diff --git a/bfd/aout-tic30.c b/bfd/aout-tic30.c
index e74464d..e164446 100644
--- a/bfd/aout-tic30.c
+++ b/bfd/aout-tic30.c
@@ -917,6 +917,10 @@ tic30_aout_set_arch_mach (bfd *abfd,
#ifndef MY_get_symbol_info
#define MY_get_symbol_info NAME (aout, get_symbol_info)
#endif
+#ifndef MY_get_symbol_version_string
+#define MY_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
+#endif
#ifndef MY_get_lineno
#define MY_get_lineno NAME (aout, get_lineno)
#endif
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 433b171..ed7be29 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -7015,6 +7015,7 @@ typedef struct bfd_target
NAME##_make_empty_symbol, \
NAME##_print_symbol, \
NAME##_get_symbol_info, \
+ NAME##_get_symbol_version_string, \
NAME##_bfd_is_local_label_name, \
NAME##_bfd_is_target_special_symbol, \
NAME##_get_lineno, \
@@ -7036,6 +7037,9 @@ typedef struct bfd_target
void (*_bfd_get_symbol_info)
(bfd *, struct bfd_symbol *, symbol_info *);
#define bfd_get_symbol_info(b,p,e) BFD_SEND (b, _bfd_get_symbol_info, (b,p,e))
+ const char *(*_bfd_get_symbol_version_string)
+ (bfd *, struct bfd_symbol *, bfd_boolean *);
+#define bfd_get_symbol_version_string(b,s,h) BFD_SEND (b, _bfd_get_symbol_version_string, (b,s,h))
bfd_boolean (*_bfd_is_local_label_name) (bfd *, const char *);
bfd_boolean (*_bfd_is_target_special_symbol) (bfd *, asymbol *);
alent * (*_get_lineno) (bfd *, struct bfd_symbol *);
diff --git a/bfd/binary.c b/bfd/binary.c
index d35e859..93a0cff 100644
--- a/bfd/binary.c
+++ b/bfd/binary.c
@@ -190,6 +190,8 @@ binary_canonicalize_symtab (bfd *abfd, asymbol **alocation)
#define binary_make_empty_symbol _bfd_generic_make_empty_symbol
#define binary_print_symbol _bfd_nosymbols_print_symbol
+#define binary_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
/* Get information about a symbol. */
diff --git a/bfd/bout.c b/bfd/bout.c
index a27df58..de9c7c7 100644
--- a/bfd/bout.c
+++ b/bfd/bout.c
@@ -1375,6 +1375,7 @@ b_out_bfd_get_relocated_section_contents (bfd *output_bfd,
/* Build the transfer vectors for Big and Little-Endian B.OUT files. */
#define aout_32_find_line _bfd_nosymbols_find_line
+#define aout_32_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define aout_32_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define aout_32_close_and_cleanup aout_32_bfd_free_cached_info
#define b_out_bfd_link_hash_table_create _bfd_generic_link_hash_table_create
diff --git a/bfd/coff-rs6000.c b/bfd/coff-rs6000.c
index fea5f3b..05c45cf 100644
--- a/bfd/coff-rs6000.c
+++ b/bfd/coff-rs6000.c
@@ -4008,6 +4008,8 @@ const struct xcoff_dwsect_name xcoff_dwsect_names[] = {
#define _bfd_xcoff_make_empty_symbol coff_make_empty_symbol
#define _bfd_xcoff_print_symbol coff_print_symbol
#define _bfd_xcoff_get_symbol_info coff_get_symbol_info
+#define _bfd_xcoff_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
#define _bfd_xcoff_bfd_is_local_label_name _bfd_xcoff_is_local_label_name
#define _bfd_xcoff_bfd_is_target_special_symbol \
coff_bfd_is_target_special_symbol
diff --git a/bfd/coff64-rs6000.c b/bfd/coff64-rs6000.c
index 5985d81..72ea58b 100644
--- a/bfd/coff64-rs6000.c
+++ b/bfd/coff64-rs6000.c
@@ -2712,6 +2712,7 @@ const bfd_target rs6000_xcoff64_vec =
coff_make_empty_symbol,
coff_print_symbol,
coff_get_symbol_info,
+ coff_get_symbol_version_string,
_bfd_xcoff_is_local_label_name,
coff_bfd_is_target_special_symbol,
coff_get_lineno,
@@ -2969,6 +2970,7 @@ const bfd_target rs6000_xcoff64_aix_vec =
coff_make_empty_symbol,
coff_print_symbol,
coff_get_symbol_info,
+ coff_get_symbol_version_string,
_bfd_xcoff_is_local_label_name,
coff_bfd_is_target_special_symbol,
coff_get_lineno,
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
index bee0ea1..4368658 100644
--- a/bfd/elf-bfd.h
+++ b/bfd/elf-bfd.h
@@ -1772,7 +1772,7 @@ extern bfd_boolean _bfd_elf_copy_private_bfd_data
(bfd *, bfd *);
extern bfd_boolean _bfd_elf_print_private_bfd_data
(bfd *, void *);
-const char * bfd_elf_get_symbol_version_string
+const char * _bfd_elf_get_symbol_version_string
(bfd *, asymbol *, bfd_boolean *);
extern void bfd_elf_print_symbol
(bfd *, void *, asymbol *, bfd_print_symbol_type);
diff --git a/bfd/elf.c b/bfd/elf.c
index c0c7fef..0cf1991 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -1425,8 +1425,8 @@ _bfd_elf_print_private_bfd_data (bfd *abfd, void *farg)
/* Get version string. */
const char *
-bfd_elf_get_symbol_version_string (bfd *abfd, asymbol *symbol,
- bfd_boolean *hidden)
+_bfd_elf_get_symbol_version_string (bfd *abfd, asymbol *symbol,
+ bfd_boolean *hidden)
{
const char *version_string = NULL;
if (elf_dynversym (abfd) != 0
@@ -1522,9 +1522,9 @@ bfd_elf_print_symbol (bfd *abfd,
bfd_fprintf_vma (abfd, file, val);
/* If we have version information, print it. */
- version_string = bfd_elf_get_symbol_version_string (abfd,
- symbol,
- &hidden);
+ version_string = _bfd_elf_get_symbol_version_string (abfd,
+ symbol,
+ &hidden);
if (version_string)
{
if (!hidden)
diff --git a/bfd/elfxx-target.h b/bfd/elfxx-target.h
index 692fb46..9bf4b18 100644
--- a/bfd/elfxx-target.h
+++ b/bfd/elfxx-target.h
@@ -66,6 +66,10 @@
#ifndef bfd_elfNN_get_symbol_info
#define bfd_elfNN_get_symbol_info _bfd_elf_get_symbol_info
#endif
+#ifndef bfd_elfNN_get_symbol_version_string
+#define bfd_elfNN_get_symbol_version_string \
+ _bfd_elf_get_symbol_version_string
+#endif
#define bfd_elfNN_canonicalize_symtab _bfd_elf_canonicalize_symtab
#define bfd_elfNN_get_symtab_upper_bound _bfd_elf_get_symtab_upper_bound
#define bfd_elfNN_make_empty_symbol _bfd_elf_make_empty_symbol
diff --git a/bfd/i386msdos.c b/bfd/i386msdos.c
index f02659f..bd2730a 100644
--- a/bfd/i386msdos.c
+++ b/bfd/i386msdos.c
@@ -162,6 +162,8 @@ msdos_set_section_contents (bfd *abfd,
#define msdos_canonicalize_symtab _bfd_nosymbols_canonicalize_symtab
#define msdos_print_symbol _bfd_nosymbols_print_symbol
#define msdos_get_symbol_info _bfd_nosymbols_get_symbol_info
+#define msdos_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
#define msdos_find_nearest_line _bfd_nosymbols_find_nearest_line
#define msdos_find_line _bfd_nosymbols_find_line
#define msdos_find_inliner_info _bfd_nosymbols_find_inliner_info
diff --git a/bfd/i386os9k.c b/bfd/i386os9k.c
index d8d5408..a8f87e5 100644
--- a/bfd/i386os9k.c
+++ b/bfd/i386os9k.c
@@ -155,6 +155,8 @@ os9k_sizeof_headers (bfd *abfd ATTRIBUTE_UNUSED,
#define aout_32_close_and_cleanup aout_32_bfd_free_cached_info
#define aout_32_find_line _bfd_nosymbols_find_line
+#define aout_32_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
#define aout_32_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define aout_32_bfd_reloc_type_lookup _bfd_norelocs_bfd_reloc_type_lookup
diff --git a/bfd/ieee.c b/bfd/ieee.c
index 70ce4c5..04ac666 100644
--- a/bfd/ieee.c
+++ b/bfd/ieee.c
@@ -3828,6 +3828,8 @@ ieee_sizeof_headers (bfd *abfd ATTRIBUTE_UNUSED,
#define ieee_update_armap_timestamp bfd_true
#define ieee_get_elt_at_index _bfd_generic_get_elt_at_index
+#define ieee_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
#define ieee_bfd_is_target_special_symbol \
((bfd_boolean (*) (bfd *, asymbol *)) bfd_false)
#define ieee_bfd_is_local_label_name bfd_generic_is_local_label_name
diff --git a/bfd/ihex.c b/bfd/ihex.c
index 9b3b813..7ce8c4b 100644
--- a/bfd/ihex.c
+++ b/bfd/ihex.c
@@ -918,6 +918,7 @@ ihex_sizeof_headers (bfd *abfd ATTRIBUTE_UNUSED,
#define ihex_make_empty_symbol _bfd_generic_make_empty_symbol
#define ihex_print_symbol _bfd_nosymbols_print_symbol
#define ihex_get_symbol_info _bfd_nosymbols_get_symbol_info
+#define ihex_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define ihex_bfd_is_target_special_symbol ((bfd_boolean (*) (bfd *, asymbol *)) bfd_false)
#define ihex_bfd_is_local_label_name _bfd_nosymbols_bfd_is_local_label_name
#define ihex_get_lineno _bfd_nosymbols_get_lineno
diff --git a/bfd/libbfd-in.h b/bfd/libbfd-in.h
index 50a46ac..f51bc11 100644
--- a/bfd/libbfd-in.h
+++ b/bfd/libbfd-in.h
@@ -392,6 +392,8 @@ extern bfd_boolean _bfd_vms_lib_ia64_mkarchive (bfd *abfd);
((void (*) (bfd *, void *, asymbol *, bfd_print_symbol_type)) bfd_void)
#define _bfd_nosymbols_get_symbol_info \
((void (*) (bfd *, asymbol *, symbol_info *)) bfd_void)
+#define _bfd_nosymbols_get_symbol_version_string \
+ ((const char *(*) (bfd *, asymbol *, bfd_boolean *)) bfd_nullvoidptr)
#define _bfd_nosymbols_bfd_is_local_label_name \
((bfd_boolean (*) (bfd *, const char *)) bfd_false)
#define _bfd_nosymbols_bfd_is_target_special_symbol \
diff --git a/bfd/libbfd.h b/bfd/libbfd.h
index 6c48f82..a1923c8 100644
--- a/bfd/libbfd.h
+++ b/bfd/libbfd.h
@@ -397,6 +397,8 @@ extern bfd_boolean _bfd_vms_lib_ia64_mkarchive (bfd *abfd);
((void (*) (bfd *, void *, asymbol *, bfd_print_symbol_type)) bfd_void)
#define _bfd_nosymbols_get_symbol_info \
((void (*) (bfd *, asymbol *, symbol_info *)) bfd_void)
+#define _bfd_nosymbols_get_symbol_version_string \
+ ((const char *(*) (bfd *, asymbol *, bfd_boolean *)) bfd_nullvoidptr)
#define _bfd_nosymbols_bfd_is_local_label_name \
((bfd_boolean (*) (bfd *, const char *)) bfd_false)
#define _bfd_nosymbols_bfd_is_target_special_symbol \
diff --git a/bfd/libcoff-in.h b/bfd/libcoff-in.h
index 6b6eb28..dc7866d 100644
--- a/bfd/libcoff-in.h
+++ b/bfd/libcoff-in.h
@@ -353,6 +353,8 @@ extern void coff_print_symbol
(bfd *, void * filep, asymbol *, bfd_print_symbol_type);
extern void coff_get_symbol_info
(bfd *, asymbol *, symbol_info *ret);
+#define coff_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
extern bfd_boolean _bfd_coff_is_local_label_name
(bfd *, const char *);
extern asymbol *coff_bfd_make_debug_symbol
diff --git a/bfd/libcoff.h b/bfd/libcoff.h
index 9479985..d1c466a 100644
--- a/bfd/libcoff.h
+++ b/bfd/libcoff.h
@@ -357,6 +357,8 @@ extern void coff_print_symbol
(bfd *, void * filep, asymbol *, bfd_print_symbol_type);
extern void coff_get_symbol_info
(bfd *, asymbol *, symbol_info *ret);
+#define coff_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
extern bfd_boolean _bfd_coff_is_local_label_name
(bfd *, const char *);
extern asymbol *coff_bfd_make_debug_symbol
diff --git a/bfd/libecoff.h b/bfd/libecoff.h
index 06434c2..ebfa37e 100644
--- a/bfd/libecoff.h
+++ b/bfd/libecoff.h
@@ -285,6 +285,8 @@ extern void _bfd_ecoff_print_symbol
(bfd *, void *, asymbol *, bfd_print_symbol_type);
extern void _bfd_ecoff_get_symbol_info
(bfd *, asymbol *, symbol_info *);
+#define _bfd_ecoff_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
extern bfd_boolean _bfd_ecoff_bfd_is_local_label_name
(bfd *, const char *);
#define _bfd_ecoff_get_lineno _bfd_nosymbols_get_lineno
diff --git a/bfd/mach-o-target.c b/bfd/mach-o-target.c
index a070e67..dd1ced1 100644
--- a/bfd/mach-o-target.c
+++ b/bfd/mach-o-target.c
@@ -31,6 +31,7 @@
#define bfd_mach_o_bfd_is_local_label_name bfd_generic_is_local_label_name
#define bfd_mach_o_get_lineno _bfd_nosymbols_get_lineno
#define bfd_mach_o_find_inliner_info _bfd_nosymbols_find_inliner_info
+#define bfd_mach_o_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define bfd_mach_o_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define bfd_mach_o_read_minisymbols _bfd_generic_read_minisymbols
#define bfd_mach_o_minisymbol_to_symbol _bfd_generic_minisymbol_to_symbol
diff --git a/bfd/mmo.c b/bfd/mmo.c
index 2c74c76..698ffa5 100644
--- a/bfd/mmo.c
+++ b/bfd/mmo.c
@@ -3204,6 +3204,9 @@ mmo_write_object_contents (bfd *abfd)
#define mmo_bfd_is_target_special_symbol \
((bfd_boolean (*) (bfd *, asymbol *)) bfd_false)
+#define mmo_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
+
/* Is this one really used or defined by anyone? */
#define mmo_get_lineno _bfd_nosymbols_get_lineno
diff --git a/bfd/nlm-target.h b/bfd/nlm-target.h
index 2343cff..44b41ed 100644
--- a/bfd/nlm-target.h
+++ b/bfd/nlm-target.h
@@ -25,6 +25,7 @@
#define nlm_make_empty_symbol nlmNAME (make_empty_symbol)
#define nlm_print_symbol nlmNAME (print_symbol)
#define nlm_get_symbol_info nlmNAME (get_symbol_info)
+#define nlm_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define nlm_bfd_is_local_label_name bfd_generic_is_local_label_name
#define nlm_bfd_is_target_special_symbol ((bfd_boolean (*) (bfd *, asymbol *)) bfd_false)
#define nlm_get_lineno _bfd_nosymbols_get_lineno
diff --git a/bfd/oasys.c b/bfd/oasys.c
index 9ff9b9e..9ff9117 100644
--- a/bfd/oasys.c
+++ b/bfd/oasys.c
@@ -1170,6 +1170,7 @@ oasys_sizeof_headers (bfd *abfd ATTRIBUTE_UNUSED,
#define oasys_bfd_is_local_label_name bfd_generic_is_local_label_name
#define oasys_bfd_is_target_special_symbol ((bfd_boolean (*) (bfd *, asymbol *)) bfd_false)
#define oasys_get_lineno _bfd_nosymbols_get_lineno
+#define oasys_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define oasys_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define oasys_read_minisymbols _bfd_generic_read_minisymbols
#define oasys_minisymbol_to_symbol _bfd_generic_minisymbol_to_symbol
diff --git a/bfd/pef.c b/bfd/pef.c
index 4c29417..363e641 100644
--- a/bfd/pef.c
+++ b/bfd/pef.c
@@ -43,6 +43,7 @@
#define bfd_pef_find_nearest_line _bfd_nosymbols_find_nearest_line
#define bfd_pef_find_line _bfd_nosymbols_find_line
#define bfd_pef_find_inliner_info _bfd_nosymbols_find_inliner_info
+#define bfd_pef_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define bfd_pef_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define bfd_pef_read_minisymbols _bfd_generic_read_minisymbols
#define bfd_pef_minisymbol_to_symbol _bfd_generic_minisymbol_to_symbol
diff --git a/bfd/plugin.c b/bfd/plugin.c
index a068861..7f8f8b5 100644
--- a/bfd/plugin.c
+++ b/bfd/plugin.c
@@ -85,6 +85,7 @@ dlerror (void)
#define bfd_plugin_find_nearest_line _bfd_nosymbols_find_nearest_line
#define bfd_plugin_find_line _bfd_nosymbols_find_line
#define bfd_plugin_find_inliner_info _bfd_nosymbols_find_inliner_info
+#define bfd_plugin_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define bfd_plugin_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define bfd_plugin_read_minisymbols _bfd_generic_read_minisymbols
#define bfd_plugin_minisymbol_to_symbol _bfd_generic_minisymbol_to_symbol
diff --git a/bfd/ppcboot.c b/bfd/ppcboot.c
index 9ee8ab5..7599e20 100644
--- a/bfd/ppcboot.c
+++ b/bfd/ppcboot.c
@@ -326,6 +326,8 @@ ppcboot_get_symbol_info (bfd *ignore_abfd ATTRIBUTE_UNUSED,
bfd_symbol_info (symbol, ret);
}
+#define ppcboot_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
#define ppcboot_bfd_is_target_special_symbol \
((bfd_boolean (*) (bfd *, asymbol *)) bfd_false)
#define ppcboot_bfd_is_local_label_name bfd_generic_is_local_label_name
diff --git a/bfd/som.c b/bfd/som.c
index 513e4fa..5f96caa 100644
--- a/bfd/som.c
+++ b/bfd/som.c
@@ -6718,6 +6718,7 @@ som_bfd_link_split_section (bfd *abfd ATTRIBUTE_UNUSED, asection *sec)
}
#define som_find_line _bfd_nosymbols_find_line
+#define som_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define som_close_and_cleanup som_bfd_free_cached_info
#define som_read_ar_hdr _bfd_generic_read_ar_hdr
#define som_write_ar_hdr _bfd_generic_write_ar_hdr
diff --git a/bfd/srec.c b/bfd/srec.c
index 5f9a546..8de6e42 100644
--- a/bfd/srec.c
+++ b/bfd/srec.c
@@ -1258,6 +1258,7 @@ srec_print_symbol (bfd *abfd,
#define srec_find_line _bfd_nosymbols_find_line
#define srec_find_inliner_info _bfd_nosymbols_find_inliner_info
#define srec_make_empty_symbol _bfd_generic_make_empty_symbol
+#define srec_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define srec_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define srec_read_minisymbols _bfd_generic_read_minisymbols
#define srec_minisymbol_to_symbol _bfd_generic_minisymbol_to_symbol
diff --git a/bfd/targets.c b/bfd/targets.c
index 8323e92..6a282ea 100644
--- a/bfd/targets.c
+++ b/bfd/targets.c
@@ -363,6 +363,7 @@ BFD_JUMP_TABLE macros.
. NAME##_make_empty_symbol, \
. NAME##_print_symbol, \
. NAME##_get_symbol_info, \
+. NAME##_get_symbol_version_string, \
. NAME##_bfd_is_local_label_name, \
. NAME##_bfd_is_target_special_symbol, \
. NAME##_get_lineno, \
@@ -384,6 +385,9 @@ BFD_JUMP_TABLE macros.
. void (*_bfd_get_symbol_info)
. (bfd *, struct bfd_symbol *, symbol_info *);
.#define bfd_get_symbol_info(b,p,e) BFD_SEND (b, _bfd_get_symbol_info, (b,p,e))
+. const char *(*_bfd_get_symbol_version_string)
+. (bfd *, struct bfd_symbol *, bfd_boolean *);
+.#define bfd_get_symbol_version_string(b,s,h) BFD_SEND (b, _bfd_get_symbol_version_string, (b,s,h))
. bfd_boolean (*_bfd_is_local_label_name) (bfd *, const char *);
. bfd_boolean (*_bfd_is_target_special_symbol) (bfd *, asymbol *);
. alent * (*_get_lineno) (bfd *, struct bfd_symbol *);
diff --git a/bfd/tekhex.c b/bfd/tekhex.c
index 0328689..2f14194 100644
--- a/bfd/tekhex.c
+++ b/bfd/tekhex.c
@@ -957,6 +957,7 @@ tekhex_print_symbol (bfd *abfd,
#define tekhex_find_nearest_line _bfd_nosymbols_find_nearest_line
#define tekhex_find_line _bfd_nosymbols_find_line
#define tekhex_find_inliner_info _bfd_nosymbols_find_inliner_info
+#define tekhex_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define tekhex_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define tekhex_read_minisymbols _bfd_generic_read_minisymbols
#define tekhex_minisymbol_to_symbol _bfd_generic_minisymbol_to_symbol
diff --git a/bfd/versados.c b/bfd/versados.c
index 5bafcb1..2368998 100644
--- a/bfd/versados.c
+++ b/bfd/versados.c
@@ -811,6 +811,7 @@ versados_canonicalize_reloc (bfd *abfd,
#define versados_find_nearest_line _bfd_nosymbols_find_nearest_line
#define versados_find_line _bfd_nosymbols_find_line
#define versados_find_inliner_info _bfd_nosymbols_find_inliner_info
+#define versados_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define versados_make_empty_symbol _bfd_generic_make_empty_symbol
#define versados_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define versados_read_minisymbols _bfd_generic_read_minisymbols
diff --git a/bfd/vms-alpha.c b/bfd/vms-alpha.c
index 3789f79..8c24ef0 100644
--- a/bfd/vms-alpha.c
+++ b/bfd/vms-alpha.c
@@ -9191,6 +9191,9 @@ bfd_vms_get_data (bfd *abfd)
((bfd_boolean (*) (bfd *, asymbol *)) bfd_false)
#define alpha_vms_print_symbol vms_print_symbol
#define alpha_vms_get_symbol_info vms_get_symbol_info
+#define alpha_vms_get_symbol_version_string \
+ _bfd_nosymbols_get_symbol_version_string
+
#define alpha_vms_read_minisymbols _bfd_generic_read_minisymbols
#define alpha_vms_minisymbol_to_symbol _bfd_generic_minisymbol_to_symbol
#define alpha_vms_get_lineno _bfd_nosymbols_get_lineno
diff --git a/bfd/xsym.c b/bfd/xsym.c
index 4e2a8ab..870795e 100644
--- a/bfd/xsym.c
+++ b/bfd/xsym.c
@@ -35,6 +35,7 @@
#define bfd_sym_find_nearest_line _bfd_nosymbols_find_nearest_line
#define bfd_sym_find_line _bfd_nosymbols_find_line
#define bfd_sym_find_inliner_info _bfd_nosymbols_find_inliner_info
+#define bfd_sym_get_symbol_version_string _bfd_nosymbols_get_symbol_version_string
#define bfd_sym_bfd_make_debug_symbol _bfd_nosymbols_bfd_make_debug_symbol
#define bfd_sym_read_minisymbols _bfd_generic_read_minisymbols
#define bfd_sym_minisymbol_to_symbol _bfd_generic_minisymbol_to_symbol
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index f4d9aa6..86c8555 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,5 +1,11 @@
2014-11-25 H.J. Lu <hongjiu.lu@intel.com>
+ * objdump.c (objdump_print_symname): Replace
+ bfd_elf_get_symbol_version_string with
+ bfd_get_symbol_version_string.
+
+2014-11-25 H.J. Lu <hongjiu.lu@intel.com>
+
PR binutils/16496
* objdump.c (objdump_print_symname): Call
bfd_elf_get_symbol_version_string to get ELF symbol version
diff --git a/binutils/objdump.c b/binutils/objdump.c
index e04c3ee..fdfa602 100644
--- a/binutils/objdump.c
+++ b/binutils/objdump.c
@@ -808,9 +808,7 @@ objdump_print_symname (bfd *abfd, struct disassemble_info *inf,
name = alloc;
}
- if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
- version_string = bfd_elf_get_symbol_version_string (abfd, sym,
- &hidden);
+ version_string = bfd_get_symbol_version_string (abfd, sym, &hidden);
if (bfd_is_und_section (bfd_get_section (sym)))
hidden = TRUE;