re PR target/55175 (i386/sfp-exceptions.c:52:7: error: impossible constraint in ...
authorUros Bizjak <ubizjak@gmail.com>
Fri, 2 Nov 2012 14:09:02 +0000 (15:09 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Fri, 2 Nov 2012 14:09:02 +0000 (15:09 +0100)
PR target/55175
* config/i386/sfp-exceptions.c: Guard with _SOFT_FLOAT.
* config/i386/sfp-machine.h: Guard exception handling
code with _SOFT_FLOAT.
* config/i386/32/sfp-machine.h: Guard rounding handling
code with _SOFT_FLOAT.
* config/i386/64/sfp-machine.h: Ditto.

From-SVN: r193095

libgcc/ChangeLog
libgcc/config/i386/32/sfp-machine.h
libgcc/config/i386/64/sfp-machine.h
libgcc/config/i386/sfp-exceptions.c
libgcc/config/i386/sfp-machine.h

index 6be90f579f2c4cf2360b3f23e8c05423eed1ff37..87e8a27e8556dcc394bc79c6214c4de4a8ee2c17 100644 (file)
@@ -1,3 +1,13 @@
+2012-11-02  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/55175
+       * config/i386/sfp-exceptions.c: Guard with _SOFT_FLOAT.
+       * config/i386/sfp-machine.h: Guard exception handling
+       code with _SOFT_FLOAT.
+       * config/i386/32/sfp-machine.h: Guard rounding handling
+       code with _SOFT_FLOAT.
+       * config/i386/64/sfp-machine.h: Ditto.
+
 2012-10-31  Joel Sherrill  <joel.sherrill@oarcorp.com>
 
        * config.host (m32r-*-rtems*): Include crtinit.o and crtfinit.o
 2012-09-01  Mark Kettenis  <kettenis@openbsd.org>
 
        * config.host (x86_64-*-openbsd*): New target.
-       
+
 2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>
 
        * config/mips/crtfastmath.c (set_fast_math): Add 'nomips16'
index 474ade0d5038c71d104e1b68b4d1a216daac06dd..d81d9a366ca031c366fd68c23da7d3c8818a0d4b 100644 (file)
@@ -77,6 +77,7 @@
 #define _FP_NANFRAC_E          _FP_QNANBIT_E, 0, 0, 0
 #define _FP_NANFRAC_Q          _FP_QNANBIT_Q, 0, 0, 0
 
+#ifndef _SOFT_FLOAT
 #define FP_RND_NEAREST         0
 #define FP_RND_ZERO            0xc00
 #define FP_RND_PINF            0x800
@@ -91,3 +92,4 @@
   do {                                                 \
     __asm__ __volatile__ ("fnstcw\t%0" : "=m" (_fcw)); \
   } while (0)
+#endif
index fc9a38af696be8987e4bbe15172d3cd789687510..21c9edc38088c71e2c7c07f351a9d95f96fc1ad4 100644 (file)
@@ -18,6 +18,7 @@ typedef unsigned int UTItype __attribute__ ((mode (TI)));
 #define _FP_NANFRAC_E          _FP_QNANBIT_E, 0
 #define _FP_NANFRAC_Q          _FP_QNANBIT_Q, 0
 
+#ifndef _SOFT_FLOAT
 #define FP_RND_NEAREST         0
 #define FP_RND_ZERO            0x6000
 #define FP_RND_PINF            0x4000
@@ -32,3 +33,4 @@ typedef unsigned int UTItype __attribute__ ((mode (TI)));
   do {                                                         \
     __asm__ __volatile__ ("%vstmxcsr\t%0" : "=m" (_fcw));      \
   } while (0)
+#endif
index 0d5c2e0e3f5c76359832c48987e97c339517a47f..d7e2bf7d428dedc1d7db958e8ba496067772e3f7 100644 (file)
@@ -21,6 +21,7 @@
  * <http://www.gnu.org/licenses/>.
  */
 
+#ifndef _SOFT_FLOAT
 #include "sfp-machine.h"
 
 struct fenv
@@ -88,3 +89,4 @@ __sfp_handle_exceptions (int _fex)
       asm volatile ("fwait");
     }
 };
+#endif
index 01bf14ffbb04cff1facbe42e99485506d6fe8f13..9afbbcbed03eefd52a563bab0ccc824be2283a1d 100644 (file)
@@ -40,6 +40,7 @@ typedef int __gcc_CMPtype __attribute__ ((mode (__libgcc_cmp_return__)));
     R##_c = FP_CLS_NAN;                                                \
   } while (0)
 
+#ifndef _SOFT_FLOAT
 #define FP_EX_INVALID          0x01
 #define FP_EX_DENORM           0x02
 #define FP_EX_DIVZERO          0x04
@@ -56,6 +57,7 @@ void __sfp_handle_exceptions (int);
   } while (0);
 
 #define FP_ROUNDMODE           (_fcw & FP_RND_MASK)
+#endif
 
 #define        __LITTLE_ENDIAN 1234
 #define        __BIG_ENDIAN    4321