mirror of
git://sourceware.org/git/glibc.git
synced 2025-01-18 12:16:13 +08:00
Add test-config-cflags-float-store for -ffloat-store
Clang doesn't support -ffloat-store: clang: error: optimization flag '-ffloat-store' is not supported [-Werror,-Wignored-optimization-argument] Define test-config-cflags-float-store for -ffloat-store and use it in math/Makefile for testing. Signed-off-by: H.J. Lu <hjl.tools@gmail.com> Reviewed-by: Sam James <sam@gentoo.org>
This commit is contained in:
parent
90edd56c01
commit
56cdc529fb
33
configure
vendored
33
configure
vendored
@ -7680,6 +7680,39 @@ config_vars="$config_vars
|
||||
config-cflags-signaling-nans = $libc_cv_cc_signaling_nans"
|
||||
|
||||
|
||||
|
||||
|
||||
saved_CC="$CC"
|
||||
CC="$TEST_CC"
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -ffloat-store in testing" >&5
|
||||
printf %s "checking for -ffloat-store in testing... " >&6; }
|
||||
if test ${libc_cv_test_cc_float_store+y}
|
||||
then :
|
||||
printf %s "(cached) " >&6
|
||||
else case e in #(
|
||||
e) if { ac_try='${CC-cc} -Werror -ffloat-store -xc /dev/null -S -o /dev/null'
|
||||
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||
test $ac_status = 0; }; }
|
||||
then :
|
||||
libc_cv_test_cc_float_store="-ffloat-store"
|
||||
else case e in #(
|
||||
e) libc_cv_test_cc_float_store= ;;
|
||||
esac
|
||||
fi ;;
|
||||
esac
|
||||
fi
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_test_cc_float_store" >&5
|
||||
printf "%s\n" "$libc_cv_test_cc_float_store" >&6; }
|
||||
|
||||
CC="$saved_CC"
|
||||
|
||||
|
||||
config_vars="$config_vars
|
||||
test-config-cflags-float-store = $libc_cv_test_cc_float_store"
|
||||
|
||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC accepts -fno-tree-loop-distribute-patterns with \
|
||||
__attribute__ ((__optimize__))" >&5
|
||||
printf %s "checking if $CC accepts -fno-tree-loop-distribute-patterns with \
|
||||
|
@ -1497,6 +1497,15 @@ LIBC_CONFIG_VAR([config-cflags-signaling-nans],
|
||||
[$libc_cv_cc_signaling_nans])
|
||||
AC_SUBST(libc_cv_test_cc_signaling_nans)
|
||||
|
||||
dnl Determine if TEST_CC supports -ffloat-store.
|
||||
LIBC_TRY_TEST_CC_OPTION([for -ffloat-store],
|
||||
[-Werror -ffloat-store],
|
||||
libc_cv_test_cc_float_store,
|
||||
[libc_cv_test_cc_float_store="-ffloat-store"],
|
||||
[libc_cv_test_cc_float_store=])
|
||||
LIBC_CONFIG_VAR([test-config-cflags-float-store],
|
||||
[$libc_cv_test_cc_float_store])
|
||||
|
||||
AC_CACHE_CHECK(if $CC accepts -fno-tree-loop-distribute-patterns with \
|
||||
__attribute__ ((__optimize__)), libc_cv_cc_loop_to_function, [dnl
|
||||
cat > conftest.c <<EOF
|
||||
|
@ -1062,7 +1062,8 @@ endif
|
||||
|
||||
libm-test-fast-math-cflags = -fno-builtin -D__FAST_MATH__ -DTEST_FAST_MATH
|
||||
libm-test-vec-cflags = $(libm-test-fast-math-cflags) -fno-inline \
|
||||
-ffloat-store -D_OPENMP=201307 -Wno-unknown-pragmas
|
||||
$(test-config-cflags-float-store) \
|
||||
-D_OPENMP=201307 -Wno-unknown-pragmas
|
||||
|
||||
CFLAGS-test-double-vlen4-wrappers.c += $(double-vlen4-arch-ext-cflags)
|
||||
|
||||
@ -1078,7 +1079,8 @@ CFLAGS-test-float-vlen16-wrappers.c += $(float-vlen16-arch-ext-cflags)
|
||||
# raise spurious exceptions for sNaNs, but also do not test for
|
||||
# exceptions. Thus both versions of the classification macros are
|
||||
# validated.
|
||||
libm-test-no-inline-cflags = -fno-inline -ffloat-store -fno-builtin \
|
||||
libm-test-no-inline-cflags = -fno-inline -fno-builtin \
|
||||
$(test-config-cflags-float-store) \
|
||||
$(config-cflags-signaling-nans)
|
||||
CFLAGS-test-tgmath.c += -fno-builtin
|
||||
# The following testcase uses very long lines (>3 million), so it may take a
|
||||
|
Loading…
Reference in New Issue
Block a user