]> git.proxmox.com Git - qemu.git/commit - fpu/softfloat-specialize.h
softfloat: Fix single-to-half precision float conversions
authorPeter Maydell <peter.maydell@linaro.org>
Thu, 10 Feb 2011 11:28:58 +0000 (11:28 +0000)
committerAurelien Jarno <aurelien@aurel32.net>
Thu, 10 Feb 2011 17:28:21 +0000 (18:28 +0100)
commit600e30d2b293bd19b0d0cdb7e8a517cecf482d12
tree265f184644fcc33b1e1877d49edf3189695245e7
parentbcd4d9afd411494f9e1cb2a3b4a65dcf4207857e
softfloat: Fix single-to-half precision float conversions

Fix various bugs in the single-to-half-precision conversion code:
 * input NaNs not correctly converted in IEEE mode
   (fixed by defining and using a commonNaNToFloat16())
 * wrong values returned when converting NaN/Inf into non-IEEE
   half precision value
 * wrong values returned for conversion of values which are
   on the boundary between denormal and zero for the half
   precision format
 * zeroes not correctly identified
 * excessively large results in non-IEEE mode should
   generate InvalidOp, not Overflow

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
fpu/softfloat-specialize.h
fpu/softfloat.c