aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2013-01-30 22:31:31 +0000
committerAlan Modra <amodra@gmail.com>2013-01-30 22:31:31 +0000
commit22aa0c7ed3a63e204fec7adfdfce78dd368465e3 (patch)
tree232a0c2bea70837de532bc0ba79c9ef718d53869 /bfd
parenta99dad3d8972683d60088bfde8031c61596f2b94 (diff)
downloadfsf-binutils-gdb-22aa0c7ed3a63e204fec7adfdfce78dd368465e3.zip
fsf-binutils-gdb-22aa0c7ed3a63e204fec7adfdfce78dd368465e3.tar.gz
fsf-binutils-gdb-22aa0c7ed3a63e204fec7adfdfce78dd368465e3.tar.bz2
* elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog4
-rw-r--r--bfd/elf64-ppc.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index ff85ec7..8011d9a 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,7 @@
+2013-01-31 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (build_plt_stub): Correct plt stub branch to glink.
+
2013-01-28 Alan Modra <amodra@gmail.com>
* elf64-ppc.c: Use %T to print symbols names and remove redundant
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 2f6999b..eca7bb3 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -9772,7 +9772,7 @@ build_plt_stub (struct ppc_link_hash_table *htab,
{
bfd_put_32 (obfd, CMPLDI_R2_0, p), p += 4;
bfd_put_32 (obfd, BNECTR_P4, p), p += 4;
- bfd_put_32 (obfd, B_DOT + cmp_branch_off, p), p += 4;
+ bfd_put_32 (obfd, B_DOT | (cmp_branch_off & 0x3fffffc), p), p += 4;
}
else
bfd_put_32 (obfd, BCTR, p), p += 4;