This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: PATCH: PR ld/12975: --gc-sections doesn't remove symbols hidden with version scripts
On Thu, Sep 15, 2011 at 02:29:38PM -0700, H.J. Lu wrote:
> bfd/
>
> 2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
>
> PR ld/12975
> * bfd-in.h (bfd_elf_size_dynamic_sections): Remove pointer
> to struct bfd_elf_version_tree.
> * bfd-in2.h: Regenerated.
>
> * elflink.c (elf_info_failed): Remove verdefs.
> (_bfd_elf_export_symbol): Updated.
> _bfd_elf_link_assign_sym_version): Likewise.
> (bfd_elf_size_dynamic_sections): Remove pointer to struct
> bfd_elf_version_tree. Updated.
> (bfd_elf_gc_mark_dynamic_ref_symbol): Check if a symbol is hidden
> by linker script.
>
> * linker.c (bfd_hide_sym_by_version): New.
>
> include/
>
> 2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
>
> PR ld/12975
> * bfdlink.h (bfd_link_info): Add version_info.
>
> ld/
>
> 2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
>
> PR ld/12975
> * ldlang.c (lang_elf_version_info): Removed.
> (lang_register_vers_node): Replace lang_elf_version_info with
> link_info.version_info.
> (lang_add_vers_depend): Likewise.
> * pe-dll.c (process_def_file_and_drectve): Likewise.
> * emultempl/solaris2.em (elf_solaris2_before_allocation): Likewise.
>
> * ldlang.h (lang_elf_version_info): Removed.
>
> * plugin.c (is_visible_from_outside): Check if symbol is hidden
> by version script.
>
> * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
> Remove lang_elf_version_info.
>
> ld/testsuite/
>
> 2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
>
> PR ld/12975
> * ld-elf/pr12975.d: New.
> * ld-elf/pr12975.s: Likewise.
> * ld-elf/pr12975.t: Likewise.
OK.
--
Alan Modra
Australia Development Lab, IBM