summaryrefslogtreecommitdiff
path: root/gcc/configure.ac
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2006-02-23 08:58:22 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2006-02-23 08:58:22 +0000
commit2dde0cc6a6036301a92f5dfd1698d15e8bbcc821 (patch)
tree88bb99ad558cf709fbf8381f220ed61566198f97 /gcc/configure.ac
parentfb94de662dd3cf8fc6260ba9ea995b332347531a (diff)
downloadgcc-2dde0cc6a6036301a92f5dfd1698d15e8bbcc821.tar.gz
2006-02-23 Jakub Jelinek <jakub@redhat.com>
* configure.ac: Add --with{,out}-long-double-128 configure option. (TARGET_DEFAULT_LONG_DOUBLE_128): New test. * configure: Rebuilt. * config.in: Rebuilt. * doc/install.texi (Options specification): Document --with-long-double-128. * config/rs6000/linux.h [TARGET_DEFAULT_LONG_DOUBLE_128] (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Define to 128. * config/rs6000/linux64.h [TARGET_DEFAULT_LONG_DOUBLE_128] (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Define to 128. 2006-02-23 Aldy Hernandez <aldyh@redhat.com> * config/s390/s390.c (override_options): Handle TARGET_DEFAULT_LONG_DOUBLE_128. * config/alpha/alpha.c (override_options): Handle TARGET_DEFAULT_LONG_DOUBLE_128. * config/sparc/sparc.c (sparc_override_options): Handle TARGET_DEFAULT_LONG_DOUBLE_128. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111381 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/configure.ac')
-rw-r--r--gcc/configure.ac33
1 files changed, 33 insertions, 0 deletions
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 7b9a94fea6b..1b8feabd60d 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -3176,6 +3176,39 @@ if test x$gcc_cv_libc_provides_ssp = xyes; then
[Define if your target C library provides stack protector support])
fi
+# Check if TFmode long double should be used by default or not.
+# Some glibc targets used DFmode long double, but with glibc 2.4
+# and later they can use TFmode.
+case "$target" in
+ powerpc*-*-*gnu* | \
+ sparc*-*-linux* | \
+ s390*-*-linux* | \
+ alpha*-*-linux*)
+ AC_ARG_WITH(long-double-128,
+[ --with-long-double-128 Use 128-bit long double by default.],
+ gcc_cv_target_ldbl128="$with_long_double_128",
+ [gcc_cv_target_ldbl128=no
+ if test x$host != x$target || test "x$TARGET_SYSTEM_ROOT" != x; then
+ if test "x$with_sysroot" = x; then
+ glibc_header_dir="${exec_prefix}/${target_noncanonical}/sys-include"
+ elif test "x$with_sysroot" = xyes; then
+ glibc_header_dir="${exec_prefix}/${target_noncanonical}/sys-root/usr/include"
+ else
+ glibc_header_dir="${with_sysroot}/usr/include"
+ fi
+ else
+ glibc_header_dir=/usr/include
+ fi
+ grep '^[ ]*#[ ]*define[ ][ ]*__LONG_DOUBLE_MATH_OPTIONAL' \
+ $glibc_header_dir/bits/wordsize.h > /dev/null 2>&1 \
+ && gcc_cv_target_ldbl128=yes])
+ ;;
+esac
+if test x$gcc_cv_target_ldbl128 = xyes; then
+ AC_DEFINE(TARGET_DEFAULT_LONG_DOUBLE_128, 1,
+ [Define if TFmode long double should be the default])
+fi
+
# Find out what GC implementation we want, or may, use.
AC_ARG_WITH(gc,
[ --with-gc={page,zone} choose the garbage collection mechanism to use