re PR target/29498 (FTZ/DAZ for SSE should be ported to mingw32)
authorZuxy Meng <zuxy.meng@gmail.com>
Tue, 29 May 2007 08:09:16 +0000 (08:09 +0000)
committerDanny Smith <dannysmith@gcc.gnu.org>
Tue, 29 May 2007 08:09:16 +0000 (08:09 +0000)
libgcc
PR target/29498
* config.host (i[34567]86-*-cygwin* | i[34567]86-*-mingw*) Add
crtfastmath.o to extra_parts.  Add i386/t-crtfm to tmake_file.
* config/i386/t-crtfm: Compile crtfastmath.o with
-minline-all-stringops.

gcc

PR target/29498
* config/i386/t-crtfm: Compile crtfastmath.o with
-minline-all-stringops.
* config/i386/cygwin.h (ENDFILE_SPECS): Add crtfastmath.o.
* config/i386/mingw32.h (ENDFILE_SPECS): Add crtfastmath.o.

Co-Authored-By: Danny Smith <dannysmith@users.sourceforge.net>
From-SVN: r125160

gcc/ChangeLog
gcc/config/i386/cygwin.h
gcc/config/i386/mingw32.h
libgcc/ChangeLog
libgcc/config.host
libgcc/config/i386/t-crtfm

index ea23ee99986e15557626d6d86c0eb8b8ad594ebb..dfcd3890b82a8eff8ab21b10efb43686991a9670 100644 (file)
@@ -1,3 +1,12 @@
+2007-05-29  Zuxy Meng  <zuxy.meng@gmail.com>
+            Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR target/29498
+       * config/i386/t-crtfm: Compile crtfastmath.o with
+       -minline-all-stringops.
+       * config/i386/cygwin.h (ENDFILE_SPECS): Add crtfastmath.o.
+       * config/i386/mingw32.h (ENDFILE_SPECS): Add crtfastmath.o.
+
 2007-05-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
 
        * doc/md.texi: Document constraints on HP PA-RISC.
index fe85a6df4cde8f75fa2eb9c81ce69ac7040e52f9..22e0af2db996961d37e67e5babaddca72c632ceb 100644 (file)
@@ -40,6 +40,10 @@ Boston, MA 02110-1301, USA.  */
   %{pg:gcrt0%O%s}}}\
 "
 
+#undef ENDFILE_SPEC
+#define ENDFILE_SPEC \
+  "%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s}"
+
 /* Normally, -lgcc is not needed since everything in it is in the DLL, but we
    want to allow things to be added to it when installing new versions of
    GCC without making a new CYGWIN.DLL, so we leave it.  Profiling is handled
index a39fbab3cdeeb466986d8e08c60a82ca3b884d76..1145b13b3cb6e284959852989815e1992b96f8ec 100644 (file)
@@ -86,6 +86,10 @@ Boston, MA 02110-1301, USA.  */
 #define STARTFILE_SPEC "%{shared|mdll:dllcrt2%O%s} \
   %{!shared:%{!mdll:crt2%O%s}} %{pg:gcrt2%O%s}"
 
+#undef ENDFILE_SPEC
+#define ENDFILE_SPEC \
+  "%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s}"
+
 /* Override startfile prefix defaults.  */
 #ifndef STANDARD_STARTFILE_PREFIX_1
 #if TARGET_64BIT_DEFAULT
index 8baa49f82e220ff4ce7b3c15c4b0cf40000333da..fdcdd2f48ba9535b6708000c637dae57ca7ef502 100644 (file)
@@ -1,3 +1,12 @@
+2007-05-29  Zuxy Meng  <zuxy.meng@gmail.com>
+            Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR target/29498
+       * config.host (i[34567]86-*-cygwin* | i[34567]86-*-mingw*) Add
+       crtfastmath.o to extra_parts.  Add i386/t-crtfm to tmake_file.
+       * config/i386/t-crtfm: Compile crtfastmath.o with
+       -minline-all-stringops.
+
 2007-05-10  Richard Sandiford  <richard@codesourcery.com>
 
        * config.host (sparc-wrs-vxworks): New target.
index 4de74cf203ed468cb5247a1a16559fd9dd75c775..3e0cb47903ce8893d39fed59968fe8cf5d443eac 100644 (file)
@@ -367,9 +367,13 @@ i[34567]86-*-sysv4*)               # Intel 80386's running system V.4
        ;;
 i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae)
        ;;
-i[34567]86-*-pe | i[34567]86-*-cygwin*)
+i[34567]86-*-pe)
        ;;
-i[34567]86-*-mingw32* | x86_64-*-mingw*)
+i[34567]86-*-cygwin* | i[34567]86-*-mingw*)
+       extra_parts="crtfastmath.o"
+       tmake_file="i386/t-crtfm"
+       ;;
+x86_64-*-mingw*)
        ;;
 i[34567]86-*-uwin*)
        ;;
index fbe7d12e10718a338529eb07bc3ef12e4f27a1e3..6e89296b2b3f9b330b3df11e89c7427c4b1cc500 100644 (file)
@@ -1,2 +1,5 @@
+# This is an endfile, Use -minline-all-stringops to ensure
+# that __builtin_memset doesn't refer to the lib function memset().
 crtfastmath.o: $(gcc_srcdir)/config/i386/crtfastmath.c
-       $(gcc_compile) -msse -c $(gcc_srcdir)/config/i386/crtfastmath.c
+       $(gcc_compile) -msse -minline-all-stringops -c \
+       $(gcc_srcdir)/config/i386/crtfastmath.c