mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Remove _dl_initial_dtv
* csu/libc-tls.c (static_dtv): Renamed to ... (_dl_static_dtv): This. Make it global. (_dl_initial_dtv): Removed. (__libc_setup_tls): Updated. * elf/dl-tls.c (DL_INITIAL_DTV): New macro. (_dl_deallocate_tls): Replace GL(dl_initial_dtv) with DL_INITIAL_DTV.
This commit is contained in:
@ -464,6 +464,13 @@ _dl_allocate_tls (void *mem)
|
||||
rtld_hidden_def (_dl_allocate_tls)
|
||||
|
||||
|
||||
#ifndef SHARED
|
||||
extern dtv_t _dl_static_dtv[];
|
||||
# define DL_INITIAL_DTV (&_dl_static_dtv[1])
|
||||
#else
|
||||
# define DL_INITIAL_DTV GL(dl_initial_dtv)
|
||||
#endif
|
||||
|
||||
void
|
||||
internal_function
|
||||
_dl_deallocate_tls (void *tcb, bool dealloc_tcb)
|
||||
@ -477,7 +484,7 @@ _dl_deallocate_tls (void *tcb, bool dealloc_tcb)
|
||||
free (dtv[1 + cnt].pointer.val);
|
||||
|
||||
/* The array starts with dtv[-1]. */
|
||||
if (dtv != GL(dl_initial_dtv))
|
||||
if (dtv != DL_INITIAL_DTV)
|
||||
free (dtv - 1);
|
||||
|
||||
if (dealloc_tcb)
|
||||
|
Reference in New Issue
Block a user