diff options
author | redi <redi@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-09-09 17:20:42 +0000 |
---|---|---|
committer | redi <redi@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-09-09 17:20:42 +0000 |
commit | bdbf421cd2aa91716fab7fa7b6a312ab5a576212 (patch) | |
tree | 8969affc89fdebd06b8f119befc16b15679f6256 /libstdc++-v3/configure | |
parent | 865812bf75d27473d32386711289e7a14832da31 (diff) | |
download | gcc-bdbf421cd2aa91716fab7fa7b6a312ab5a576212.tar.gz |
2012-09-09 Ulrich Drepper <drepper@gmail.com>
Dominique d'Humieres <dominiq@lps.ens.fr>
Jack Howarth <howarth@bromo.med.uc.edu>
PR bootstrap/54419
* acinclude.m4: Define GLIBCXX_CHECK_X86_RDRAND.
* configure.ac: Use GLIBCXX_CHECK_X86_RDRAND to test for rdrand
support in assembler.
* src/c++11/random.cc (__x86_rdrand): Depend on _GLIBCXX_X86_RDRAND.
(random_device::_M_init): Likewise.
(random_device::_M_getval): Likewise.
* configure: Regenerated.
* config.h.in: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191111 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/configure')
-rwxr-xr-x | libstdc++-v3/configure | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index 9ea8042a1ca..d55a9efa0b1 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -70621,6 +70621,48 @@ $as_echo "#define _GLIBCXX_LONG_DOUBLE_COMPAT 1" >>confdefs.h esac +# Check if assembler supports rdrand opcode. + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for rdrand support in assembler" >&5 +$as_echo_n "checking for rdrand support in assembler... " >&6; } + if { as_var=$ac_cv_x86_rdrand; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + + ac_cv_x86_rdrand=no + case "$target" in + i?86-*-* | \ + x86_64-*-*) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +asm("rdrand %eax"); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_x86_rdrand=yes +else + ac_cv_x86_rdrand=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + esac + +fi + + if test $ac_cv_x86_rdrand = yes; then + +$as_echo "#define _GLIBCXX_X86_RDRAND 1" >>confdefs.h + + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_x86_rdrand" >&5 +$as_echo "$ac_cv_x86_rdrand" >&6; } + + # This depends on GLIBCXX_ENABLE_SYMVERS and GLIBCXX_IS_NATIVE. if $GLIBCXX_IS_NATIVE ; then |