The definition of CPU_DoubleU is incorrect on arm hosts when using
soft-float. In this case "float64" will have host integer word ordering, not
host hardware float ordering.
Paul
Index: cpu-all.h
===================================================================
RCS file: /cvsroot/qemu/qemu/cpu-all.h,v
retrieving revision 1.42
diff -u -p -r1.42 cpu-all.h
--- cpu-all.h 13 Mar 2005 18:50:23 -0000 1.42
+++ cpu-all.h 26 Mar 2005 20:48:25 -0000
@@ -120,7 +120,8 @@ static inline void tswap64s(uint64_t *s)
endian ! */
typedef union {
float64 d;
-#if defined(WORDS_BIGENDIAN) || (defined(__arm__) && !defined(__VFP_FP__))
+#if defined(WORDS_BIGENDIAN) \
+ || (defined(__arm__) && !defined(__VFP_FP__) && !defined(CONFIG_SOFTFLOAT))
struct {
uint32_t upper;
uint32_t lower;
_______________________________________________
Qemu-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/qemu-devel