bfd/
* elf32-vax.c (elf_vax_relocate_section): For symbol references from an executable to a shared library treat R_VAX_PC32 relocations as R_VAX_PLT32 ones.
This commit is contained in:
parent
886815b266
commit
04981bc1fb
@ -1,3 +1,9 @@
|
||||
2009-06-16 Maciej W. Rozycki <macro@linux-mips.org>
|
||||
|
||||
* elf32-vax.c (elf_vax_relocate_section): For symbol references
|
||||
from an executable to a shared library treat R_VAX_PC32
|
||||
relocations as R_VAX_PLT32 ones.
|
||||
|
||||
2009-06-16 Maciej W. Rozycki <macro@linux-mips.org>
|
||||
|
||||
* elf32-vax.c (elf_vax_instantiate_got_entries): Skip local
|
||||
|
@ -1544,6 +1544,14 @@ elf_vax_relocate_section (bfd *output_bfd,
|
||||
}
|
||||
break;
|
||||
|
||||
case R_VAX_PC32:
|
||||
/* If we are creating an executable and the function this
|
||||
reloc refers to is in a shared lib, then we made a PLT
|
||||
entry for this symbol and need to handle the reloc like
|
||||
a PLT reloc. */
|
||||
if (info->shared)
|
||||
goto r_vax_pc32_shared;
|
||||
/* Fall through. */
|
||||
case R_VAX_PLT32:
|
||||
/* Relocation is to the entry for this symbol in the
|
||||
procedure linkage table. */
|
||||
@ -1605,7 +1613,7 @@ elf_vax_relocate_section (bfd *output_bfd,
|
||||
|
||||
case R_VAX_PC8:
|
||||
case R_VAX_PC16:
|
||||
case R_VAX_PC32:
|
||||
r_vax_pc32_shared:
|
||||
if (h == NULL
|
||||
|| ELF_ST_VISIBILITY (h->other) != STV_DEFAULT
|
||||
|| h->forced_local)
|
||||
|
Loading…
x
Reference in New Issue
Block a user