diff options
author | Ian Lance Taylor <ian@airs.com> | 1995-02-06 20:01:08 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1995-02-06 20:01:08 +0000 |
commit | 6c97aedf2686633d3e837802ce51ebe630f64056 (patch) | |
tree | bb409db186375bad6ede2a558c8a29d9dd1cb950 /bfd/libelf.h | |
parent | ebc4ca90f97420f225f48141c631405357b58c16 (diff) | |
download | gdb-6c97aedf2686633d3e837802ce51ebe630f64056.zip gdb-6c97aedf2686633d3e837802ce51ebe630f64056.tar.gz gdb-6c97aedf2686633d3e837802ce51ebe630f64056.tar.bz2 |
Distinguish a weak defined symbol from a regular defined symbol.
* linker.c (enum link_action): Add DEFW.
(link_action): Add bfd_link_hash_defweak column.
(_bfd_generic_link_add_one_symbol): Add DEFW case. Handle
bfd_link_hash_defweak in a few other cases.
* Many files (bfd_link_hash_undefweak): Renamed from
bfd_link_hash_weak.
* aoutx.h (aout_link_write_symbols): Handle bfd_link_hash_defweak.
(aout_link_write_other_symbol): Likewise.
(aout_link_input_section_std): Likewise.
(aout_link_input_section_ext): Likewise.
* bout.c (get_value): Likewise.
* coff-a29k.c (coff_a29k_relocate_section): Likewise.
* coff-alpha.c (alpha_convert_external_reloc): Likewise.
(alpha_relocate_section): Likewise.
* coff-mips.c (mips_relocate_section): Likewise.
(mips_relax_section): Likewise.
(bfd_mips_ecoff_create_embedded_relocs): Likewise.
* cofflink.c (coff_write_global_sym): Likewise.
(_bfd_coff_generic_relocate_section): Likewise.
* ecoff.c (ecoff_link_add_externals): Likewise.
(ecoff_link_write_external): LIkewise.
* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
(elf32_hppa_size_stubs): Likewise.
* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
(elf_i386_relocate_section): Likewise.
(elf_i386_finish_dynamic_symbol): Likewise.
* elf32-mips.c (mips_elf_output_extsym): Likewise.
(mips_elf_relocate_section): Likewise.
* elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise.
(elf32_sparc_relocate_section): Likewise.
* elfcode.h (elf_link_add_object_symbols): Likewise.
(elf_adjust_dynamic_symbol): Likewise.
(elf_bfd_final_link): Likewise.
(elf_link_output_extsym): Likewise.
* i386linux.c (linux_add_one_symbol): Likewise.
(linux_tally_symbols): Likewise.
(linux_finish_dynamic_link): Likewise.
* linker.c (_bfd_generic_link_output_symbols): Likewise.
(set_symbol_from_hash): Likewise.
* reloc16.c (bfd_coff_reloc16_get_value): Likewise.
(bfd_perform_slip): Likewise.
* sunos.c (sunos_add_one_symbol): Likewise.
(sunos_scan_std_relocs): Likewise.
(sunos_scan_ext_relocs): Likewise.
(sunos_scan_dynamic_symbol): Likewise.
(sunos_write_dynamic_symbol): Likewise.
Diffstat (limited to 'bfd/libelf.h')
-rw-r--r-- | bfd/libelf.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/bfd/libelf.h b/bfd/libelf.h index 2620077..d732bef 100644 --- a/bfd/libelf.h +++ b/bfd/libelf.h @@ -308,12 +308,13 @@ struct elf_backend_data referenced by a regular object. This is called after all the input files have been seen, but before the SIZE_DYNAMIC_SECTIONS function has been called. The hash table entry should be - bfd_link_hash_defined, and it should be defined in a section from - a dynamic object. Dynamic object sections are not included in - the final link, and this function is responsible for changing the - value to something which the rest of the link can deal with. - This will normally involve adding an entry to the .plt or .got or - some such section, and setting the symbol to point to that. */ + bfd_link_hash_defined ore bfd_link_hash_defweak, and it should be + defined in a section from a dynamic object. Dynamic object + sections are not included in the final link, and this function is + responsible for changing the value to something which the rest of + the link can deal with. This will normally involve adding an + entry to the .plt or .got or some such section, and setting the + symbol to point to that. */ boolean (*elf_backend_adjust_dynamic_symbol) PARAMS ((struct bfd_link_info *info, struct elf_link_hash_entry *h)); |