diff options
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elf64-ppc.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 7225371426..b56b279eb8 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2010-04-13 Alan Modra <amodra@gmail.com> + + * elf64-ppc.c (ppc64_elf_relocate_section): Correct NOP location + when optimizing high got_tlsgd/ld insns. + 2010-04-10 H.J. Lu <hongjiu.lu@intel.com> * hosts/x86-64linux.h (HAVE_PRPSINFO32_T): Undefine before diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c index 3259e2e719..769b0a4361 100644 --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -11650,8 +11650,8 @@ ppc64_elf_relocate_section (bfd *output_bfd, + R_PPC64_GOT_TPREL16_DS); else { - bfd_put_32 (output_bfd, NOP, contents + rel->r_offset); rel->r_offset -= d_offset; + bfd_put_32 (output_bfd, NOP, contents + rel->r_offset); r_type = R_PPC64_NONE; } rel->r_info = ELF64_R_INFO (r_symndx, r_type); |