This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RFA: Enable DFP/BID on i?86-pc-mingw32 target
- From: Danny Smith <dannysmith at clear dot net dot nz>
- To: GCC-patches <gcc-patches at gcc dot gnu dot org>
- Cc: bje at au dot ibm dot com
- Date: Sat, 21 Jul 2007 21:28:52 +1200
- Subject: RFA: Enable DFP/BID on i?86-pc-mingw32 target
Hello,
With following patch libbid builds and passes all supported tests in
gcc.dg/dfp
make -k check-gcc RUNSTESTFLAGS="dfp.exp"
=== gcc Summary ===
# of expected passes 591
# of unsupported tests 1
/develop/svn/trunk/build/gcc/xgcc version 4.3.0 200707158
(experimental)
I have also tried on cygwin target, but the build fails because of lack
of fenv.h,
included from libdecnumber/dec/Except.[ch].
Is this OK for mainline?
2007-07-19 Danny Smith <dannysmith@users.sourceforge.net>
gcc
* configure.ac (i?86*-*-mingw*): Default enable_decimal_float to
bid.
* configure: Regenerate
libgcc
* config/t-dfprules: New file, copied from gcc/config.
* config.host (i?86*-*-mingw*): Adds t-dfprules to tmake_file.
Index: gcc/configure.ac
===================================================================
--- gcc/configure.ac (revision 126718)
+++ gcc/configure.ac (working copy)
@@ -592,6 +592,9 @@
powerpc*-*-linux* | i?86*-*-linux* | x86_64*-*-linux*)
enable_decimal_float=yes
;;
+ i?86*-*-mingw*)
+ enable_decimal_float=yes
+ ;;
*)
AC_MSG_WARN(decimal float is not supported for this target,
ignored)
enable_decimal_float=no
@@ -610,6 +613,9 @@
i?86*-*-linux* | x86_64*-*-linux*)
enable_decimal_float=bid
;;
+ i?86*-*-mingw*)
+ enable_decimal_float=bid
+ ;;
*)
enable_decimal_float=dpd
;;
Index: libgcc/config.host
===================================================================
--- libgcc/config.host (revision 126718)
+++ libgcc/config.host (working copy)
@@ -369,10 +369,14 @@
;;
i[34567]86-*-pe)
;;
-i[34567]86-*-cygwin* | i[34567]86-*-mingw*)
+i[34567]86-*-cygwin*)
extra_parts="crtbegin.o crtend.o crtfastmath.o"
tmake_file="i386/t-cygming i386/t-crtfm"
;;
+i[34567]86-*-mingw*)
+ extra_parts="crtbegin.o crtend.o crtfastmath.o"
+ tmake_file="i386/t-cygming i386/t-crtfm t-dfprules"
+ ;;
x86_64-*-mingw*)
;;
i[34567]86-*-uwin*)
Index: libgcc/config/t-dfprules
===================================================================
--- libgcc/config/t-dfprules (revision 0)
+++ libgcc/config/t-dfprules (revision 0)
@@ -0,0 +1,10 @@
+# Use DFP_ENABLE to build decimal floating point support routines for
+# all decimal floating point types (32-bit, 64-bit and 128-bit). We
+# use `true' for clarity, but any value will do.
+#
+DFP_ENABLE = true
+
+# DFP_CFLAGS can be used to pass target-specific CFLAGS when compiling
+# dfp-bit.c. This is useful for overriding the definition of macros.
+#
+# DFP_CFLAGS = -DFOO=bar