PowerPC64: remove empty .rela.dyn (.rela.branch_lt)
authorAlan Modra <amodra@gmail.com>
Sat, 18 Apr 2020 06:27:07 +0000 (15:57 +0930)
committerAlan Modra <amodra@gmail.com>
Sun, 19 Apr 2020 22:44:42 +0000 (08:14 +0930)
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.

bfd/ChangeLog
bfd/elf64-ppc.c
ld/ChangeLog
ld/testsuite/ld-powerpc/tlsopt5.d
ld/testsuite/ld-powerpc/tlsopt5.s
ld/testsuite/ld-powerpc/tlsopt6.d

index 9d5f1cb89ec20cd7470b12ffc22048b34f6a88a5..f88e8831828e7112cac8bd9ea0ef8f3ab1c27c63 100644 (file)
@@ -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
index 63de3aba594fa4de8d556342505cb38321e1eaca..53e5d913e5de0fda63d51b31a9e0739eba4a4d71 100644 (file)
@@ -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);
 
index 0f4abca9a34cbb4020dd19e85a5244de9e5a2354..dffd363494d99f14e14e983bf9acc58d40e80a22 100644 (file)
@@ -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.
index 596c426bd7faf4f4c19432f71b824f0a19ca27e7..0fcb79821b83fd9958aa5c291c1c8f249ee5f3d5 100644 (file)
@@ -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       .*
index 7cb82db1f6565bbd80083cd7640a9b403b4ef1cb..004279a5bda132ef2e0ce02312ec3e9f0fc518b9 100644 (file)
@@ -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
index 4100302a42f65edaa95b86f79814e4521fd0f506..4ca64092c1d464c91413de1a60f2fc8459cea472 100644 (file)
@@ -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       .*