From 5badf49926b225c431ba8f7370f4cbd09fe63afd Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Fri, 11 Nov 2005 11:06:34 +0000 Subject: PR 1150 * readelf.c (get_mips_symbol_other): New function. (get_symbol_other): New function. (process_symbol_table): Call get_symbol_other() to get a description of the st_other field if it contains more information than just the visibility. * elfxx-mips.c (mips_elf_calculate_relocation): Ignore an undefined symbol if it is optional. (_bfd_mips_elf_merge_symbol_attribute): Make sure that the optional flag is merged as well as the visibility. * elfxx-mips.h (_bfd_mips_elf_merge_symbol_attribute): Prototype. (elf_backend_merge_symbol_attribute): Define. * mips.h (STO_OPTIONAL): Define. (ELF_MIPS_IS_OPTIONAL): Define. --- bfd/elfxx-mips.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'bfd/elfxx-mips.h') diff --git a/bfd/elfxx-mips.h b/bfd/elfxx-mips.h index d419435c11..3af342a230 100644 --- a/bfd/elfxx-mips.h +++ b/bfd/elfxx-mips.h @@ -127,6 +127,8 @@ extern bfd_boolean _bfd_mips_relax_section (bfd *, asection *, struct bfd_link_info *, bfd_boolean *); extern bfd_vma _bfd_mips_elf_sign_extend (bfd_vma, int); +extern void _bfd_mips_elf_merge_symbol_attribute + (struct elf_link_hash_entry *, const Elf_Internal_Sym *, bfd_boolean, bfd_boolean); extern const struct bfd_elf_special_section _bfd_mips_elf_special_sections []; @@ -134,3 +136,4 @@ extern const struct bfd_elf_special_section _bfd_mips_elf_special_sections []; _bfd_mips_elf_name_local_section_symbols #define elf_backend_special_sections _bfd_mips_elf_special_sections #define elf_backend_eh_frame_address_size _bfd_mips_elf_eh_frame_address_size +#define elf_backend_merge_symbol_attribute _bfd_mips_elf_merge_symbol_attribute -- cgit v1.2.1