diff options
author | Ulrich Drepper <drepper@redhat.com> | 2002-02-07 17:54:45 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2002-02-07 17:54:45 +0000 |
commit | d555194cb3d236bda07fa9ef08f4f7020421763a (patch) | |
tree | fcd827d43fd1fb19dd29e7f8c44f92396a95301d /elf | |
parent | d4468ab7887325daf8bcdc8d7591238f3adcc70b (diff) | |
download | glibc-d555194cb3d236bda07fa9ef08f4f7020421763a.tar.gz glibc-d555194cb3d236bda07fa9ef08f4f7020421763a.tar.xz glibc-d555194cb3d236bda07fa9ef08f4f7020421763a.zip |
Update.
2002-02-07 Andreas Schwab <schwab@suse.de> * configure.in: Fix check for -zcombreloc. 2002-02-06 H.J. Lu <hjl@gnu.org> * config.h.in (HAVE_BUILTIN_MEMSET): New. * configure.in: Check if __builtin_memset really works. * elf/rtld.c (_dl_start): Check HAVE_BUILTIN_MEMSET instead of __GNUC_PREREQ (2, 96) before using __builtin_memset. 2002-02-06 Jakub Jelinek <jakub@redhat.com> * io/bug-ftw3.c (main): Don't try the test if root. 2002-02-06 Martin Schwidefsky <schwidefsky@de.ibm.com> * sysdeps/unix/sysv/linux/s390/brk.c (__brk): Correct inline assembly constraints. * sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h (RLIMIT_LOCKS): Add RLIMIT_LOCKS and adjust RLIMIT_NLIMITS. * sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h (RLIMIT_LOCKS): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (clone): Make clone a weak alias for __clone. * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (clone): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: Fix typo. * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Add framestate. * sysdeps/unix/sysv/linux/s390/s390-64/Versions: New file. * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap64): Make __mmap a weak alias for __mmap64. * sysdeps/mips/atomicity.h (exchange_and_add): Not use branch likely. * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise. * sysdeps/generic/dl-tls.c: Don't read TLS header if TLS is not needed.
Diffstat (limited to 'elf')
-rw-r--r-- | elf/rtld.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/elf/rtld.c b/elf/rtld.c index 088e761e64..a19fad24a4 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -130,7 +130,7 @@ _dl_start (void *arg) { struct link_map bootstrap_map; hp_timing_t start_time; -#if !__GNUC_PREREQ (2, 96) +#ifndef HAVE_BUILTIN_MEMSET size_t cnt; #endif @@ -150,7 +150,7 @@ _dl_start (void *arg) `memset' since it might not be built in or inlined and we cannot make function calls at this point. Use '__builtin_memset' if we know it is available. */ -#if __GNUC_PREREQ (2, 96) +#ifdef HAVE_BUILTIN_MEMSET __builtin_memset (bootstrap_map.l_info, '\0', sizeof (bootstrap_map.l_info)); #else for (cnt = 0; @@ -1366,6 +1366,12 @@ of this helper program; chances are you did not intend to run this program.\n\ /* This means we actually have some modules which use TLS. Computer the TLS offsets for the various blocks. */ _dl_determine_tlsoffset (GL(dl_initimage_list)->l_tls_nextimage); + + /* Construct the static TLS block and the dtv for the initial + thread. For some platforms this will include allocating memory + for the thread descriptor. The memory for the TLS block will + never be freed. It should be allocated accordingly. The dtv + array can be changed if dynamic loading requires it. */ #endif { |