2002-12-04 Roland McGrath <roland@redhat.com>
authorRoland McGrath <roland@gnu.org>
Wed, 4 Dec 2002 12:27:20 +0000 (12:27 +0000)
committerRoland McGrath <roland@gnu.org>
Wed, 4 Dec 2002 12:27:20 +0000 (12:27 +0000)
commit68dc80ca28a192d686b3190373df8468b4ce5cb8
tree0d44f72655d3148c6f830f635f7b019368cc340b
parent7a5cdb30e31c860ce0314393cc97f161258ff842
2002-12-04  Roland McGrath  <roland@redhat.com>

* sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
members to the end, so a libpthread compiled with !USE_TLS will still
find other members properly.
* sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
* sysdeps/generic/ldsodefs.h: Declare it.
* elf/Versions (ld: GLIBC_PRIVATE): Add it.
* sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
function, broken out of __libc_setup_tls.
(init_static_tls): Likewise.
(__libc_setup_tls): Call them.
(_dl_tls_setup): New function, uses new subroutines.
* sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
(_dl_determine_tlsoffset): Likewise.
* elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
startup_error_tsd, made global.
(dl_main): Update initialization.
* elf/dl-tsd.c: Likewise.
* sysdeps/generic/ldsodefs.h: Declare it.
sysdeps/generic/ldsodefs.h