diff options
author | j_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-10-27 17:59:46 +0000 |
---|---|---|
committer | j_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-10-27 17:59:46 +0000 |
commit | 4f8eb6cfa27eed4a44f4beb259dd3d9081146dba (patch) | |
tree | 71d70e98f80b85bfccd8e8069b275b7ddede8825 /target-ppc | |
parent | 7c58044c0ab79f11604f71aa04b4691baacef886 (diff) |
PowerPC float bugfix: 64 bits float mantissa is 52 bits long.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3459 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-ppc')
-rw-r--r-- | target-ppc/op_helper.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/target-ppc/op_helper.c b/target-ppc/op_helper.c index 8182773564..363d84cdbc 100644 --- a/target-ppc/op_helper.c +++ b/target-ppc/op_helper.c @@ -519,7 +519,7 @@ static inline int isinfinity (float64 f) u.f = f; - return ((u.u >> 51) & 0x3FF) == 0x3FF && + return ((u.u >> 52) & 0x3FF) == 0x3FF && (u.u & 0x000FFFFFFFFFFFFFULL) == 0; } @@ -679,7 +679,7 @@ static always_inline void float_zero_divide_excp (void) u0.f = FT0; u1.f = FT1; u0.u = ((u0.u ^ u1.u) & 0x8000000000000000ULL); - u0.u |= 0x3FFULL << 51; + u0.u |= 0x3FFULL << 52; FT0 = u0.f; } } |