diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2015-08-10 07:57:40 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2015-08-10 07:57:57 -0700 |
commit | 422f11824b3abf6c71042e2ee3aed572f250fc89 (patch) | |
tree | b5aaf430dc6e3a835909515d350a21ebbd10878c /bfd/ChangeLog | |
parent | 75fb7498c25ba89262867abe5340a8d38f1e19cd (diff) | |
download | gdb-422f11824b3abf6c71042e2ee3aed572f250fc89.zip gdb-422f11824b3abf6c71042e2ee3aed572f250fc89.tar.gz gdb-422f11824b3abf6c71042e2ee3aed572f250fc89.tar.bz2 |
Replace hidden with versioned in elf_link_hash_entry
This patch replaces the "hidden" field with the "versioned" field in
elf_link_hash_entry so that we can avoid calling strchr and strrchr if
the symbol is unversioned.
* elf-bfd.h (elf_symbol_version): New enum.
(elf_link_hash_entry): Replace hidden with versioned.
* elflink.c (_bfd_elf_merge_symbol): Don't look for symbol
version if the symbol is unversioned. Initialize versioned.
(_bfd_elf_add_default_symbol): Don't look for symbol version
if the symbol is unversioned or hidden. Initialize versioned.
(elf_collect_hash_codes): Don't look for symbol version if the
symbol is unversioned.
(elf_collect_gnu_hash_codes): Likewise.
(bfd_elf_gc_mark_dynamic_ref_symbol): Likewise.
(_bfd_elf_link_hash_copy_indirect): Check versioned instead of
hidden.
(elf_link_output_extsym): Likewise.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r-- | bfd/ChangeLog | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index c319f80..97ed6ea 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,19 @@ +2015-08-10 H.J. Lu <hongjiu.lu@intel.com> + + * elf-bfd.h (elf_symbol_version): New enum. + (elf_link_hash_entry): Replace hidden with versioned. + * elflink.c (_bfd_elf_merge_symbol): Don't look for symbol + version if the symbol is unversioned. Initialize versioned. + (_bfd_elf_add_default_symbol): Don't look for symbol version + if the symbol is unversioned or hidden. Initialize versioned. + (elf_collect_hash_codes): Don't look for symbol version if the + symbol is unversioned. + (elf_collect_gnu_hash_codes): Likewise. + (bfd_elf_gc_mark_dynamic_ref_symbol): Likewise. + (_bfd_elf_link_hash_copy_indirect): Check versioned instead of + hidden. + (elf_link_output_extsym): Likewise. + 2015-08-07 H.J. Lu <hongjiu.lu@intel.com> PR binutils/18785 @@ -27,7 +43,7 @@ (elf_link_output_extsym): Bind a symbol locally when linking executable if it is locally defined, hidden versioned, not referenced by shared library and not exported. Turn on - VERSYM_HIDDEN only if the hidden vesioned symbol is defined + VERSYM_HIDDEN only if the hidden versioned symbol is defined locally. 2015-08-05 Nick Clifton <nickc@redhat.com> |