mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-04 19:00:09 +00:00
e98c925fa4
This makes the __tls_get_addr_opt test run as a shared library, and so actually test that DTPMOD64/DTPREL64 pairs are processed by ld.so to support the __tls_get_adfr_opt call stub fast return. After a 2017-01-24 patch (binutils f0158f4416) ld.bfd no longer emitted unnecessary dynamic relocations against local thread variables, instead setting up the __tls_index GOT entries for the call stub fast return. This meant tst-tlsopt-powerpc passed but did not check ld.so relocation support. After a 2017-07-16 patch (binutils 676ee2b5fa) ld.bfd no longer set up the __tls_index GOT entries for the call stub fast return, and tst-tlsopt-powerpc failed. Compiling mod-tlsopt-powerpc.c with -DSHARED exposed a bug in powerpc64/tls-macros.h, which defines a __TLS_GET_ADDR macro that clashes with one defined in dl-tls.h. The tls-macros.h version is only used in that file, so delete it and expand. * sysdeps/powerpc/mod-tlsopt-powerpc.c: Extract from tst-tlsopt-powerpc.c with function name change and no test harness. * sysdeps/powerpc/tst-tlsopt-powerpc.c: Remove body of test. Call tls_get_addr_opt_test. * sysdeps/powerpc/Makefile (LDFLAGS-tst-tlsopt-powerpc): Don't define. (modules-names): Add mod-tlsopt-powerpc. (mod-tlsopt-powerpc.so-no-z-defs): Define. (tst-tlsopt-powerpc): Depend on .so. * sysdeps/powerpc/powerpc64/tls-macros.h (__TLS_GET_ADDR): Don't define. Expand use in TLS_GD and TLS_LD. |
||
---|---|---|
.. | ||
970 | ||
a2 | ||
bits | ||
cell | ||
fpu | ||
multiarch | ||
power4 | ||
power5 | ||
power5+ | ||
power6 | ||
power6x | ||
power7 | ||
power8 | ||
power9 | ||
__longjmp-common.S | ||
__longjmp.S | ||
addmul_1.S | ||
atomic-machine.h | ||
backtrace.c | ||
bsd-_setjmp.S | ||
bsd-setjmp.S | ||
bzero.S | ||
configure | ||
configure.ac | ||
crti.S | ||
crtn.S | ||
dl-dtprocnum.h | ||
dl-irel.h | ||
dl-machine.c | ||
dl-machine.h | ||
dl-trampoline.S | ||
entry.h | ||
ffsll.c | ||
hp-timing.h | ||
Implies | ||
lshift.S | ||
Makefile | ||
memcpy.S | ||
memset.S | ||
mul_1.S | ||
ppc-mcount.S | ||
register-dump.h | ||
rtld-memset.c | ||
setjmp-common.S | ||
setjmp.S | ||
stackguard-macros.h | ||
start.S | ||
strchr.S | ||
strcmp.S | ||
strlen.S | ||
strncmp.S | ||
submul_1.S | ||
sysdep.h | ||
tls-macros.h | ||
tst-audit.h |