From da6bcfca9535fb9680fd738207da6c58e0e898bc Mon Sep 17 00:00:00 2001 From: Matt Thomas Date: Fri, 6 Apr 2007 16:29:32 +0000 Subject: [PATCH] 2007-04-03 Matt Thomas * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc in a shared object if it is not in a CODE section or if it is against a section symbol. This allows DWARF2 to use pcrel format. --- bfd/ChangeLog | 6 ++++++ bfd/elf32-vax.c | 5 +++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 813c13dcaae..cfaa72ffb62 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2007-04-03 Matt Thomas + + * elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc + in a shared object if it is not in a CODE section or if it is against + a section symbol. This allows DWARF2 to use pcrel format. + 2007-04-05 H.J. Lu PR ld/4304 diff --git a/bfd/elf32-vax.c b/bfd/elf32-vax.c index fce01e21579..7df71655b7b 100644 --- a/bfd/elf32-vax.c +++ b/bfd/elf32-vax.c @@ -1625,8 +1625,9 @@ elf_vax_relocate_section (bfd *output_bfd, && ((r_type != R_VAX_PC8 && r_type != R_VAX_PC16 && r_type != R_VAX_PC32) - || (!info->symbolic - || !h->def_regular))) + || ((input_section->flags & SEC_CODE) + && (!info->symbolic + || (!h->def_regular && h->type != STT_SECTION))))) { Elf_Internal_Rela outrel; bfd_byte *loc; -- 2.30.2