mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-24 19:51:11 +00:00
Check AVX-512 assembler support first
It checks AVX-512 assembler support first and sets libc_cv_cc_avx512 to $libc_cv_asm_avx512, instead of yes. GCC won't support AVX-512 if assembler doesn't support it. * sysdeps/x86_64/configure.ac: Check AVX-512 assembler support first. Disable AVX-512 GCC support if assembler doesn't support it. * sysdeps/x86_64/configure: Regenerated.
This commit is contained in:
parent
2e03fae7b7
commit
aa4de9cea5
@ -1,3 +1,10 @@
|
|||||||
|
2014-03-14 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
|
* sysdeps/x86_64/configure.ac: Check AVX-512 assembler support
|
||||||
|
first. Disable AVX-512 GCC support if assembler doesn't support
|
||||||
|
it.
|
||||||
|
* sysdeps/x86_64/configure: Regenerated.
|
||||||
|
|
||||||
2014-03-13 Carlos O'Donell <carlos@redhat.com>
|
2014-03-13 Carlos O'Donell <carlos@redhat.com>
|
||||||
|
|
||||||
* nptl/pthread_attr_setstack.c (__pthread_attr_setstack)
|
* nptl/pthread_attr_setstack.c (__pthread_attr_setstack)
|
||||||
|
52
sysdeps/x86_64/configure
vendored
52
sysdeps/x86_64/configure
vendored
@ -95,32 +95,6 @@ fi
|
|||||||
config_vars="$config_vars
|
config_vars="$config_vars
|
||||||
config-cflags-avx = $libc_cv_cc_avx"
|
config-cflags-avx = $libc_cv_cc_avx"
|
||||||
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX512 support" >&5
|
|
||||||
$as_echo_n "checking for AVX512 support... " >&6; }
|
|
||||||
if ${libc_cv_cc_avx512+:} false; then :
|
|
||||||
$as_echo_n "(cached) " >&6
|
|
||||||
else
|
|
||||||
if { ac_try='${CC-cc} -mavx512f -xc /dev/null -S -o /dev/null'
|
|
||||||
{ { 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_cc_avx512=yes
|
|
||||||
else
|
|
||||||
libc_cv_cc_avx512=no
|
|
||||||
fi
|
|
||||||
|
|
||||||
fi
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_avx512" >&5
|
|
||||||
$as_echo "$libc_cv_cc_avx512" >&6; }
|
|
||||||
if test $libc_cv_cc_avx512 = yes; then
|
|
||||||
$as_echo "#define HAVE_AVX512_SUPPORT 1" >>confdefs.h
|
|
||||||
|
|
||||||
fi
|
|
||||||
config_vars="$config_vars
|
|
||||||
config-cflags-avx512 = $libc_cv_cc_avx512"
|
|
||||||
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX512 support in assembler" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX512 support in assembler" >&5
|
||||||
$as_echo_n "checking for AVX512 support in assembler... " >&6; }
|
$as_echo_n "checking for AVX512 support in assembler... " >&6; }
|
||||||
if ${libc_cv_asm_avx512+:} false; then :
|
if ${libc_cv_asm_avx512+:} false; then :
|
||||||
@ -148,6 +122,32 @@ if test $libc_cv_asm_avx512 == yes; then
|
|||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX512 support" >&5
|
||||||
|
$as_echo_n "checking for AVX512 support... " >&6; }
|
||||||
|
if ${libc_cv_cc_avx512+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
if { ac_try='${CC-cc} -mavx512f -xc /dev/null -S -o /dev/null'
|
||||||
|
{ { 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_cc_avx512=$libc_cv_asm_avx512
|
||||||
|
else
|
||||||
|
libc_cv_cc_avx512=no
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_cc_avx512" >&5
|
||||||
|
$as_echo "$libc_cv_cc_avx512" >&6; }
|
||||||
|
if test $libc_cv_cc_avx512 = yes; then
|
||||||
|
$as_echo "#define HAVE_AVX512_SUPPORT 1" >>confdefs.h
|
||||||
|
|
||||||
|
fi
|
||||||
|
config_vars="$config_vars
|
||||||
|
config-cflags-avx512 = $libc_cv_cc_avx512"
|
||||||
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX encoding of SSE instructions" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for AVX encoding of SSE instructions" >&5
|
||||||
$as_echo_n "checking for AVX encoding of SSE instructions... " >&6; }
|
$as_echo_n "checking for AVX encoding of SSE instructions... " >&6; }
|
||||||
if ${libc_cv_cc_sse2avx+:} false; then :
|
if ${libc_cv_cc_sse2avx+:} false; then :
|
||||||
|
@ -23,15 +23,6 @@ if test $libc_cv_cc_avx = yes; then
|
|||||||
fi
|
fi
|
||||||
LIBC_CONFIG_VAR([config-cflags-avx], [$libc_cv_cc_avx])
|
LIBC_CONFIG_VAR([config-cflags-avx], [$libc_cv_cc_avx])
|
||||||
|
|
||||||
dnl Check if -mavx512f works.
|
|
||||||
AC_CACHE_CHECK(for AVX512 support, libc_cv_cc_avx512, [dnl
|
|
||||||
LIBC_TRY_CC_OPTION([-mavx512f], [libc_cv_cc_avx512=yes], [libc_cv_cc_avx512=no])
|
|
||||||
])
|
|
||||||
if test $libc_cv_cc_avx512 = yes; then
|
|
||||||
AC_DEFINE(HAVE_AVX512_SUPPORT)
|
|
||||||
fi
|
|
||||||
LIBC_CONFIG_VAR([config-cflags-avx512], [$libc_cv_cc_avx512])
|
|
||||||
|
|
||||||
dnl Check if asm supports AVX512.
|
dnl Check if asm supports AVX512.
|
||||||
AC_CACHE_CHECK(for AVX512 support in assembler, libc_cv_asm_avx512, [dnl
|
AC_CACHE_CHECK(for AVX512 support in assembler, libc_cv_asm_avx512, [dnl
|
||||||
cat > conftest.s <<\EOF
|
cat > conftest.s <<\EOF
|
||||||
@ -47,6 +38,15 @@ if test $libc_cv_asm_avx512 == yes; then
|
|||||||
AC_DEFINE(HAVE_AVX512_ASM_SUPPORT)
|
AC_DEFINE(HAVE_AVX512_ASM_SUPPORT)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
dnl Check if -mavx512f works.
|
||||||
|
AC_CACHE_CHECK(for AVX512 support, libc_cv_cc_avx512, [dnl
|
||||||
|
LIBC_TRY_CC_OPTION([-mavx512f], [libc_cv_cc_avx512=$libc_cv_asm_avx512], [libc_cv_cc_avx512=no])
|
||||||
|
])
|
||||||
|
if test $libc_cv_cc_avx512 = yes; then
|
||||||
|
AC_DEFINE(HAVE_AVX512_SUPPORT)
|
||||||
|
fi
|
||||||
|
LIBC_CONFIG_VAR([config-cflags-avx512], [$libc_cv_cc_avx512])
|
||||||
|
|
||||||
dnl Check if -msse2avx works.
|
dnl Check if -msse2avx works.
|
||||||
AC_CACHE_CHECK(for AVX encoding of SSE instructions, libc_cv_cc_sse2avx, [dnl
|
AC_CACHE_CHECK(for AVX encoding of SSE instructions, libc_cv_cc_sse2avx, [dnl
|
||||||
LIBC_TRY_CC_OPTION([-msse2avx],
|
LIBC_TRY_CC_OPTION([-msse2avx],
|
||||||
|
Loading…
Reference in New Issue
Block a user