2002-02-04 06:24:37 +00:00
|
|
|
GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
|
2002-03-12 00:38:37 +00:00
|
|
|
# Local configure fragment for sysdeps/i386/elf.
|
2002-02-04 06:24:37 +00:00
|
|
|
|
2002-02-07 06:38:57 +00:00
|
|
|
if test "$usetls" != no; then
|
2002-02-04 06:24:37 +00:00
|
|
|
# Check for support of thread-local storage handling in assembler and
|
|
|
|
# linker.
|
|
|
|
AC_CACHE_CHECK(for i386 TLS support, libc_cv_386_tls, [dnl
|
|
|
|
cat > conftest.s <<\EOF
|
|
|
|
.section ".tdata", "awT", @progbits
|
2002-02-04 08:38:52 +00:00
|
|
|
.globl foo
|
2002-02-04 06:24:37 +00:00
|
|
|
foo: .long 1
|
|
|
|
.section ".tbss", "awT", @nobits
|
2002-02-04 08:38:52 +00:00
|
|
|
.globl bar
|
|
|
|
bar: .skip 4
|
2002-02-04 06:24:37 +00:00
|
|
|
.text
|
|
|
|
baz: leal bar@TLSLDM(%ebx), %eax
|
|
|
|
leal bar@DTPOFF(%eax), %edx
|
|
|
|
subl foo@GOTTPOFF(%edx), %eax
|
|
|
|
subl $bar@TPOFF, %eax
|
2002-09-30 10:26:59 +00:00
|
|
|
movl foo@GOTNTPOFF(%edx), %ecx
|
|
|
|
movl %gs:(%ecx), %eax
|
|
|
|
movl %gs:bar@NTPOFF, %eax
|
2002-02-04 06:24:37 +00:00
|
|
|
EOF
|
|
|
|
dnl
|
2002-10-18 20:28:09 +00:00
|
|
|
if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
|
2002-02-04 06:24:37 +00:00
|
|
|
libc_cv_386_tls=yes
|
|
|
|
else
|
|
|
|
libc_cv_386_tls=no
|
|
|
|
fi
|
|
|
|
rm -f conftest*])
|
|
|
|
if test $libc_cv_386_tls = yes; then
|
|
|
|
AC_DEFINE(HAVE_TLS_SUPPORT)
|
|
|
|
fi
|
2002-02-07 06:38:57 +00:00
|
|
|
fi
|
2002-08-25 07:22:45 +00:00
|
|
|
|
|
|
|
dnl It is always possible to access static and hidden symbols in an
|
|
|
|
dnl position independent way.
|
|
|
|
AC_DEFINE(PI_STATIC_AND_HIDDEN)
|