summaryrefslogtreecommitdiffstats
path: root/target-alpha/fpu_helper.c
diff options
context:
space:
mode:
authorRichard Henderson2014-07-03 21:37:59 +0200
committerRichard Henderson2015-05-18 22:03:46 +0200
commit7b4dde839e86ca6c254d4e3cd28260e9d668afb5 (patch)
treed047288453e24f17f34b12025a2108d7b58cf8d9 /target-alpha/fpu_helper.c
parenttarget-alpha: Fix cvttq vs large integers (diff)
downloadqemu-7b4dde839e86ca6c254d4e3cd28260e9d668afb5.tar.gz
qemu-7b4dde839e86ca6c254d4e3cd28260e9d668afb5.tar.xz
qemu-7b4dde839e86ca6c254d4e3cd28260e9d668afb5.zip
target-alpha: Fix cvttq vs inf
We should raise INV for infinities as well, not OVR+INE. Reported-by: Al Viro <viro@ZenIV.linux.org.uk> Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'target-alpha/fpu_helper.c')
-rw-r--r--target-alpha/fpu_helper.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target-alpha/fpu_helper.c b/target-alpha/fpu_helper.c
index 9449c57243..db523fbc30 100644
--- a/target-alpha/fpu_helper.c
+++ b/target-alpha/fpu_helper.c
@@ -444,7 +444,7 @@ static uint64_t do_cvttq(CPUAlphaState *env, uint64_t a, int roundmode)
goto do_underflow;
}
} else if (exp == 0x7ff) {
- exc = (frac ? FPCR_INV : FPCR_IOV | FPCR_INE);
+ exc = FPCR_INV;
} else {
/* Restore implicit bit. */
frac |= 0x10000000000000ull;