diff options
author | H.J. Lu <hjl@lucon.org> | 2006-02-24 15:47:25 +0000 |
---|---|---|
committer | H.J. Lu <hjl@lucon.org> | 2006-02-24 15:47:25 +0000 |
commit | 39f2b92d4911dabc5c0ef5af4ca5c42d1dbbc011 (patch) | |
tree | 374613bc5173173d406bb8486b7847f447c95110 /bfd/elf-bfd.h | |
parent | 4dfea45abf33b0770dc98184b1bc9b7e1bc493b3 (diff) | |
download | binutils-redhat-39f2b92d4911dabc5c0ef5af4ca5c42d1dbbc011.tar.gz |
2006-02-24 H.J. Lu <hongjiu.lu@intel.com>
PR ld/2218
* elf-bfd.h (elf_backend_data): Add elf_backend_fixup_symbol.
(_bfd_elf_link_hash_fixup_symbol): New.
* elflink.c (_bfd_elf_link_hash_fixup_symbol): New.
(_bfd_elf_fix_symbol_flags): Call elf_backend_fixup_symbol if
it isn't NULL.
* elfxx-ia64.c (elf_backend_fixup_symbol): Defined.
* elfxx-target.h (elf_backend_fixup_symbol): New.
(elfNN_bed): Initialize elf_backend_fixup_symbol.
Diffstat (limited to 'bfd/elf-bfd.h')
-rw-r--r-- | bfd/elf-bfd.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h index b81f440283..4181e368bd 100644 --- a/bfd/elf-bfd.h +++ b/bfd/elf-bfd.h @@ -883,6 +883,11 @@ struct elf_backend_data void (*elf_backend_hide_symbol) (struct bfd_link_info *, struct elf_link_hash_entry *, bfd_boolean); + /* A function to do additional symbol fixup, called by + _bfd_elf_fix_symbol_flags. */ + bfd_boolean (*elf_backend_fixup_symbol) + (struct bfd_link_info *, struct elf_link_hash_entry *); + /* Merge the backend specific symbol attribute. */ void (*elf_backend_merge_symbol_attribute) (struct elf_link_hash_entry *, const Elf_Internal_Sym *, bfd_boolean, @@ -1476,6 +1481,8 @@ extern void _bfd_elf_link_hash_copy_indirect struct elf_link_hash_entry *); extern void _bfd_elf_link_hash_hide_symbol (struct bfd_link_info *, struct elf_link_hash_entry *, bfd_boolean); +extern bfd_boolean _bfd_elf_link_hash_fixup_symbol + (struct bfd_link_info *, struct elf_link_hash_entry *); extern bfd_boolean _bfd_elf_link_hash_table_init (struct elf_link_hash_table *, bfd *, struct bfd_hash_entry *(*) |