aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2020-04-18 15:57:07 +0930
committerAlan Modra <amodra@gmail.com>2020-04-20 08:14:42 +0930
commit2efec98b28bbc89fc8e062709c7e28cc8a56ee40 (patch)
tree4c52288432a90138eab7e5d15ac38d6d7ee49cda
parent45e1f031e823abf0fb233b3da6da099417e65bd8 (diff)
downloadgdb-2efec98b28bbc89fc8e062709c7e28cc8a56ee40.zip
gdb-2efec98b28bbc89fc8e062709c7e28cc8a56ee40.tar.gz
gdb-2efec98b28bbc89fc8e062709c7e28cc8a56ee40.tar.bz2
PowerPC64: remove empty .rela.dyn (.rela.branch_lt)
Stripping .rela.branch_lt is easy enough but messes with the testsuite due to stub symbols (that use section id) changing. Tests that run on more than one target variant can be tricky to fix, this renaming happened to work. bfd/ * elf64-ppc.c (ppc64_elf_size_stubs): Strip relbrlt too. ld/ * testsuite/ld-powerpc/tlsopt5.s: Rename foo to aaaaa. * testsuite/ld-powerpc/tlsopt5.d: Adjust to suit. * testsuite/ld-powerpc/tlsopt6.d: Likewise.
-rw-r--r--bfd/ChangeLog4
-rw-r--r--bfd/elf64-ppc.c2
-rw-r--r--ld/ChangeLog6
-rw-r--r--ld/testsuite/ld-powerpc/tlsopt5.d12
-rw-r--r--ld/testsuite/ld-powerpc/tlsopt5.s4
-rw-r--r--ld/testsuite/ld-powerpc/tlsopt6.d12
6 files changed, 26 insertions, 14 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 9d5f1cb..f88e883 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,7 @@
+2020-04-20 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_size_stubs): Strip relbrlt too.
+
2020-04-18 Alan Modra <amodra@gmail.com>
* section.c (bfd_is_const_section): Correct test for special
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 63de3ab..53e5d91 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -13772,6 +13772,8 @@ ppc64_elf_size_stubs (struct bfd_link_info *info)
}
maybe_strip_output (info, htab->brlt);
+ if (htab->relbrlt != NULL)
+ maybe_strip_output (info, htab->relbrlt);
if (htab->glink_eh_frame != NULL)
maybe_strip_output (info, htab->glink_eh_frame);
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 0f4abca..dffd363 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,9 @@
+2020-04-20 Alan Modra <amodra@gmail.com>
+
+ * testsuite/ld-powerpc/tlsopt5.s: Rename foo to aaaaa.
+ * testsuite/ld-powerpc/tlsopt5.d: Adjust to suit.
+ * testsuite/ld-powerpc/tlsopt6.d: Likewise.
+
2020-04-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/ld-elf/warn1.d: Don't xfail on 64-bit Solaris/SPARC.
diff --git a/ld/testsuite/ld-powerpc/tlsopt5.d b/ld/testsuite/ld-powerpc/tlsopt5.d
index 596c426..0fcb798 100644
--- a/ld/testsuite/ld-powerpc/tlsopt5.d
+++ b/ld/testsuite/ld-powerpc/tlsopt5.d
@@ -8,9 +8,9 @@
Disassembly of section \.text:
-.* <.*\.plt_call\.foo>:
+.* <.*\.plt_call\.aaaaa>:
.*: (18 00 41 f8|f8 41 00 18) std r2,24\(r1\)
-.*: (28 80 82 e9|e9 82 80 28) ld r12,-32728\(r2\)
+.*: (30 80 82 e9|e9 82 80 30) ld r12,-32720\(r2\)
.*: (a6 03 89 7d|7d 89 03 a6) mtctr r12
.*: (20 04 80 4e|4e 80 04 20) bctr
\.\.\.
@@ -26,7 +26,7 @@ Disassembly of section \.text:
.*: (a6 02 08 7c|7c 08 02 a6) mflr r0
.*: (08 00 01 f8|f8 01 00 08) std r0,8\(r1\)
.*: (18 00 41 f8|f8 41 00 18) std r2,24\(r1\)
-.*: (30 80 82 e9|e9 82 80 30) ld r12,-32720\(r2\)
+.*: (28 80 82 e9|e9 82 80 28) ld r12,-32728\(r2\)
.*: (a6 03 89 7d|7d 89 03 a6) mtctr r12
.*: (21 04 80 4e|4e 80 04 21) bctrl
.*: (18 00 41 e8|e8 41 00 18) ld r2,24\(r1\)
@@ -39,7 +39,7 @@ Disassembly of section \.text:
.*: (08 80 62 38|38 62 80 08) addi r3,r2,-32760
.*: (9d ff ff 4b|4b ff ff 9d) bl .* <.*\.plt_call\.__tls_get_addr_opt@@GLIBC_2\.22>
.*: (00 00 00 60|60 00 00 00) nop
-.*: (75 ff ff 4b|4b ff ff 75) bl .* <.*\.plt_call\.foo>
+.*: (75 ff ff 4b|4b ff ff 75) bl .* <.*\.plt_call\.aaaaa>
.*: (18 00 41 e8|e8 41 00 18) ld r2,24\(r1\)
.*: (00 00 00 60|60 00 00 00) nop
.*
@@ -61,8 +61,8 @@ Disassembly of section \.text:
.*: (08 00 6b e9|e9 6b 00 08) ld r11,8\(r11\)
.*: (20 04 80 4e|4e 80 04 20) bctr
-.* <foo@plt>:
+.* <__tls_get_addr_opt@plt>:
.* (c8 ff ff 4b|4b ff ff c8) b .*
-.* <__tls_get_addr_opt@plt>:
+.* <aaaaa@plt>:
.*: (c4 ff ff 4b|4b ff ff c4) b .*
diff --git a/ld/testsuite/ld-powerpc/tlsopt5.s b/ld/testsuite/ld-powerpc/tlsopt5.s
index 7cb82db..004279a 100644
--- a/ld/testsuite/ld-powerpc/tlsopt5.s
+++ b/ld/testsuite/ld-powerpc/tlsopt5.s
@@ -1,10 +1,10 @@
.globl _start
- .weak foo
+ .weak aaaaa
_start:
.cfi_startproc
addi 3,2,gd@got@tlsgd
bl __tls_get_addr(gd@tlsgd)
nop
- bl foo
+ bl aaaaa
nop
.cfi_endproc
diff --git a/ld/testsuite/ld-powerpc/tlsopt6.d b/ld/testsuite/ld-powerpc/tlsopt6.d
index 4100302..4ca6409 100644
--- a/ld/testsuite/ld-powerpc/tlsopt6.d
+++ b/ld/testsuite/ld-powerpc/tlsopt6.d
@@ -8,9 +8,9 @@
Disassembly of section \.text:
-.* <.*\.plt_call\.foo>:
+.* <.*\.plt_call\.aaaaa>:
.*: (18 00 41 f8|f8 41 00 18) std r2,24\(r1\)
-.*: (28 80 82 e9|e9 82 80 28) ld r12,-32728\(r2\)
+.*: (30 80 82 e9|e9 82 80 30) ld r12,-32720\(r2\)
.*: (a6 03 89 7d|7d 89 03 a6) mtctr r12
.*: (20 04 80 4e|4e 80 04 20) bctr
\.\.\.
@@ -35,7 +35,7 @@ Disassembly of section \.text:
.*: (f8 ff 61 f9|f9 61 ff f8) std r11,-8\(r1\)
.*: (a1 ff 21 f8|f8 21 ff a1) stdu r1,-96\(r1\)
.*: (18 00 41 f8|f8 41 00 18) std r2,24\(r1\)
-.*: (30 80 82 e9|e9 82 80 30) ld r12,-32720\(r2\)
+.*: (28 80 82 e9|e9 82 80 28) ld r12,-32728\(r2\)
.*: (a6 03 89 7d|7d 89 03 a6) mtctr r12
.*: (21 04 80 4e|4e 80 04 21) bctrl
.*: (18 00 41 e8|e8 41 00 18) ld r2,24\(r1\)
@@ -57,7 +57,7 @@ Disassembly of section \.text:
.*: (08 80 62 38|38 62 80 08) addi r3,r2,-32760
.*: (5d ff ff 4b|4b ff ff 5d) bl .* <.*\.plt_call\.__tls_get_addr_opt@@GLIBC_2\.22>
.*: (00 00 00 60|60 00 00 00) nop
-.*: (35 ff ff 4b|4b ff ff 35) bl .* <.*\.plt_call\.foo>
+.*: (35 ff ff 4b|4b ff ff 35) bl .* <.*\.plt_call\.aaaaa>
.*: (18 00 41 e8|e8 41 00 18) ld r2,24\(r1\)
.*: (00 00 00 60|60 00 00 00) nop
.*
@@ -79,8 +79,8 @@ Disassembly of section \.text:
.*: (08 00 6b e9|e9 6b 00 08) ld r11,8\(r11\)
.*: (20 04 80 4e|4e 80 04 20) bctr
-.* <foo@plt>:
+.* <__tls_get_addr_opt@plt>:
.* (c8 ff ff 4b|4b ff ff c8) b .*
-.* <__tls_get_addr_opt@plt>:
+.* <aaaaa@plt>:
.*: (c4 ff ff 4b|4b ff ff c4) b .*