aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2011-09-16 01:15:19 +0000
committerH.J. Lu <hjl.tools@gmail.com>2011-09-16 01:15:19 +0000
commit7c14eb05898d6095d8f694bf41c4f0914d9d96b1 (patch)
tree950014f8c74ad63ac1ccce07552c9934c58916e7
parent02a7f96ef75f02f81125fe92b989cf9deeab462e (diff)
downloadnewlib-7c14eb05898d6095d8f694bf41c4f0914d9d96b1.zip
newlib-7c14eb05898d6095d8f694bf41c4f0914d9d96b1.tar.gz
newlib-7c14eb05898d6095d8f694bf41c4f0914d9d96b1.tar.bz2
Check if a symbol is hidden by linker script.
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. * 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. * bfd-in2.h: Regenerated. 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.
-rw-r--r--include/ChangeLog5
-rw-r--r--include/bfdlink.h4
2 files changed, 9 insertions, 0 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index 53984e1..1a4680e 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,8 @@
+2011-09-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/12975
+ * bfdlink.h (bfd_link_info): Add version_info.
+
2011-07-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* xregex.h (regoff_t): Define.
diff --git a/include/bfdlink.h b/include/bfdlink.h
index 71b1e25..c9e127c 100644
--- a/include/bfdlink.h
+++ b/include/bfdlink.h
@@ -245,6 +245,7 @@ struct flag_info
};
struct bfd_elf_dynamic_list;
+struct bfd_elf_version_tree;
/* This structure holds all the information needed to communicate
between BFD and the linker when doing a link. */
@@ -496,6 +497,9 @@ struct bfd_link_info
/* List of symbols should be dynamic. */
struct bfd_elf_dynamic_list *dynamic_list;
+
+ /* The version information. */
+ struct bfd_elf_version_tree *version_info;
};
/* This structures holds a set of callback functions. These are called