diff options
author | ths <ths@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-09-28 19:30:36 +0000 |
---|---|---|
committer | ths <ths@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-09-28 19:30:36 +0000 |
commit | 418d7c7169818bce67a570fdc86ffb613f53263a (patch) | |
tree | cb54f5c7281f0560f0680910528c6c1bd7ea1422 | |
parent | df0d37366561d8f23703cd7cf754fefde79e618c (diff) |
Fix MIPS FP underflow handling, spotted by Daniel Jacobowitz.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3255 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r-- | target-mips/op_helper.c | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/target-mips/op_helper.c b/target-mips/op_helper.c index 6b007a6be0..00a6c44489 100644 --- a/target-mips/op_helper.c +++ b/target-mips/op_helper.c @@ -1032,10 +1032,6 @@ FLOAT_OP(name, d) \ update_fcr31(); \ if (GET_FP_CAUSE(env->fpu->fcr31) & FP_INVALID) \ FDT2 = 0x7ff7ffffffffffffULL; \ - else if (GET_FP_CAUSE(env->fpu->fcr31) & FP_UNDERFLOW) { \ - if ((env->fpu->fcr31 & 0x3) == 0) \ - FDT2 &= FLOAT_SIGN64; \ - } \ } \ FLOAT_OP(name, s) \ { \ @@ -1044,10 +1040,6 @@ FLOAT_OP(name, s) \ update_fcr31(); \ if (GET_FP_CAUSE(env->fpu->fcr31) & FP_INVALID) \ FST2 = 0x7fbfffff; \ - else if (GET_FP_CAUSE(env->fpu->fcr31) & FP_UNDERFLOW) { \ - if ((env->fpu->fcr31 & 0x3) == 0) \ - FST2 &= FLOAT_SIGN32; \ - } \ } \ FLOAT_OP(name, ps) \ { \ @@ -1058,11 +1050,6 @@ FLOAT_OP(name, ps) \ if (GET_FP_CAUSE(env->fpu->fcr31) & FP_INVALID) { \ FST2 = 0x7fbfffff; \ FSTH2 = 0x7fbfffff; \ - } else if (GET_FP_CAUSE(env->fpu->fcr31) & FP_UNDERFLOW) { \ - if ((env->fpu->fcr31 & 0x3) == 0) { \ - FST2 &= FLOAT_SIGN32; \ - FSTH2 &= FLOAT_SIGN32; \ - } \ } \ } FLOAT_BINOP(add) |