[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[qemu-xen staging] fpu/softfloat: fix up float16 nan recognition



commit 8cdf91243f7515f424b78d5469d64c34ee534783
Author:     LIU Zhiwei <zhiwei_liu@xxxxxxxxx>
AuthorDate: Mon Jul 13 21:04:08 2020 +0100
Commit:     Alex Bennée <alex.bennee@xxxxxxxxxx>
CommitDate: Wed Jul 15 11:52:43 2020 +0100

    fpu/softfloat: fix up float16 nan recognition
    
    Signed-off-by: LIU Zhiwei <zhiwei_liu@xxxxxxxxx>
    Signed-off-by: Alex Bennée <alex.bennee@xxxxxxxxxx>
    Reviewed-by: Richard Henderson <richard.henderson@xxxxxxxxxx>
    Message-Id: <20200712234521.3972-2-zhiwei_liu@xxxxxxxxx>
    Message-Id: <20200713200415.26214-5-alex.bennee@xxxxxxxxxx>
---
 fpu/softfloat-specialize.inc.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fpu/softfloat-specialize.inc.c b/fpu/softfloat-specialize.inc.c
index 44f5b661f8..034d18199c 100644
--- a/fpu/softfloat-specialize.inc.c
+++ b/fpu/softfloat-specialize.inc.c
@@ -254,7 +254,7 @@ bool float16_is_quiet_nan(float16 a_, float_status *status)
     if (snan_bit_is_one(status)) {
         return (((a >> 9) & 0x3F) == 0x3E) && (a & 0x1FF);
     } else {
-        return ((a & ~0x8000) >= 0x7C80);
+        return ((a >> 9) & 0x3F) == 0x3F;
     }
 #endif
 }
@@ -271,7 +271,7 @@ bool float16_is_signaling_nan(float16 a_, float_status 
*status)
 #else
     uint16_t a = float16_val(a_);
     if (snan_bit_is_one(status)) {
-        return ((a & ~0x8000) >= 0x7C80);
+        return ((a >> 9) & 0x3F) == 0x3F;
     } else {
         return (((a >> 9) & 0x3F) == 0x3E) && (a & 0x1FF);
     }
--
generated by git-patchbot for /home/xen/git/qemu-xen.git#staging



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.