aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2007-08-13 00:20:59 +0000
committerAlan Modra <amodra@gmail.com>2007-08-13 00:20:59 +0000
commitac2df442ac7901f00af15b272fc48b594b433713 (patch)
tree3f149f56697ef1e38866fced0007292dc10614f4 /ld
parentd673094738c4e5529fdd0a7b84238c4aae2d54d0 (diff)
downloadgdb-ac2df442ac7901f00af15b272fc48b594b433713.zip
gdb-ac2df442ac7901f00af15b272fc48b594b433713.tar.gz
gdb-ac2df442ac7901f00af15b272fc48b594b433713.tar.bz2
bfd/
* elf64-ppc.c (ADDI_R12_R12, LD_R11_0R2, LD_R2_0R2): Define. Update stub comments. (build_plt_stub): Build two variants, one without "addis". (ppc_build_one_stub): Build stubs without "addis" if possible. (ppc_size_one_stub): Size new stubs. ld/testsuite/ * ld-powerpc/relbrlt.s (.text.pad2): Adjust space. * ld-powerpc/relbrlt.d: Update. * ld-powerpc/tlsexe.d: Update. * ld-powerpc/tlsexe.g: Update. * ld-powerpc/tlsexe.r: Update. * ld-powerpc/tlsexetoc.d: Update. * ld-powerpc/tlsexetoc.g: Update. * ld-powerpc/tlsexetoc.r: Update. * ld-powerpc/tlsso.d: Update. * ld-powerpc/tlsso.g: Update. * ld-powerpc/tlsso.r: Update. * ld-powerpc/tlstocso.d: Update. * ld-powerpc/tlstocso.g: Update.
Diffstat (limited to 'ld')
-rw-r--r--ld/testsuite/ChangeLog16
-rw-r--r--ld/testsuite/ld-powerpc/relbrlt.d18
-rw-r--r--ld/testsuite/ld-powerpc/relbrlt.s2
-rw-r--r--ld/testsuite/ld-powerpc/tlsexe.d12
-rw-r--r--ld/testsuite/ld-powerpc/tlsexe.g2
-rw-r--r--ld/testsuite/ld-powerpc/tlsexe.r2
-rw-r--r--ld/testsuite/ld-powerpc/tlsexetoc.d14
-rw-r--r--ld/testsuite/ld-powerpc/tlsexetoc.g2
-rw-r--r--ld/testsuite/ld-powerpc/tlsexetoc.r2
-rw-r--r--ld/testsuite/ld-powerpc/tlsso.d20
-rw-r--r--ld/testsuite/ld-powerpc/tlsso.g2
-rw-r--r--ld/testsuite/ld-powerpc/tlsso.r6
-rw-r--r--ld/testsuite/ld-powerpc/tlstocso.d16
-rw-r--r--ld/testsuite/ld-powerpc/tlstocso.g2
14 files changed, 61 insertions, 55 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 02807f2..af09908 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,19 @@
+2007-08-13 Alan Modra <amodra@bigpond.net.au>
+
+ * ld-powerpc/relbrlt.s (.text.pad2): Adjust space.
+ * ld-powerpc/relbrlt.d: Update.
+ * ld-powerpc/tlsexe.d: Update.
+ * ld-powerpc/tlsexe.g: Update.
+ * ld-powerpc/tlsexe.r: Update.
+ * ld-powerpc/tlsexetoc.d: Update.
+ * ld-powerpc/tlsexetoc.g: Update.
+ * ld-powerpc/tlsexetoc.r: Update.
+ * ld-powerpc/tlsso.d: Update.
+ * ld-powerpc/tlsso.g: Update.
+ * ld-powerpc/tlsso.r: Update.
+ * ld-powerpc/tlstocso.d: Update.
+ * ld-powerpc/tlstocso.g: Update.
+
2007-08-06 Kai Tietz <kai.tietz@onevision.com>
PR ld/4877
diff --git a/ld/testsuite/ld-powerpc/relbrlt.d b/ld/testsuite/ld-powerpc/relbrlt.d
index 1bba8aa..172c60f 100644
--- a/ld/testsuite/ld-powerpc/relbrlt.d
+++ b/ld/testsuite/ld-powerpc/relbrlt.d
@@ -8,13 +8,13 @@
Disassembly of section \.text:
0*100000b0 <_start>:
-[0-9a-f ]*: 49 bf 00 31 bl .*
-[0-9a-f ]*: R_PPC64_REL24 \.text\+0x37e0044
+[0-9a-f ]*: 49 bf 00 2d bl .*
+[0-9a-f ]*: R_PPC64_REL24 \.text\+0x37e003c
[0-9a-f ]*: 60 00 00 00 nop
[0-9a-f ]*: 49 bf 00 19 bl .*
[0-9a-f ]*: R_PPC64_REL24 \.text\+0x3bf0020
[0-9a-f ]*: 60 00 00 00 nop
-[0-9a-f ]*: 49 bf 00 25 bl .*
+[0-9a-f ]*: 49 bf 00 21 bl .*
[0-9a-f ]*: R_PPC64_REL24 \.text\+0x57e0024
[0-9a-f ]*: 60 00 00 00 nop
[0-9a-f ]*: 00 00 00 00 \.long 0x0
@@ -22,23 +22,21 @@ Disassembly of section \.text:
\.\.\.
[0-9a-f ]*<.*plt_branch.*>:
-[0-9a-f ]*: 3d 82 00 00 addis r12,r2,0
-[0-9a-f ]*: e9 6c 80 00 ld r11,-32768\(r12\)
+[0-9a-f ]*: e9 62 80 00 ld r11,-32768\(r2\)
[0-9a-f ]*: 7d 69 03 a6 mtctr r11
[0-9a-f ]*: 4e 80 04 20 bctr
[0-9a-f ]*<.*long_branch.*>:
-[0-9a-f ]*: 49 bf 00 14 b .* <far>
-[0-9a-f ]*: R_PPC64_REL24 \*ABS\*\+0x137e00f4
+[0-9a-f ]*: 49 bf 00 10 b .* <far>
+[0-9a-f ]*: R_PPC64_REL24 \*ABS\*\+0x137e00ec
[0-9a-f ]*<.*plt_branch.*>:
-[0-9a-f ]*: 3d 82 00 00 addis r12,r2,0
-[0-9a-f ]*: e9 6c 80 08 ld r11,-32760\(r12\)
+[0-9a-f ]*: e9 62 80 08 ld r11,-32760\(r2\)
[0-9a-f ]*: 7d 69 03 a6 mtctr r11
[0-9a-f ]*: 4e 80 04 20 bctr
\.\.\.
-0*137e00f4 <far>:
+0*137e00ec <far>:
[0-9a-f ]*: 4e 80 00 20 blr
\.\.\.
diff --git a/ld/testsuite/ld-powerpc/relbrlt.s b/ld/testsuite/ld-powerpc/relbrlt.s
index eed2f33..cee0cdd 100644
--- a/ld/testsuite/ld-powerpc/relbrlt.s
+++ b/ld/testsuite/ld-powerpc/relbrlt.s
@@ -20,7 +20,7 @@ far:
blr
.section .text.pad2,"ax"
- .space 0x40ffd8
+ .space 0x40ffe0
.section .text.far2far,"ax"
far2far:
diff --git a/ld/testsuite/ld-powerpc/tlsexe.d b/ld/testsuite/ld-powerpc/tlsexe.d
index 26599ac..825434e 100644
--- a/ld/testsuite/ld-powerpc/tlsexe.d
+++ b/ld/testsuite/ld-powerpc/tlsexe.d
@@ -8,13 +8,12 @@
Disassembly of section \.text:
-.* <_start-0x1c>:
-.* 3d 82 00 00 addis r12,r2,0
+.* <_start-0x18>:
.* f8 41 00 28 std r2,40\(r1\)
-.* e9 6c 80 48 ld r11,-32696\(r12\)
-.* e8 4c 80 50 ld r2,-32688\(r12\)
+.* e9 62 80 48 ld r11,-32696\(r2\)
.* 7d 69 03 a6 mtctr r11
-.* e9 6c 80 58 ld r11,-32680\(r12\)
+.* e9 62 80 58 ld r11,-32680\(r2\)
+.* e8 42 80 50 ld r2,-32688\(r2\)
.* 4e 80 04 20 bctr
.* <_start>:
@@ -22,7 +21,7 @@ Disassembly of section \.text:
.* 60 00 00 00 nop
.* 7c 63 6a 14 add r3,r3,r13
.* 38 62 80 18 addi r3,r2,-32744
-.* 4b ff ff d5 bl .*
+.* 4b ff ff d9 bl .*
.* e8 41 00 28 ld r2,40\(r1\)
.* 3c 6d 00 00 addis r3,r13,0
.* 60 00 00 00 nop
@@ -56,7 +55,6 @@ Disassembly of section \.text:
.* e9 4d 90 2a lwa r10,-28632\(r13\)
.* 3d 2d 00 00 addis r9,r13,0
.* a9 49 90 30 lha r10,-28624\(r9\)
-.* 60 00 00 00 nop
.* 00 00 00 00 .*
.* 00 01 01 f0 .*
.* 7d 88 02 a6 mflr r12
diff --git a/ld/testsuite/ld-powerpc/tlsexe.g b/ld/testsuite/ld-powerpc/tlsexe.g
index 6f9aa97..58280df 100644
--- a/ld/testsuite/ld-powerpc/tlsexe.g
+++ b/ld/testsuite/ld-powerpc/tlsexe.g
@@ -7,6 +7,6 @@
.*: +file format elf64-powerpc
Contents of section \.got:
-.* 00000000 100185d0 ffffffff ffff8018 .*
+.* 00000000 100185c8 ffffffff ffff8018 .*
.* 00000000 00000000 00000000 00000000 .*
.* 00000000 00000000 00000000 00000000 .*
diff --git a/ld/testsuite/ld-powerpc/tlsexe.r b/ld/testsuite/ld-powerpc/tlsexe.r
index 4992ab2..296d814 100644
--- a/ld/testsuite/ld-powerpc/tlsexe.r
+++ b/ld/testsuite/ld-powerpc/tlsexe.r
@@ -16,7 +16,7 @@ Section Headers:
+\[ 4\] \.dynstr +.*
+\[ 5\] \.rela\.dyn +.*
+\[ 6\] \.rela\.plt +.*
- +\[ 7\] \.text +PROGBITS .* 0+100 0+ +AX +0 +0 +8
+ +\[ 7\] \.text +PROGBITS .* 0+f8 0+ +AX +0 +0 +8
+\[ 8\] \.tdata +PROGBITS .* 0+38 0+ WAT +0 +0 +8
+\[ 9\] \.tbss +NOBITS .* 0+38 0+ WAT +0 +0 +8
+\[10\] \.dynamic +DYNAMIC .* 0+150 10 +WA +4 +0 +8
diff --git a/ld/testsuite/ld-powerpc/tlsexetoc.d b/ld/testsuite/ld-powerpc/tlsexetoc.d
index c1cb190..d6a0388 100644
--- a/ld/testsuite/ld-powerpc/tlsexetoc.d
+++ b/ld/testsuite/ld-powerpc/tlsexetoc.d
@@ -8,21 +8,20 @@
Disassembly of section \.text:
-.* <_start-0x1c>:
-.* 3d 82 00 00 addis r12,r2,0
+.* <_start-0x18>:
.* f8 41 00 28 std r2,40\(r1\)
-.* e9 6c 80 70 ld r11,-32656\(r12\)
-.* e8 4c 80 78 ld r2,-32648\(r12\)
+.* e9 62 80 70 ld r11,-32656\(r2\)
.* 7d 69 03 a6 mtctr r11
-.* e9 6c 80 80 ld r11,-32640\(r12\)
+.* e9 62 80 80 ld r11,-32640\(r2\)
+.* e8 42 80 78 ld r2,-32648\(r2\)
.* 4e 80 04 20 bctr
.* <_start>:
.* 38 62 80 08 addi r3,r2,-32760
-.* 4b ff ff e1 bl .*
+.* 4b ff ff e5 bl .*
.* e8 41 00 28 ld r2,40\(r1\)
.* 38 62 80 18 addi r3,r2,-32744
-.* 4b ff ff d5 bl .*
+.* 4b ff ff d9 bl .*
.* e8 41 00 28 ld r2,40\(r1\)
.* 3c 6d 00 00 addis r3,r13,0
.* 60 00 00 00 nop
@@ -40,7 +39,6 @@ Disassembly of section \.text:
.* 89 4d 90 60 lbz r10,-28576\(r13\)
.* 3d 2d 00 00 addis r9,r13,0
.* 99 49 90 68 stb r10,-28568\(r9\)
-.* 60 00 00 00 nop
.* 00 00 00 00 .*
.* 00 01 02 18 .*
.* 7d 88 02 a6 mflr r12
diff --git a/ld/testsuite/ld-powerpc/tlsexetoc.g b/ld/testsuite/ld-powerpc/tlsexetoc.g
index 06be9d1..df3994c 100644
--- a/ld/testsuite/ld-powerpc/tlsexetoc.g
+++ b/ld/testsuite/ld-powerpc/tlsexetoc.g
@@ -7,7 +7,7 @@
.*: +file format elf64-powerpc
Contents of section \.got:
-.* 00000000 10018570 00000000 00000000 .*
+.* 00000000 10018568 00000000 00000000 .*
.* 00000000 00000000 00000000 00000000 .*
.* 00000000 00000000 00000000 00000001 .*
.* 00000000 00000000 00000000 00000001 .*
diff --git a/ld/testsuite/ld-powerpc/tlsexetoc.r b/ld/testsuite/ld-powerpc/tlsexetoc.r
index d92edd4..539269a 100644
--- a/ld/testsuite/ld-powerpc/tlsexetoc.r
+++ b/ld/testsuite/ld-powerpc/tlsexetoc.r
@@ -16,7 +16,7 @@ Section Headers:
+\[ 4\] \.dynstr +.*
+\[ 5\] \.rela\.dyn +.*
+\[ 6\] \.rela\.plt +.*
- +\[ 7\] \.text +PROGBITS .* 0+c0 0+ +AX +0 +0 +8
+ +\[ 7\] \.text +PROGBITS .* 0+b8 0+ +AX +0 +0 +8
+\[ 8\] \.tdata +PROGBITS .* 0+38 0+ WAT +0 +0 +8
+\[ 9\] \.tbss +NOBITS .* 0+38 0+ WAT +0 +0 +8
+\[10\] \.dynamic +DYNAMIC .* 0+150 10 +WA +4 +0 +8
diff --git a/ld/testsuite/ld-powerpc/tlsso.d b/ld/testsuite/ld-powerpc/tlsso.d
index 0dbc849..3fa4029 100644
--- a/ld/testsuite/ld-powerpc/tlsso.d
+++ b/ld/testsuite/ld-powerpc/tlsso.d
@@ -9,26 +9,25 @@
Disassembly of section \.text:
.* <\.__tls_get_addr>:
-.* 3d 82 00 00 addis r12,r2,0
.* f8 41 00 28 std r2,40\(r1\)
-.* e9 6c 80 78 ld r11,-32648\(r12\)
-.* e8 4c 80 80 ld r2,-32640\(r12\)
+.* e9 62 80 78 ld r11,-32648\(r2\)
.* 7d 69 03 a6 mtctr r11
-.* e9 6c 80 88 ld r11,-32632\(r12\)
+.* e9 62 80 88 ld r11,-32632\(r2\)
+.* e8 42 80 80 ld r2,-32640\(r2\)
.* 4e 80 04 20 bctr
.* <_start>:
.* 38 62 80 30 addi r3,r2,-32720
-.* 4b ff ff e1 bl .* <\.__tls_get_addr>
+.* 4b ff ff e5 bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* 38 62 80 08 addi r3,r2,-32760
-.* 4b ff ff d5 bl .* <\.__tls_get_addr>
+.* 4b ff ff d9 bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* 38 62 80 48 addi r3,r2,-32696
-.* 4b ff ff c9 bl .* <\.__tls_get_addr>
+.* 4b ff ff cd bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* 38 62 80 08 addi r3,r2,-32760
-.* 4b ff ff bd bl .* <\.__tls_get_addr>
+.* 4b ff ff c1 bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* 39 23 80 40 addi r9,r3,-32704
.* 3d 23 00 00 addis r9,r3,0
@@ -41,10 +40,10 @@ Disassembly of section \.text:
.* 3d 2d 00 00 addis r9,r13,0
.* 99 49 00 00 stb r10,0\(r9\)
.* 38 62 80 18 addi r3,r2,-32744
-.* 4b ff ff 89 bl .* <\.__tls_get_addr>
+.* 4b ff ff 8d bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* 38 62 80 08 addi r3,r2,-32760
-.* 4b ff ff 7d bl .* <\.__tls_get_addr>
+.* 4b ff ff 81 bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* f9 43 80 08 std r10,-32760\(r3\)
.* 3d 23 00 00 addis r9,r3,0
@@ -56,7 +55,6 @@ Disassembly of section \.text:
.* e9 4d 00 02 lwa r10,0\(r13\)
.* 3d 2d 00 00 addis r9,r13,0
.* a9 49 00 00 lha r10,0\(r9\)
-.* 60 00 00 00 nop
.* 00 00 00 00 .*
.* 00 01 02 20 .*
.* 7d 88 02 a6 mflr r12
diff --git a/ld/testsuite/ld-powerpc/tlsso.g b/ld/testsuite/ld-powerpc/tlsso.g
index 82ccc8d..330cb18 100644
--- a/ld/testsuite/ld-powerpc/tlsso.g
+++ b/ld/testsuite/ld-powerpc/tlsso.g
@@ -7,7 +7,7 @@
.*: +file format elf64-powerpc
Contents of section \.got:
-.* 00000000 00018780 00000000 00000000 .*
+.* 00000000 00018778 00000000 00000000 .*
.* 00000000 00000000 00000000 00000000 .*
.* 00000000 00000000 00000000 00000000 .*
.* 00000000 00000000 00000000 00000000 .*
diff --git a/ld/testsuite/ld-powerpc/tlsso.r b/ld/testsuite/ld-powerpc/tlsso.r
index 69fff67..e40c78d 100644
--- a/ld/testsuite/ld-powerpc/tlsso.r
+++ b/ld/testsuite/ld-powerpc/tlsso.r
@@ -49,9 +49,9 @@ Relocation section '\.rela\.dyn' at offset .* contains 16 entries:
[0-9a-f ]+R_PPC64_TPREL16 +0+60 le0 \+ 0
[0-9a-f ]+R_PPC64_TPREL16_HA +0+68 le1 \+ 0
[0-9a-f ]+R_PPC64_TPREL16_LO +0+68 le1 \+ 0
-[0-9a-f ]+R_PPC64_TPREL16_DS +0+105f8 \.tdata \+ 28
-[0-9a-f ]+R_PPC64_TPREL16_HA +0+105f8 \.tdata \+ 30
-[0-9a-f ]+R_PPC64_TPREL16_LO +0+105f8 \.tdata \+ 30
+[0-9a-f ]+R_PPC64_TPREL16_DS +0+105f0 \.tdata \+ 28
+[0-9a-f ]+R_PPC64_TPREL16_HA +0+105f0 \.tdata \+ 30
+[0-9a-f ]+R_PPC64_TPREL16_LO +0+105f0 \.tdata \+ 30
[0-9a-f ]+R_PPC64_DTPMOD64 +0+
[0-9a-f ]+R_PPC64_DTPMOD64 +0+
[0-9a-f ]+R_PPC64_DTPREL64 +0+
diff --git a/ld/testsuite/ld-powerpc/tlstocso.d b/ld/testsuite/ld-powerpc/tlstocso.d
index 073e85d..deaf2a7 100644
--- a/ld/testsuite/ld-powerpc/tlstocso.d
+++ b/ld/testsuite/ld-powerpc/tlstocso.d
@@ -9,26 +9,25 @@
Disassembly of section \.text:
.* <\.__tls_get_addr>:
-.* 3d 82 00 00 addis r12,r2,0
.* f8 41 00 28 std r2,40\(r1\)
-.* e9 6c 80 70 ld r11,-32656\(r12\)
-.* e8 4c 80 78 ld r2,-32648\(r12\)
+.* e9 62 80 70 ld r11,-32656\(r2\)
.* 7d 69 03 a6 mtctr r11
-.* e9 6c 80 80 ld r11,-32640\(r12\)
+.* e9 62 80 80 ld r11,-32640\(r2\)
+.* e8 42 80 78 ld r2,-32648\(r2\)
.* 4e 80 04 20 bctr
.* <_start>:
.* 38 62 80 08 addi r3,r2,-32760
-.* 4b ff ff e1 bl .* <\.__tls_get_addr>
+.* 4b ff ff e5 bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* 38 62 80 18 addi r3,r2,-32744
-.* 4b ff ff d5 bl .* <\.__tls_get_addr>
+.* 4b ff ff d9 bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* 38 62 80 28 addi r3,r2,-32728
-.* 4b ff ff c9 bl .* <\.__tls_get_addr>
+.* 4b ff ff cd bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* 38 62 80 38 addi r3,r2,-32712
-.* 4b ff ff bd bl .* <\.__tls_get_addr>
+.* 4b ff ff c1 bl .* <\.__tls_get_addr>
.* e8 41 00 28 ld r2,40\(r1\)
.* 39 23 80 40 addi r9,r3,-32704
.* 3d 23 00 00 addis r9,r3,0
@@ -40,7 +39,6 @@ Disassembly of section \.text:
.* 89 4d 00 00 lbz r10,0\(r13\)
.* 3d 2d 00 00 addis r9,r13,0
.* 99 49 00 00 stb r10,0\(r9\)
-.* 60 00 00 00 nop
.* 00 00 00 00 .*
.* 00 01 02 18 .*
.* 7d 88 02 a6 mflr r12
diff --git a/ld/testsuite/ld-powerpc/tlstocso.g b/ld/testsuite/ld-powerpc/tlstocso.g
index dbe7897..d670a21 100644
--- a/ld/testsuite/ld-powerpc/tlstocso.g
+++ b/ld/testsuite/ld-powerpc/tlstocso.g
@@ -7,7 +7,7 @@
.*: +file format elf64-powerpc
Contents of section \.got:
-.* 00000000 000186c8 00000000 00000000 .*
+.* 00000000 000186c0 00000000 00000000 .*
.* 00000000 00000000 00000000 00000000 .*
.* 00000000 00000000 00000000 00000000 .*
.* 00000000 00000000 00000000 00000000 .*