2016-10-11 16:50:19 +00:00
|
|
|
GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
|
|
|
|
# Local configure fragment for sysdeps/powerpc/powerpc64le.
|
|
|
|
|
|
|
|
dnl Require binary128 floating point support on powerpc64le (available in
|
|
|
|
dnl GCC 6.2).
|
|
|
|
AC_CACHE_CHECK([if $CC supports binary128 floating point type],
|
|
|
|
libc_cv_compiler_powerpc64le_binary128_ok, [dnl
|
|
|
|
save_CFLAGS="$CFLAGS"
|
|
|
|
CFLAGS="$CFLAGS -Werror -mfloat128"
|
|
|
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
|
|
|
__float128 a, b, c, d, e;
|
|
|
|
int i;
|
|
|
|
|
|
|
|
__float128
|
|
|
|
foobar (__float128 x)
|
|
|
|
{
|
|
|
|
a = __builtin_nansq ("0");
|
|
|
|
b = __builtin_huge_valq ();
|
|
|
|
c = __builtin_infq ();
|
|
|
|
d = __builtin_fabsq (x);
|
|
|
|
e = __builtin_nanq ("0");
|
|
|
|
i = __builtin_signbit (x);
|
|
|
|
return __builtin_copysignq (x, x);
|
|
|
|
}
|
|
|
|
]])],
|
|
|
|
[libc_cv_compiler_powerpc64le_binary128_ok=yes],
|
|
|
|
[libc_cv_compiler_powerpc64le_binary128_ok=no])
|
|
|
|
CFLAGS="$save_CFLAGS"])
|
|
|
|
AS_IF([test "$libc_cv_compiler_powerpc64le_binary128_ok" != "yes"],
|
|
|
|
[critic_missing="$critic_missing binary128 floating point type (GCC >= 6.2) is required on powerpc64le."])
|
|
|
|
|
2017-06-05 19:18:54 +00:00
|
|
|
dnl Require at least POWER8 on powerpc64le
|
|
|
|
OLD_CFLAGS="$CFLAGS"
|
|
|
|
CFLAGS="$CFLAGS $libc_cv_cc_submachine"
|
|
|
|
AC_CACHE_CHECK([if the target machine is at least POWER8],
|
|
|
|
libc_cv_target_power8_ok, [
|
|
|
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
|
|
|
#ifndef _ARCH_PWR8
|
|
|
|
#error invalid target architecture
|
|
|
|
#endif
|
|
|
|
]])],
|
|
|
|
[libc_cv_target_power8_ok=yes],
|
|
|
|
[libc_cv_target_power8_ok=no])])
|
|
|
|
AS_IF([test "$libc_cv_target_power8_ok" != "yes"],
|
|
|
|
[critic_missing="$critic_missing POWER8 or newer is required on powerpc64le."])
|
|
|
|
CFLAGS="$OLD_CFLAGS"
|
|
|
|
|
2016-10-11 16:50:19 +00:00
|
|
|
test -n "$critic_missing" && AC_MSG_ERROR([*** $critic_missing])
|