diff options
author | Ulrich Drepper <drepper@redhat.com> | 2002-02-07 06:38:57 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2002-02-07 06:38:57 +0000 |
commit | 8d4b5a8a50fad0ed1005380aa8d1c13dcfdab08d (patch) | |
tree | 4a12090365248eea8757bad604a6f7082784c8cc /sysdeps | |
parent | 4b9abcb6b83ebc64aa2a468b950c24e4ee96e1a2 (diff) | |
download | glibc-8d4b5a8a50fad0ed1005380aa8d1c13dcfdab08d.tar glibc-8d4b5a8a50fad0ed1005380aa8d1c13dcfdab08d.tar.gz glibc-8d4b5a8a50fad0ed1005380aa8d1c13dcfdab08d.tar.bz2 glibc-8d4b5a8a50fad0ed1005380aa8d1c13dcfdab08d.zip |
Update.
2002-02-06 Ulrich Drepper <drepper@redhat.com>
* configure.in: Add --without-tls option.
* sysdeps/i386/elf/configure.in: Don't check for TLS support if
--without-tls is given.
* sysdeps/generic/dl-tls.c: Include <tls.h>.
* sysdeps/i386/dl-tls.h: Don't define anything if !USE_TLS.
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/generic/dl-tls.c | 5 | ||||
-rwxr-xr-x | sysdeps/i386/elf/configure | 6 | ||||
-rw-r--r-- | sysdeps/i386/elf/configure.in | 2 |
3 files changed, 11 insertions, 2 deletions
diff --git a/sysdeps/generic/dl-tls.c b/sysdeps/generic/dl-tls.c index 557a023453..729adf0040 100644 --- a/sysdeps/generic/dl-tls.c +++ b/sysdeps/generic/dl-tls.c @@ -19,6 +19,7 @@ #include <assert.h> +#include <tls.h> #include <dl-tls.h> #include <ldsodefs.h> @@ -99,6 +100,10 @@ _dl_determine_tlsoffset (struct link_map *firstp) runp->l_tls_offset = offset; } while ((runp = runp->l_tls_nextimage) != firstp); + + /* The thread descriptor (pointed to by the thread pointer) has its + own alignment requirement. Adjust the static TLS size + appropriately. */ # elif TLS_DTV_AT_TP struct link_map *lastp; diff --git a/sysdeps/i386/elf/configure b/sysdeps/i386/elf/configure index ca7f567bcb..1033f78ef3 100755 --- a/sysdeps/i386/elf/configure +++ b/sysdeps/i386/elf/configure @@ -1,9 +1,10 @@ # Local configure fragment for sysdeps/unix/sysv/linux. +if test "$usetls" != no; then # Check for support of thread-local storage handling in assembler and # linker. echo $ac_n "checking for i386 TLS support""... $ac_c" 1>&6 -echo "configure:7: checking for i386 TLS support" >&5 +echo "configure:8: checking for i386 TLS support" >&5 if eval "test \"`echo '$''{'libc_cv_386_tls'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -20,7 +21,7 @@ baz: leal bar@TLSLDM(%ebx), %eax subl foo@GOTTPOFF(%edx), %eax subl $bar@TPOFF, %eax EOF -if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:24: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then +if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:25: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then libc_cv_386_tls=yes else libc_cv_386_tls=no @@ -35,3 +36,4 @@ if test $libc_cv_386_tls = yes; then EOF fi +fi diff --git a/sysdeps/i386/elf/configure.in b/sysdeps/i386/elf/configure.in index 6352e69aa3..96e9b2c9f3 100644 --- a/sysdeps/i386/elf/configure.in +++ b/sysdeps/i386/elf/configure.in @@ -2,6 +2,7 @@ sinclude(./aclocal.m4)dnl Autoconf lossage GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. # Local configure fragment for sysdeps/unix/sysv/linux. +if test "$usetls" != no; then # Check for support of thread-local storage handling in assembler and # linker. AC_CACHE_CHECK(for i386 TLS support, libc_cv_386_tls, [dnl @@ -28,3 +29,4 @@ rm -f conftest*]) if test $libc_cv_386_tls = yes; then AC_DEFINE(HAVE_TLS_SUPPORT) fi +fi |