summaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2010-07-06 09:29:46 +0000
committerAlan Modra <amodra@bigpond.net.au>2010-07-06 09:29:46 +0000
commitc763d722f5201b75bd1645a7c8d5729dc65a18df (patch)
treec6eec274ee256c2cf19676165a1802e55b4a34fc /ld
parentf73351393acba3bec36e93d42279f0661963f67c (diff)
downloadbinutils-redhat-c763d722f5201b75bd1645a7c8d5729dc65a18df.tar.gz
bfd/
* elf32-ppc.c (ppc_elf_relax_section): Insert branch around trampolines only for .init and .fini sections. ld/testsuite/ * ld-powerpc/relax.s: Add branch back to _start. * ld-powerpc/relax.d: Update. * ld-powerpc/relaxr.d: Update.
Diffstat (limited to 'ld')
-rw-r--r--ld/testsuite/ChangeLog6
-rw-r--r--ld/testsuite/ld-powerpc/relax.d2
-rw-r--r--ld/testsuite/ld-powerpc/relax.s1
-rw-r--r--ld/testsuite/ld-powerpc/relaxr.d3
4 files changed, 10 insertions, 2 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index fdd6a501e8..463a14c5fe 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2010-07-06 Alan Modra <amodra@gmail.com>
+
+ * ld-powerpc/relax.s: Add branch back to _start.
+ * ld-powerpc/relax.d: Update.
+ * ld-powerpc/relaxr.d: Update.
+
2010-07-01 Alan Modra <amodra@gmail.com>
* lib/ld-lib.exp (default_ld_simple_link): Add $gcc_ld_flag before
diff --git a/ld/testsuite/ld-powerpc/relax.d b/ld/testsuite/ld-powerpc/relax.d
index 51d253be33..5a6b3ddf5f 100644
--- a/ld/testsuite/ld-powerpc/relax.d
+++ b/ld/testsuite/ld-powerpc/relax.d
@@ -8,7 +8,7 @@ Disassembly of section .text:
4: 48 00 00 11 bl 14 <_start\+0x14>
8: 48 00 43 19 bl 4320 <near>
c: 48 00 00 09 bl 14 <_start\+0x14>
- 10: 48 00 00 14 b 24 <.*>
+ 10: 4b ff ff f0 b 0 <.*>
14: 3d 80 80 00 lis r12,-32768
18: 39 8c 12 34 addi r12,r12,4660
1c: 7d 89 03 a6 mtctr r12
diff --git a/ld/testsuite/ld-powerpc/relax.s b/ld/testsuite/ld-powerpc/relax.s
index 2e05569524..11afc533f1 100644
--- a/ld/testsuite/ld-powerpc/relax.s
+++ b/ld/testsuite/ld-powerpc/relax.s
@@ -4,3 +4,4 @@ _start:
bl far
bl near
bl far
+ b _start
diff --git a/ld/testsuite/ld-powerpc/relaxr.d b/ld/testsuite/ld-powerpc/relaxr.d
index ce8cb9c7bf..6e559843e6 100644
--- a/ld/testsuite/ld-powerpc/relaxr.d
+++ b/ld/testsuite/ld-powerpc/relaxr.d
@@ -10,7 +10,8 @@ Disassembly of section .text:
8: R_PPC_NONE \*ABS\*
c: 48 00 00 19 bl 24 <_start\+0x24>
c: R_PPC_NONE \*ABS\*
- 10: 48 00 00 24 b 34 <_start\+0x34>
+ 10: 48 00 00 00 b 10 <_start\+0x10>
+ 10: R_PPC_REL24 _start
14: 3d 80 00 00 lis r12,0
16: R_PPC_ADDR16_HA near
18: 39 8c 00 00 addi r12,r12,0