summaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
Diffstat (limited to 'libgcc')
-rw-r--r--libgcc/ChangeLog5
-rw-r--r--libgcc/config/i386/32/sfp-machine.h4
2 files changed, 7 insertions, 2 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 3a3844d7f38..de90f4081ae 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-19 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * config/i386/32/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Support Sun
+ assembler syntax.
+
2010-04-15 Thomas Schwinge <tschwinge@gnu.org>
* config.host <i[34567]86-*-gnu*>: Handle softfp as for Linux.
diff --git a/libgcc/config/i386/32/sfp-machine.h b/libgcc/config/i386/32/sfp-machine.h
index ccff3145010..1600a7fe2c7 100644
--- a/libgcc/config/i386/32/sfp-machine.h
+++ b/libgcc/config/i386/32/sfp-machine.h
@@ -142,8 +142,8 @@ struct fenv
if (_fex & FP_EX_DIVZERO) \
{ \
float f = 1.0, g = 0.0; \
- __asm__ __volatile__ ("fdivp" : "=t" (f) \
- : "0" (f), "u" (g) \
+ __asm__ __volatile__ ("fdivp {%0, %y1|%y1, %0}" \
+ : "+t" (f) : "u" (g) \
: "st(1)"); \
__asm__ __volatile__ ("fwait"); \
} \