* sysdeps/generic/libc-tls.c: Undo last patch.
This commit is contained in:
Ulrich Drepper 2002-12-07 01:24:46 +00:00
parent 13ece8977b
commit 01054d37f2
2 changed files with 6 additions and 9 deletions

View File

@ -1,5 +1,7 @@
2002-12-06 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/libc-tls.c: Undo last patch.
* include/wctype.h: Define iswalnum with libc_hidden_proto.
* include/signal.h: Define raise with libc_hidden_proto.

View File

@ -21,7 +21,6 @@
#include <ldsodefs.h>
#include <tls.h>
#include <unistd.h>
#include <stdio.h>
#ifdef SHARED
#error makefile bug, this file is for static only
@ -169,8 +168,8 @@ __libc_setup_tls (size_t tcbsize, size_t tcbalign)
/* Initialize the TLS block. */
# if TLS_TCB_AT_TP
static_dtv[2].pointer = ((char *) tlsblock + tcb_offset
- roundup (memsz, align ?: 1));
static_map.l_tls_offset = roundup (memsz, align ?: 1);
- roundup (memsz, align));
static_map.l_tls_offset = roundup (memsz, align);
# elif TLS_DTV_AT_TP
tcb_offset = roundup (tcbsize, align);
static_dtv[2].pointer = (char *) tlsblock + tcb_offset;
@ -178,10 +177,8 @@ __libc_setup_tls (size_t tcbsize, size_t tcbalign)
# else
# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined"
# endif
/* sbrk gives us zero'd memory, so we don't need this.
memset (__mempcpy (static_dtv[2].pointer, initimage, filesz),
'\0', memsz - filesz);
*/
/* Install the pointer to the dtv. */
@ -189,15 +186,13 @@ __libc_setup_tls (size_t tcbsize, size_t tcbalign)
# if TLS_TCB_AT_TP
INSTALL_DTV ((char *) tlsblock + tcb_offset, static_dtv);
const char *lossage = TLS_INIT_TP ((char *) tlsblock + tcb_offset, 0);
TLS_INIT_TP ((char *) tlsblock + tcb_offset, 0);
# elif TLS_DTV_AT_TP
INSTALL_DTV (tlsblock, static_dtv);
const char *lossage = TLS_INIT_TP (tlsblock, 0);
TLS_INIT_TP (tlsblock, 0);
# else
# error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined"
# endif
if (__builtin_expect (lossage != NULL, 0))
__libc_fatal (lossage);
/* We have to create a fake link map which normally would be created
by the dynamic linker. It just has to have enough information to