[binutils-gdb] Re: PowerPC64 __tls_get_addr_opt stub .eh_frame fix
Alan Modra
amodra@sourceware.org
Wed Aug 1 09:40:00 GMT 2018
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=a67ae9b01af7eb2b1f8e5c517338a4b12167ce40
commit a67ae9b01af7eb2b1f8e5c517338a4b12167ce40
Author: Alan Modra <amodra@gmail.com>
Date: Wed Aug 1 18:59:03 2018 +0930
Re: PowerPC64 __tls_get_addr_opt stub .eh_frame fix
The modified test failed on some powerpc targets due to differences in
default hash style. If the default hash style is both, then more
sections are created, bumping section ids. Section id is used in stub
symbols and although the test is careful to not depend on id in
labels, the stub hash traversal order changes when stub names change.
That lead to the stubs being emitted in a different order and thus not
matching expected output.
* testsuite/ld-powerpc/powerpc.exp: Run tlsopt5 with hash-style
specified.
Diff:
---
ld/ChangeLog | 5 +++++
ld/testsuite/ld-powerpc/powerpc.exp | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 73e57b3..93b3f67 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,5 +1,10 @@
2018-08-01 Alan Modra <amodra@gmail.com>
+ * testsuite/ld-powerpc/powerpc.exp: Run tlsopt5 with hash-style
+ specified.
+
+2018-08-01 Alan Modra <amodra@gmail.com>
+
* testsuite/ld-powerpc/powerpc.exp: Run tlsopt5 with plt alignment.
* testsuite/ld-powerpc/tlsopt5.s: Add extra call.
* testsuite/ld-powerpc/tlsopt5.wf: Adjust expected output.
diff --git a/ld/testsuite/ld-powerpc/powerpc.exp b/ld/testsuite/ld-powerpc/powerpc.exp
index ed7bc74..ac563eb 100644
--- a/ld/testsuite/ld-powerpc/powerpc.exp
+++ b/ld/testsuite/ld-powerpc/powerpc.exp
@@ -224,7 +224,7 @@ set ppc64elftests {
"tlsopt4"}
{"TLS DLL" "-shared -melf64ppc --version-script tlsdll.ver" "" "-a64" {tlsdll.s}
{} "tlsdll.so"}
- {"TLS opt 5" "-melf64ppc -shared --gc-sections --no-plt-localentry tmpdir/tlsdll.so" "" "-a64" {tlsopt5.s}
+ {"TLS opt 5" "-melf64ppc -shared --hash-style=both --gc-sections --no-plt-localentry tmpdir/tlsdll.so" "" "-a64" {tlsopt5.s}
{{objdump -dr tlsopt5.d} {readelf -wf tlsopt5.wf}}
"tlsopt5"}
{"sym@tocbase" "-shared -melf64ppc" "" "-a64" {symtocbase-1.s symtocbase-2.s}
More information about the Binutils-cvs
mailing list