diff options
author | Richard Henderson <rth@redhat.com> | 2000-02-13 23:11:32 +0000 |
---|---|---|
committer | Richard Henderson <rth@redhat.com> | 2000-02-13 23:11:32 +0000 |
commit | 2920b85c635ae57dc3f6b89f073d252ac3415ce2 (patch) | |
tree | 09c0c63f9ce0106e86a59bb35d0b87cdfc06add6 /bfd/elf-bfd.h | |
parent | 7f8d5fc90bf3c799976edffa902e03edf1455061 (diff) | |
download | gdb-2920b85c635ae57dc3f6b89f073d252ac3415ce2.zip gdb-2920b85c635ae57dc3f6b89f073d252ac3415ce2.tar.gz gdb-2920b85c635ae57dc3f6b89f073d252ac3415ce2.tar.bz2 |
* elf-bfd.h (struct elf_link_hash_table): Add copy_indirect and
hide_symbol members.
(elf_link_hash_copy_indirect): New.
(elf_link_hash_hide_symbol): New.
* elflink.h (elf_link_add_object_symbols): Break out copy from
indirect new new symbol to elf.c.
(elf_link_assign_sym_version): Break out privatization of
non-exported symbol to elf.c.
* elf.c (_bfd_elf_link_hash_copy_indirect): New.
(_bfd_elf_link_hash_hide_symbol): New.
(_bfd_elf_link_hash_table_init): Init copy_indirect and hide_symbol.
Diffstat (limited to 'bfd/elf-bfd.h')
-rw-r--r-- | bfd/elf-bfd.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h index 302ca7a..6f0624e 100644 --- a/bfd/elf-bfd.h +++ b/bfd/elf-bfd.h @@ -243,6 +243,12 @@ struct elf_link_hash_table PTR stab_info; /* A linked list of local symbols to be added to .dynsym. */ struct elf_link_local_dynamic_entry *dynlocal; + + void (*copy_indirect) PARAMS ((struct elf_link_hash_table *, + struct elf_link_hash_entry *, + struct elf_link_hash_entry *)); + void (*hide_symbol) PARAMS ((struct elf_link_hash_table *, + struct elf_link_hash_entry *)); }; /* Look up an entry in an ELF linker hash table. */ @@ -263,6 +269,16 @@ struct elf_link_hash_table /* Get the ELF linker hash table from a link_info structure. */ #define elf_hash_table(p) ((struct elf_link_hash_table *) ((p)->hash)) + +/* Call the copy_indirect method. */ + +#define elf_link_hash_copy_indirect(TABLE,DIR,IND) \ + ((*(TABLE)->copy_indirect) ((TABLE), (DIR), (IND))) + +/* Call the hide_symbol method. */ + +#define elf_link_hash_hide_symbol(TABLE,SYM) \ + ((*(TABLE)->hide_symbol) ((TABLE), (SYM))) /* Constant information held for an ELF backend. */ |