* elfxx-mips.c (allocate_dynrelocs): Don't add relocation symbols
	to the global GOT on VxWorks.
This commit is contained in:
Richard Sandiford 2010-09-19 10:07:30 +00:00
parent 0fc1eb3c4d
commit f7ff11061f
2 changed files with 13 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2010-09-19 Richard Sandiford <rdsandiford@googlemail.com>
* elfxx-mips.c (allocate_dynrelocs): Don't add relocation symbols
to the global GOT on VxWorks.
2010-09-19 Richard Sandiford <rdsandiford@googlemail.com>
* elfxx-mips.c (_bfd_mips_elf_check_relocs): On VxWorks,

View File

@ -8172,9 +8172,14 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
if (do_copy)
{
/* Even though we don't directly need a GOT entry for this symbol,
a symbol must have a dynamic symbol table index greater that
DT_MIPS_GOTSYM if there are dynamic relocations against it. */
if (hmips->global_got_area > GGA_RELOC_ONLY)
the SVR4 psABI requires it to have a dynamic symbol table
index greater that DT_MIPS_GOTSYM if there are dynamic
relocations against it.
VxWorks does not enforce the same mapping between the GOT
and the symbol table, so the same requirement does not
apply there. */
if (!htab->is_vxworks && hmips->global_got_area > GGA_RELOC_ONLY)
hmips->global_got_area = GGA_RELOC_ONLY;
mips_elf_allocate_dynamic_relocations