diff options
author | Matt Thomas <matt@3am-software.com> | 2007-04-06 16:29:32 +0000 |
---|---|---|
committer | Matt Thomas <matt@3am-software.com> | 2007-04-06 16:29:32 +0000 |
commit | da6bcfca9535fb9680fd738207da6c58e0e898bc (patch) | |
tree | 9b3122361334f61ea912f5852cbe141af40e01c9 | |
parent | 5ad507eea30369c8bd106a793749bb0534353d8f (diff) | |
download | gdb-da6bcfca9535fb9680fd738207da6c58e0e898bc.zip gdb-da6bcfca9535fb9680fd738207da6c58e0e898bc.tar.gz gdb-da6bcfca9535fb9680fd738207da6c58e0e898bc.tar.bz2 |
2007-04-03 Matt Thomas <matt@netbsd.org>
* 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.
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf32-vax.c | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 813c13d..cfaa72f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2007-04-03 Matt Thomas <matt@netbsd.org> + + * 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 <hongjiu.lu@intel.com> PR ld/4304 diff --git a/bfd/elf32-vax.c b/bfd/elf32-vax.c index fce01e2..7df7165 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; |