Browse Source

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.
cgen-1_1-branch
Maciej W. Rozycki 17 years ago
parent
commit
04981bc1fb
  1. 6
      bfd/ChangeLog
  2. 10
      bfd/elf32-vax.c

6
bfd/ChangeLog

@ -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

10
bfd/elf32-vax.c

@ -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…
Cancel
Save