Remove configure test for ARM TLS descriptors support.

GCC 4.7 added support for ARM TLS descriptors.  The binutils support
is present in binutils 2.22.  Thus, this patch removes the associated
configure test as obsolete (leaving Makefile conditionals, as NaCl
sets have-arm-tls-desc = no in its sysdeps fragment).

Tested for ARM that installed shared libraries are unchanged by the
patch.

	* sysdeps/arm/configure.ac (libc_cv_arm_tls_desc): Remove
	configure test.
	* sysdeps/arm/configure: Regenerated.
	* sysdeps/arm/Makefile [!have-arm-tls-desc] (have-arm-tls-desc):
	Define variable if not already defined.
This commit is contained in:
Joseph Myers 2015-10-27 23:56:50 +00:00
parent 8f82f28bba
commit 56583289b1
4 changed files with 11 additions and 49 deletions

View File

@ -1,5 +1,11 @@
2015-10-27 Joseph Myers <joseph@codesourcery.com> 2015-10-27 Joseph Myers <joseph@codesourcery.com>
* sysdeps/arm/configure.ac (libc_cv_arm_tls_desc): Remove
configure test.
* sysdeps/arm/configure: Regenerated.
* sysdeps/arm/Makefile [!have-arm-tls-desc] (have-arm-tls-desc):
Define variable if not already defined.
[BZ #17404] [BZ #17404]
* sysdeps/mips/atomic-machine.h * sysdeps/mips/atomic-machine.h
[__GNUC_PREREQ (4, 8) || (__mips16 && __GNUC_PREREQ (4, 7))]: [__GNUC_PREREQ (4, 8) || (__mips16 && __GNUC_PREREQ (4, 7))]:

View File

@ -1,6 +1,11 @@
gnulib-arch = $(elf-objpfx)libgcc-stubs.a gnulib-arch = $(elf-objpfx)libgcc-stubs.a
static-gnulib-arch = $(elf-objpfx)libgcc-stubs.a static-gnulib-arch = $(elf-objpfx)libgcc-stubs.a
# All supported build tools support TLS descriptors, but the OS may not.
ifndef have-arm-tls-desc
have-arm-tls-desc = yes
endif
ifeq ($(subdir),elf) ifeq ($(subdir),elf)
sysdep-dl-routines += tlsdesc dl-tlsdesc sysdep-dl-routines += tlsdesc dl-tlsdesc
sysdep_routines += aeabi_unwind_cpp_pr1 find_exidx sysdep_routines += aeabi_unwind_cpp_pr1 find_exidx

36
sysdeps/arm/configure vendored
View File

@ -176,42 +176,6 @@ else
default-abi = soft" default-abi = soft"
fi fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the build tools support the GNU descriptor TLS scheme" >&5
$as_echo_n "checking whether the build tools support the GNU descriptor TLS scheme... " >&6; }
if ${libc_cv_arm_tls_desc+:} false; then :
$as_echo_n "(cached) " >&6
else
old_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mtls-dialect=gnu2"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
asm (".word\tfoo(tlsdesc)");
int
main ()
{
;
return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"; then :
libc_cv_arm_tls_desc=yes
else
libc_cv_arm_tls_desc=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
CFLAGS="$old_CFLAGS"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_arm_tls_desc" >&5
$as_echo "$libc_cv_arm_tls_desc" >&6; }
if test $libc_cv_arm_tls_desc = yes; then
config_vars="$config_vars
have-arm-tls-desc = yes"
else
config_vars="$config_vars
have-arm-tls-desc = no"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PC-relative relocs in movw/movt work properly" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PC-relative relocs in movw/movt work properly" >&5
$as_echo_n "checking whether PC-relative relocs in movw/movt work properly... " >&6; } $as_echo_n "checking whether PC-relative relocs in movw/movt work properly... " >&6; }
if ${libc_cv_arm_pcrel_movw+:} false; then : if ${libc_cv_arm_pcrel_movw+:} false; then :

View File

@ -26,19 +26,6 @@ else
LIBC_CONFIG_VAR([default-abi], [soft]) LIBC_CONFIG_VAR([default-abi], [soft])
fi fi
AC_CACHE_CHECK([whether the build tools support the GNU descriptor TLS scheme],
[libc_cv_arm_tls_desc],
[old_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mtls-dialect=gnu2"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([asm (".word\tfoo(tlsdesc)");], [])],
[libc_cv_arm_tls_desc=yes], [libc_cv_arm_tls_desc=no])
CFLAGS="$old_CFLAGS"])
if test $libc_cv_arm_tls_desc = yes; then
LIBC_CONFIG_VAR([have-arm-tls-desc], [yes])
else
LIBC_CONFIG_VAR([have-arm-tls-desc], [no])
fi
AC_CACHE_CHECK([whether PC-relative relocs in movw/movt work properly], AC_CACHE_CHECK([whether PC-relative relocs in movw/movt work properly],
libc_cv_arm_pcrel_movw, [ libc_cv_arm_pcrel_movw, [
cat > conftest.s <<\EOF cat > conftest.s <<\EOF