diff options
Diffstat (limited to 'bfd/elf-bfd.h')
-rw-r--r-- | bfd/elf-bfd.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h index 567b63a..fe15b93 100644 --- a/bfd/elf-bfd.h +++ b/bfd/elf-bfd.h @@ -213,6 +213,9 @@ struct elf_link_hash_entry /* Symbol is defined by a shared library with non-default visibility in a read/write section. */ unsigned int protected_def : 1; + /* Symbol is __start_SECNAME or __stop_SECNAME to mark section + SECNAME. */ + unsigned int start_stop : 1; /* String table index in .dynstr if this is a dynamic symbol. */ unsigned long dynstr_index; @@ -243,7 +246,15 @@ struct elf_link_hash_entry struct bfd_elf_version_tree *vertree; } verinfo; - struct elf_link_virtual_table_entry *vtable; + union + { + /* For __start_SECNAME and __stop_SECNAME symbols, record the first + input section whose section name is SECNAME. */ + asection *start_stop_section; + + /* Vtable information. */ + struct elf_link_virtual_table_entry *vtable; + } u2; }; /* Will references to this symbol always reference the symbol @@ -2445,9 +2456,6 @@ extern bfd_boolean bfd_elf_gc_common_finalize_got_offsets extern bfd_boolean bfd_elf_gc_common_final_link (bfd *, struct bfd_link_info *); -extern asection *_bfd_elf_is_start_stop - (const struct bfd_link_info *, struct elf_link_hash_entry *); - extern bfd_boolean bfd_elf_reloc_symbol_deleted_p (bfd_vma, void *); |