2001-08-27 H.J. Lu <hjl@gnu.org>

* elf32-mips.c (mips_elf_create_dynamic_relocation): Add more
	sanity check.
	(mips_elf_calculate_relocation): Create dynamic relocation for
	symbols with weak definition or the ELF_LINK_HASH_DEF_REGULAR
	bit is not set.
This commit is contained in:
H.J. Lu 2001-08-27 15:40:38 +00:00
parent 9e80ff3a40
commit 14d5043ad0
2 changed files with 13 additions and 2 deletions

View file

@ -1,3 +1,11 @@
2001-08-27 H.J. Lu <hjl@gnu.org>
* elf32-mips.c (mips_elf_create_dynamic_relocation): Add more
sanity check.
(mips_elf_calculate_relocation): Create dynamic relocation for
symbols with weak definition or the ELF_LINK_HASH_DEF_REGULAR
bit is not set.
2001-08-27 H.J. Lu <hjl@gnu.org>
* elf32-mips.c (_bfd_mips_elf_hide_symbol): Add prototype.

View file

@ -5830,6 +5830,8 @@ mips_elf_create_dynamic_relocation (output_bfd, info, rel, h, sec,
MIPS_ELF_REL_DYN_SECTION_NAME (output_bfd));
BFD_ASSERT (sreloc != NULL);
BFD_ASSERT (sreloc->contents != NULL);
BFD_ASSERT (sreloc->reloc_count * MIPS_ELF_REL_SIZE (output_bfd)
< sreloc->_raw_size);
skip = false;
@ -6330,8 +6332,9 @@ mips_elf_calculate_relocation (abfd,
if ((info->shared
|| (elf_hash_table (info)->dynamic_sections_created
&& h != NULL
&& ((h->root.elf_link_hash_flags & ELF_LINK_HASH_DEF_DYNAMIC)
!= 0)))
&& (h->root.type == bfd_link_hash_defweak
|| (h->root.elf_link_hash_flags
& ELF_LINK_HASH_DEF_REGULAR) == 0)))
&& (input_section->flags & SEC_ALLOC) != 0)
{
/* If we're creating a shared library, or this relocation is