target-alpha: Suppress underflow from CVTTQ if DNZ
authorRichard Henderson <rth@twiddle.net>
Tue, 8 Jul 2014 17:14:09 +0000 (10:14 -0700)
committerRichard Henderson <rth@twiddle.net>
Mon, 18 May 2015 20:03:47 +0000 (13:03 -0700)
I.e. respect flush_inputs_to_zero.

Reported-by: Al Viro <viro@ZenIV.linux.org.uk>
Signed-off-by: Richard Henderson <rth@twiddle.net>
target-alpha/fpu_helper.c

index ea1f2e22b90dea2334bae7eeea3233bb7a4b43b6..fa4401d4d6980515f2ea2ecd0e7592bae9f29e77 100644 (file)
@@ -452,7 +452,7 @@ static uint64_t do_cvttq(CPUAlphaState *env, uint64_t a, int roundmode)
     frac = a & 0xfffffffffffffull;
 
     if (exp == 0) {
-        if (unlikely(frac != 0)) {
+        if (unlikely(frac != 0) && !env->fp_status.flush_inputs_to_zero) {
             goto do_underflow;
         }
     } else if (exp == 0x7ff) {