This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH] Remove TLS configure checks
- From: Marek Polacek <polacek at redhat dot com>
- To: libc-alpha at sourceware dot org
- Date: Wed, 11 Jul 2012 14:53:47 +0200
- Subject: [PATCH] Remove TLS configure checks
This patch should remove TLS checking in the configure machinery.
Since we now require binutils 2.20 and later, these checks became
to be redundant. I've only built libc on x86_64, I'd be glad if
someone could give it a spin on e.g. ppc64 or s390x.
Ok?
2012-07-11 Marek Polacek <polacek@redhat.com>
[BZ #14349]
* sysdeps/s390/s390-32/configure.in: Remove TLS check.
* sysdeps/s390/s390-64/configure.in: Likewise.
* sysdeps/sparc/configure.in: Likewise.
* sysdeps/powerpc/powerpc32/configure.in: Likewise.
* sysdeps/powerpc/powerpc64/configure.in: Likewise.
* sysdeps/i386/configure.in: Likewise.
* sysdeps/x86_64/configure.in: Likewise.
* sysdeps/sh/configure.in: Likewise.
* sysdeps/s390/s390-32/configure: Regenerated.
* sysdeps/s390/s390-64/configure: Likewise.
* sysdeps/x86_64/configure: Likewise.
* sysdeps/sh/configure: Likewise.
* sysdeps/powerpc/powerpc64/configure: Likewise.
* sysdeps/powerpc/powerpc32/configure: Likewise.
* sysdeps/sparc/configure: Likwise.
* sysdeps/i386/configure: Likewise.
--- libc/sysdeps/s390/s390-32/configure.mp 2012-07-11 13:59:06.184201838 +0200
+++ libc/sysdeps/s390/s390-32/configure 2012-07-11 14:00:25.071471444 +0200
@@ -1,126 +1,5 @@
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-
- as_lineno_1=$LINENO as_lineno_1a=$LINENO
- as_lineno_2=$LINENO as_lineno_2a=$LINENO
- eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
- test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
- # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
# This file is generated from configure.in by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/s390.
-# Check for support of thread-local storage handling in assembler and
-# linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for s390 TLS support" >&5
-$as_echo_n "checking for s390 TLS support... " >&6; }
-if ${libc_cv_390_tls+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat > conftest.S <<\EOF
- .section ".tdata", "awT", @progbits
-foo: .long 25
- .text
- .long foo@TLSGD
- .long foo@TLSLDM
- .long foo@DTPOFF
- .long foo@NTPOFF
- .long foo@GOTNTPOFF
- .long foo@INDNTPOFF
- l %r1,foo@GOTNTPOFF(%r12)
- l %r1,0(%r1):tls_load:foo
- bas %r14,0(%r1,%r13):tls_gdcall:foo
- bas %r14,0(%r1,%r13):tls_ldcall:foo
-EOF
-if { ac_try='${CC-cc} -S $CFLAGS conftest.S 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_390_tls=yes
-else
- libc_cv_390_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_390_tls" >&5
-$as_echo "$libc_cv_390_tls" >&6; }
-if test $libc_cv_390_tls = no; then
- as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
-
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
+
--- libc/sysdeps/s390/s390-32/configure.in.mp 2012-07-11 13:59:02.843190419 +0200
+++ libc/sysdeps/s390/s390-32/configure.in 2012-07-11 13:59:22.194256554 +0200
@@ -1,35 +1,6 @@
GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
# Local configure fragment for sysdeps/s390.
-# Check for support of thread-local storage handling in assembler and
-# linker.
-AC_CACHE_CHECK(for s390 TLS support, libc_cv_390_tls, [dnl
-cat > conftest.S <<\EOF
- .section ".tdata", "awT", @progbits
-foo: .long 25
- .text
- .long foo@TLSGD
- .long foo@TLSLDM
- .long foo@DTPOFF
- .long foo@NTPOFF
- .long foo@GOTNTPOFF
- .long foo@INDNTPOFF
- l %r1,foo@GOTNTPOFF(%r12)
- l %r1,0(%r1):tls_load:foo
- bas %r14,0(%r1,%r13):tls_gdcall:foo
- bas %r14,0(%r1,%r13):tls_ldcall:foo
-EOF
-dnl
-if AC_TRY_COMMAND(${CC-cc} -S $CFLAGS conftest.S 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_390_tls=yes
-else
- libc_cv_390_tls=no
-fi
-rm -f conftest*])
-if test $libc_cv_390_tls = no; then
- AC_MSG_ERROR([the assembler must support TLS])
-fi
-
dnl It is always possible to access static and hidden symbols in an
dnl position independent way.
AC_DEFINE(PI_STATIC_AND_HIDDEN)
--- libc/sysdeps/s390/s390-64/configure.mp 2012-07-11 14:06:40.193522413 +0200
+++ libc/sysdeps/s390/s390-64/configure 2012-07-11 14:07:31.747702931 +0200
@@ -1,126 +1,5 @@
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-
- as_lineno_1=$LINENO as_lineno_1a=$LINENO
- as_lineno_2=$LINENO as_lineno_2a=$LINENO
- eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
- test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
- # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
# This file is generated from configure.in by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/s390.
-# Check for support of thread-local storage handling in assembler and
-# linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for s390 TLS support" >&5
-$as_echo_n "checking for s390 TLS support... " >&6; }
-if ${libc_cv_390_tls+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat > conftest.S <<\EOF
- .section ".tdata", "awT", @progbits
-foo: .long 25
- .text
- .quad foo@TLSGD
- .quad foo@TLSLDM
- .quad foo@DTPOFF
- .quad foo@NTPOFF
- .quad foo@GOTNTPOFF
- .quad foo@INDNTPOFF
- lg %r1,foo@GOTNTPOFF(%r12)
- lg %r1,0(%r1):tls_load:foo
- brasl %r14,__tls_get_offset@plt:tls_gdcall:foo
- brasl %r14,__tls_get_offset@plt:tls_ldcall:foo
-EOF
-if { ac_try='${CC-cc} -S $CFLAGS conftest.S 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_390_tls=yes
-else
- libc_cv_390_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_390_tls" >&5
-$as_echo "$libc_cv_390_tls" >&6; }
-if test $libc_cv_390_tls = no; then
- as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
-
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
+
--- libc/sysdeps/s390/s390-64/configure.in.mp 2012-07-11 14:06:40.194522416 +0200
+++ libc/sysdeps/s390/s390-64/configure.in 2012-07-11 14:07:07.268617218 +0200
@@ -1,35 +1,6 @@
GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
# Local configure fragment for sysdeps/s390.
-# Check for support of thread-local storage handling in assembler and
-# linker.
-AC_CACHE_CHECK(for s390 TLS support, libc_cv_390_tls, [dnl
-cat > conftest.S <<\EOF
- .section ".tdata", "awT", @progbits
-foo: .long 25
- .text
- .quad foo@TLSGD
- .quad foo@TLSLDM
- .quad foo@DTPOFF
- .quad foo@NTPOFF
- .quad foo@GOTNTPOFF
- .quad foo@INDNTPOFF
- lg %r1,foo@GOTNTPOFF(%r12)
- lg %r1,0(%r1):tls_load:foo
- brasl %r14,__tls_get_offset@plt:tls_gdcall:foo
- brasl %r14,__tls_get_offset@plt:tls_ldcall:foo
-EOF
-dnl
-if AC_TRY_COMMAND(${CC-cc} -S $CFLAGS conftest.S 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_390_tls=yes
-else
- libc_cv_390_tls=no
-fi
-rm -f conftest*])
-if test $libc_cv_390_tls = no; then
- AC_MSG_ERROR([the assembler must support TLS])
-fi
-
dnl It is always possible to access static and hidden symbols in an
dnl position independent way.
AC_DEFINE(PI_STATIC_AND_HIDDEN)
--- libc/sysdeps/sparc/configure.mp 2012-07-11 14:08:31.978913835 +0200
+++ libc/sysdeps/sparc/configure 2012-07-11 14:09:17.638073711 +0200
@@ -123,60 +123,6 @@ if test $libc_cv_sparc_as_vis3 = yes; th
fi
-# Check for support of thread-local storage handling in assembler and linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sparc TLS support" >&5
-$as_echo_n "checking for sparc TLS support... " >&6; }
-if ${libc_cv_sparc_tls+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat > conftest.S <<\EOF
- .section ".tdata", "awT", @progbits
- .globl foo
-foo: .word 1
- .section ".tbss", "awT", @nobits
- .globl bar
-bar: .skip 4
- .text
-baz: sethi %tgd_hi22(foo), %l1
- add %l1, %tgd_lo10(foo), %l1
- add %l7, %l1, %o0, %tgd_add(foo)
- call __tls_get_addr, %tgd_call(foo)
- sethi %tldm_hi22(bar), %l1
- add %l1, %tldm_lo10(bar), %l1
- add %l7, %l1, %o0, %tldm_add(bar)
- call __tls_get_addr, %tldm_call(bar)
- sethi %tldo_hix22(bar), %l1
- xor %l1, %tldo_lox10(bar), %l1
- add %o0, %l1, %l1, %tldo_add(bar)
- sethi %tie_hi22(foo), %l1
- add %l1, %tie_lo10(foo), %l1
-#ifdef __arch64__
- ldx [%l7 + %l1], %l1, %tie_ldx(foo)
-#else
- ld [%l7 + %l1], %l1, %tie_ld(foo)
-#endif
- add %g7, %l1, %l1, %tie_add(foo)
- sethi %tle_hix22(foo), %l1
- xor %l1, %tle_lox10(foo), %l1
-EOF
-if { ac_try='${CC-cc} -c $CFLAGS conftest.S 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_sparc_tls=yes
-else
- libc_cv_sparc_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_sparc_tls" >&5
-$as_echo "$libc_cv_sparc_tls" >&6; }
-if test $libc_cv_sparc_tls = no; then
- as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
-
# Check for a GCC emitting GOTDATA relocations.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sparc gcc GOTDATA reloc support" >&5
$as_echo_n "checking for sparc gcc GOTDATA reloc support... " >&6; }
--- libc/sysdeps/sparc/configure.in.mp 2012-07-11 14:08:31.982913848 +0200
+++ libc/sysdeps/sparc/configure.in 2012-07-11 14:09:07.884039556 +0200
@@ -29,51 +29,6 @@ if test $libc_cv_sparc_as_vis3 = yes; th
AC_DEFINE(HAVE_AS_VIS3_SUPPORT)
fi
-# Check for support of thread-local storage handling in assembler and linker.
-AC_CACHE_CHECK(for sparc TLS support, libc_cv_sparc_tls, [dnl
-changequote(,)dnl
-cat > conftest.S <<\EOF
- .section ".tdata", "awT", @progbits
- .globl foo
-foo: .word 1
- .section ".tbss", "awT", @nobits
- .globl bar
-bar: .skip 4
- .text
-baz: sethi %tgd_hi22(foo), %l1
- add %l1, %tgd_lo10(foo), %l1
- add %l7, %l1, %o0, %tgd_add(foo)
- call __tls_get_addr, %tgd_call(foo)
- sethi %tldm_hi22(bar), %l1
- add %l1, %tldm_lo10(bar), %l1
- add %l7, %l1, %o0, %tldm_add(bar)
- call __tls_get_addr, %tldm_call(bar)
- sethi %tldo_hix22(bar), %l1
- xor %l1, %tldo_lox10(bar), %l1
- add %o0, %l1, %l1, %tldo_add(bar)
- sethi %tie_hi22(foo), %l1
- add %l1, %tie_lo10(foo), %l1
-#ifdef __arch64__
- ldx [%l7 + %l1], %l1, %tie_ldx(foo)
-#else
- ld [%l7 + %l1], %l1, %tie_ld(foo)
-#endif
- add %g7, %l1, %l1, %tie_add(foo)
- sethi %tle_hix22(foo), %l1
- xor %l1, %tle_lox10(foo), %l1
-EOF
-changequote([,])dnl
-dnl
-if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.S 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_sparc_tls=yes
-else
- libc_cv_sparc_tls=no
-fi
-rm -f conftest*])
-if test $libc_cv_sparc_tls = no; then
- AC_MSG_ERROR([the assembler must support TLS])
-fi
-
# Check for a GCC emitting GOTDATA relocations.
AC_CACHE_CHECK(for sparc gcc GOTDATA reloc support, libc_cv_sparc_gcc_gotdata, [dnl
changequote(,)dnl
--- libc/sysdeps/i386/configure.mp 2012-07-11 14:10:44.713378609 +0200
+++ libc/sysdeps/i386/configure 2012-07-11 14:11:08.903463313 +0200
@@ -349,45 +349,5 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_novzeroupper" >&5
$as_echo "$libc_cv_cc_novzeroupper" >&6; }
-# Check for support of thread-local storage handling in assembler and
-# linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for i386 TLS support" >&5
-$as_echo_n "checking for i386 TLS support... " >&6; }
-if ${libc_cv_386_tls+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat > conftest.s <<\EOF
- .section ".tdata", "awT", @progbits
- .globl foo
-foo: .long 1
- .section ".tbss", "awT", @nobits
- .globl bar
-bar: .skip 4
- .text
-baz: leal bar@TLSLDM(%ebx), %eax
- leal bar@DTPOFF(%eax), %edx
- subl foo@GOTTPOFF(%edx), %eax
- subl $bar@TPOFF, %eax
- movl foo@GOTNTPOFF(%edx), %ecx
- movl %gs:(%ecx), %eax
- movl %gs:bar@NTPOFF, %eax
-EOF
-if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_386_tls=yes
-else
- libc_cv_386_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_386_tls" >&5
-$as_echo "$libc_cv_386_tls" >&6; }
-if test $libc_cv_386_tls = no; then
- as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
-
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
+
--- libc/sysdeps/i386/configure.in.mp 2012-07-11 14:10:44.714378613 +0200
+++ libc/sysdeps/i386/configure.in 2012-07-11 14:10:56.864421159 +0200
@@ -86,36 +86,6 @@ LIBC_TRY_CC_OPTION([-mno-vzeroupper],
[libc_cv_cc_novzeroupper=no])
])
-# 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
- .globl foo
-foo: .long 1
- .section ".tbss", "awT", @nobits
- .globl bar
-bar: .skip 4
- .text
-baz: leal bar@TLSLDM(%ebx), %eax
- leal bar@DTPOFF(%eax), %edx
- subl foo@GOTTPOFF(%edx), %eax
- subl $bar@TPOFF, %eax
- movl foo@GOTNTPOFF(%edx), %ecx
- movl %gs:(%ecx), %eax
- movl %gs:bar@NTPOFF, %eax
-EOF
-dnl
-if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_386_tls=yes
-else
- libc_cv_386_tls=no
-fi
-rm -f conftest*])
-if test $libc_cv_386_tls = no; then
- AC_MSG_ERROR([the assembler must support TLS])
-fi
-
dnl It is always possible to access static and hidden symbols in an
dnl position independent way.
AC_DEFINE(PI_STATIC_AND_HIDDEN)
--- libc/sysdeps/x86_64/configure.mp 2012-07-11 13:25:02.594183341 +0200
+++ libc/sysdeps/x86_64/configure 2012-07-11 13:25:12.466218275 +0200
@@ -329,43 +329,6 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_novzeroupper" >&5
$as_echo "$libc_cv_cc_novzeroupper" >&6; }
-# Check for support of thread-local storage handling in assembler and linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86-64 TLS support" >&5
-$as_echo_n "checking for x86-64 TLS support... " >&6; }
-if ${libc_cv_x86_64_tls+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat > conftest.s <<\EOF
- .section ".tdata", "awT", @progbits
- .globl foo
-foo: .quad 1
- .section ".tbss", "awT", @nobits
- .globl bar
-bar: .skip 8
- .text
-baz: leaq bar@TLSLD(%rip), %rdi
- leaq bar@DTPOFF(%rax), %rcx
- addq foo@GOTTPOFF(%rip), %rax
- movq $bar@TPOFF, %rdx
-EOF
-if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_x86_64_tls=yes
-else
- libc_cv_x86_64_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_x86_64_tls" >&5
-$as_echo "$libc_cv_x86_64_tls" >&6; }
-if test $libc_cv_x86_64_tls = no; then
- as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
-
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
# work around problem with autoconf and empty lines at the end of files
--- libc/sysdeps/x86_64/configure.in.mp 2012-07-11 13:20:15.551167568 +0200
+++ libc/sysdeps/x86_64/configure.in 2012-07-11 13:20:50.064289701 +0200
@@ -79,32 +79,6 @@ LIBC_TRY_CC_OPTION([-mno-vzeroupper],
[libc_cv_cc_novzeroupper=no])
])
-# Check for support of thread-local storage handling in assembler and linker.
-AC_CACHE_CHECK(for x86-64 TLS support, libc_cv_x86_64_tls, [dnl
-cat > conftest.s <<\EOF
- .section ".tdata", "awT", @progbits
- .globl foo
-foo: .quad 1
- .section ".tbss", "awT", @nobits
- .globl bar
-bar: .skip 8
- .text
-baz: leaq bar@TLSLD(%rip), %rdi
- leaq bar@DTPOFF(%rax), %rcx
- addq foo@GOTTPOFF(%rip), %rax
- movq $bar@TPOFF, %rdx
-EOF
-dnl
-if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_x86_64_tls=yes
-else
- libc_cv_x86_64_tls=no
-fi
-rm -f conftest*])
-if test $libc_cv_x86_64_tls = no; then
- AC_MSG_ERROR([the assembler must support TLS])
-fi
-
dnl It is always possible to access static and hidden symbols in an
dnl position independent way.
AC_DEFINE(PI_STATIC_AND_HIDDEN)
--- libc/sysdeps/sh/configure.mp 2012-07-11 14:12:24.117726681 +0200
+++ libc/sysdeps/sh/configure 2012-07-11 14:12:53.817830677 +0200
@@ -1,121 +1,5 @@
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-
- as_lineno_1=$LINENO as_lineno_1a=$LINENO
- as_lineno_2=$LINENO as_lineno_2a=$LINENO
- eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
- test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
- # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
# This file is generated from configure.in by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/sh.
-# Check for support of thread-local storage handling in assembler and
-# linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SH TLS support" >&5
-$as_echo_n "checking for SH TLS support... " >&6; }
-if ${libc_cv_sh_tls+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat > conftest.S <<\EOF
- .section ".tdata", "awT", @progbits
-foo: .long 25
- .text
- .long foo@TLSGD
- .long foo@TLSLDM
- .long foo@DTPOFF
- .long foo@GOTTPOFF
- .long foo@TPOFF
-EOF
-if { ac_try='${CC-cc} -S $CFLAGS conftest.S 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_sh_tls=yes
-else
- libc_cv_sh_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_sh_tls" >&5
-$as_echo "$libc_cv_sh_tls" >&6; }
-if test $libc_cv_sh_tls = no; then
- as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
-
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
+
--- libc/sysdeps/sh/configure.in.mp 2012-07-11 14:12:24.121726694 +0200
+++ libc/sysdeps/sh/configure.in 2012-07-11 14:12:38.518777106 +0200
@@ -1,30 +1,6 @@
GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
# Local configure fragment for sysdeps/sh.
-# Check for support of thread-local storage handling in assembler and
-# linker.
-AC_CACHE_CHECK(for SH TLS support, libc_cv_sh_tls, [dnl
-cat > conftest.S <<\EOF
- .section ".tdata", "awT", @progbits
-foo: .long 25
- .text
- .long foo@TLSGD
- .long foo@TLSLDM
- .long foo@DTPOFF
- .long foo@GOTTPOFF
- .long foo@TPOFF
-EOF
-dnl
-if AC_TRY_COMMAND(${CC-cc} -S $CFLAGS conftest.S 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_sh_tls=yes
-else
- libc_cv_sh_tls=no
-fi
-rm -f conftest*])
-if test $libc_cv_sh_tls = no; then
- AC_MSG_ERROR([the assembler must support TLS])
-fi
-
dnl It is always possible to access static and hidden symbols in an
dnl position independent way.
AC_DEFINE(PI_STATIC_AND_HIDDEN)
--- libc/sysdeps/powerpc/powerpc64/configure.mp 2012-07-11 14:13:31.477962545 +0200
+++ libc/sysdeps/powerpc/powerpc64/configure 2012-07-11 14:14:06.001083430 +0200
@@ -144,67 +144,3 @@ if test x$libc_cv_overlapping_opd = xyes
$as_echo "#define USE_PPC64_OVERLAPPING_OPD 1" >>confdefs.h
fi
-
-# Check for support of thread-local storage handling in assembler and
-# linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for powerpc64 TLS support" >&5
-$as_echo_n "checking for powerpc64 TLS support... " >&6; }
-if ${libc_cv_powerpc64_tls+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat > conftest.s <<\EOF
- .section ".tdata","awT",@progbits
-x: .quad 1
-x1: .quad 1
-x2: .quad 1
-x3: .quad 1
-x4: .long 1
- .section ".toc","aw"
-.LC0:
- .quad x@dtpmod
- .quad x@dtprel
-.LC1:
- .quad x1@dtpmod
- .quad 0
-.LC2:
- .quad x@tprel
- .text
- addi 3,2,x@got@tlsgd
- addi 3,2,.LC0@toc
- addi 3,2,x1@got@tlsld
- addi 9,3,x1@dtprel
- addis 9,3,x2@dtprel@ha
- addi 9,9,x2@dtprel@l
- ld 9,x3@got@dtprel(2)
- addi 3,2,.LC0@toc
- lwz 0,x1@dtprel(3)
- ld 0,x1@dtprel(3)
- addis 9,3,x2@dtprel@ha
- lwz 0,x2@dtprel@l(9)
- ld 0,x2@dtprel@l(9)
- ld 9,x3@got@dtprel(2)
- ld 9,x@got@tprel(2)
- add 9,9,x@tls
- ld 9,.LC2@toc(2)
- add 9,9,.LC2@tls
- addi 9,13,x1@tprel
- addis 9,13,x2@tprel@ha
- addi 9,9,x2@tprel@l
-EOF
-if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_powerpc64_tls=yes
-else
- libc_cv_powerpc64_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_powerpc64_tls" >&5
-$as_echo "$libc_cv_powerpc64_tls" >&6; }
-if test $libc_cv_powerpc64_tls = no; then
- as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
--- libc/sysdeps/powerpc/powerpc64/configure.in.mp 2012-07-11 14:13:31.481962560 +0200
+++ libc/sysdeps/powerpc/powerpc64/configure.in 2012-07-11 14:13:57.802054718 +0200
@@ -40,56 +40,3 @@ rm -f conftest.c conftest.s
if test x$libc_cv_overlapping_opd = xyes; then
AC_DEFINE(USE_PPC64_OVERLAPPING_OPD)
fi
-
-# Check for support of thread-local storage handling in assembler and
-# linker.
-AC_CACHE_CHECK(for powerpc64 TLS support, libc_cv_powerpc64_tls, [dnl
-cat > conftest.s <<\EOF
- .section ".tdata","awT",@progbits
-x: .quad 1
-x1: .quad 1
-x2: .quad 1
-x3: .quad 1
-x4: .long 1
- .section ".toc","aw"
-.LC0:
- .quad x@dtpmod
- .quad x@dtprel
-.LC1:
- .quad x1@dtpmod
- .quad 0
-.LC2:
- .quad x@tprel
- .text
- addi 3,2,x@got@tlsgd
- addi 3,2,.LC0@toc
- addi 3,2,x1@got@tlsld
- addi 9,3,x1@dtprel
- addis 9,3,x2@dtprel@ha
- addi 9,9,x2@dtprel@l
- ld 9,x3@got@dtprel(2)
- addi 3,2,.LC0@toc
- lwz 0,x1@dtprel(3)
- ld 0,x1@dtprel(3)
- addis 9,3,x2@dtprel@ha
- lwz 0,x2@dtprel@l(9)
- ld 0,x2@dtprel@l(9)
- ld 9,x3@got@dtprel(2)
- ld 9,x@got@tprel(2)
- add 9,9,x@tls
- ld 9,.LC2@toc(2)
- add 9,9,.LC2@tls
- addi 9,13,x1@tprel
- addis 9,13,x2@tprel@ha
- addi 9,9,x2@tprel@l
-EOF
-dnl
-if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_powerpc64_tls=yes
-else
- libc_cv_powerpc64_tls=no
-fi
-rm -f conftest*])
-if test $libc_cv_powerpc64_tls = no; then
- AC_MSG_ERROR([the assembler must support TLS])
-fi
--- libc/sysdeps/powerpc/powerpc32/configure.mp 2012-07-11 14:14:31.171171566 +0200
+++ libc/sysdeps/powerpc/powerpc32/configure 2012-07-11 14:14:48.865233521 +0200
@@ -137,48 +137,3 @@ if test $libc_cv_ppc_secure_plt = yes; t
$as_echo "#define HAVE_PPC_SECURE_PLT 1" >>confdefs.h
fi
-
-# Check for support of thread-local storage handling in assembler and
-# linker.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for powerpc32 TLS support" >&5
-$as_echo_n "checking for powerpc32 TLS support... " >&6; }
-if ${libc_cv_powerpc32_tls+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat > conftest.s <<\EOF
- .section ".tdata","awT",@progbits
-x: .long 1
-x1: .long 1
-x2: .long 1
- .text
- addi 3,31,x@got@tlsgd
- addi 3,31,x1@got@tlsld
- addi 9,3,x1@dtprel
- addis 9,3,x2@dtprel@ha
- addi 9,9,x2@dtprel@l
- lwz 0,x1@dtprel(3)
- addis 9,3,x2@dtprel@ha
- lwz 0,x2@dtprel@l(9)
- lwz 9,x3@got@tprel(31)
- add 9,9,x@tls
- addi 9,2,x1@tprel
- addis 9,2,x2@tprel@ha
- addi 9,9,x2@tprel@l
-EOF
-if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- libc_cv_powerpc32_tls=yes
-else
- libc_cv_powerpc32_tls=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_powerpc32_tls" >&5
-$as_echo "$libc_cv_powerpc32_tls" >&6; }
-if test $libc_cv_powerpc32_tls = no; then
- as_fn_error $? "the assembler must support TLS" "$LINENO" 5
-fi
--- libc/sysdeps/powerpc/powerpc32/configure.in.mp 2012-07-11 14:14:31.175171578 +0200
+++ libc/sysdeps/powerpc/powerpc32/configure.in 2012-07-11 14:14:45.067220220 +0200
@@ -30,37 +30,3 @@ rm -rf conftest*])
if test $libc_cv_ppc_secure_plt = yes; then
AC_DEFINE(HAVE_PPC_SECURE_PLT)
fi
-
-# Check for support of thread-local storage handling in assembler and
-# linker.
-AC_CACHE_CHECK(for powerpc32 TLS support, libc_cv_powerpc32_tls, [dnl
-cat > conftest.s <<\EOF
- .section ".tdata","awT",@progbits
-x: .long 1
-x1: .long 1
-x2: .long 1
- .text
- addi 3,31,x@got@tlsgd
- addi 3,31,x1@got@tlsld
- addi 9,3,x1@dtprel
- addis 9,3,x2@dtprel@ha
- addi 9,9,x2@dtprel@l
- lwz 0,x1@dtprel(3)
- addis 9,3,x2@dtprel@ha
- lwz 0,x2@dtprel@l(9)
- lwz 9,x3@got@tprel(31)
- add 9,9,x@tls
- addi 9,2,x1@tprel
- addis 9,2,x2@tprel@ha
- addi 9,9,x2@tprel@l
-EOF
-dnl
-if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_powerpc32_tls=yes
-else
- libc_cv_powerpc32_tls=no
-fi
-rm -f conftest*])
-if test $libc_cv_powerpc32_tls = no; then
- AC_MSG_ERROR([the assembler must support TLS])
-fi
Marek