Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/lib/libc/arch/mips/softfloat Fix LE softfloat (mostly theore...



details:   https://anonhg.NetBSD.org/src/rev/d632f88e21d7
branches:  trunk
changeset: 762670:d632f88e21d7
user:      pooka <pooka%NetBSD.org@localhost>
date:      Fri Feb 25 11:53:07 2011 +0000

description:
Fix LE softfloat (mostly theoretical) and comment.

from Alessandro Forin

diffstat:

 lib/libc/arch/mips/softfloat/mips-gcc.h |  13 +++++++++----
 1 files changed, 9 insertions(+), 4 deletions(-)

diffs (29 lines):

diff -r f33cb3c35765 -r d632f88e21d7 lib/libc/arch/mips/softfloat/mips-gcc.h
--- a/lib/libc/arch/mips/softfloat/mips-gcc.h   Fri Feb 25 11:44:56 2011 +0000
+++ b/lib/libc/arch/mips/softfloat/mips-gcc.h   Fri Feb 25 11:53:07 2011 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: mips-gcc.h,v 1.2 2009/12/14 01:07:42 matt Exp $ */
+/* $NetBSD: mips-gcc.h,v 1.3 2011/02/25 11:53:07 pooka Exp $ */
 
 /*
 -------------------------------------------------------------------------------
@@ -85,11 +85,16 @@
 
 /*
 -------------------------------------------------------------------------------
-The ARM FPA is odd in that it stores doubles high-order word first, no matter
+The MIPS FPA is odd in that it stores doubles high-order word first, no matter
 what the endianness of the CPU.  VFP is sane.
 -------------------------------------------------------------------------------
 */
 #if defined(SOFTFLOAT_FOR_GCC)
-#define FLOAT64_DEMANGLE(a)    (a)
-#define FLOAT64_MANGLE(a)      (a)
+#if defined(__MIPSEB__)
+#define FLOAT64_DEMANGLE(a)     (a)
+#define FLOAT64_MANGLE(a)       (a)
+#else
+#define FLOAT64_DEMANGLE(a)     (((a) << 32) | ((a) >> 32))
+#define FLOAT64_MANGLE(a)       FLOAT64_DEMANGLE(a)
 #endif
+#endif



Home | Main Index | Thread Index | Old Index