From c9696547d4b2d4da9e27d87a56f246d0c6551b96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Thu, 26 Apr 2012 00:15:53 +0200 Subject: softfloat: Fix mixups of int and int16 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit normalizeFloat{32,64}Subnormal() expect the exponent as int16, not int. This went unnoticed since int16 and uint16 were both typedef'ed to int. Signed-off-by: Andreas Färber Reviewed-by: Peter Maydell Tested-by: Bernhard Walle Signed-off-by: Blue Swirl --- fpu/softfloat.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'fpu') diff --git a/fpu/softfloat.c b/fpu/softfloat.c index 9e1b5f9cab..a1c658eef7 100644 --- a/fpu/softfloat.c +++ b/fpu/softfloat.c @@ -2131,7 +2131,7 @@ float32 float32_rem( float32 a, float32 b STATUS_PARAM ) float32 float32_muladd(float32 a, float32 b, float32 c, int flags STATUS_PARAM) { flag aSign, bSign, cSign, zSign; - int aExp, bExp, cExp, pExp, zExp, expDiff; + int16 aExp, bExp, cExp, pExp, zExp, expDiff; uint32_t aSig, bSig, cSig; flag pInf, pZero, pSign; uint64_t pSig64, cSig64, zSig64; @@ -3685,7 +3685,7 @@ float64 float64_rem( float64 a, float64 b STATUS_PARAM ) float64 float64_muladd(float64 a, float64 b, float64 c, int flags STATUS_PARAM) { flag aSign, bSign, cSign, zSign; - int aExp, bExp, cExp, pExp, zExp, expDiff; + int16 aExp, bExp, cExp, pExp, zExp, expDiff; uint64_t aSig, bSig, cSig; flag pInf, pZero, pSign; uint64_t pSig0, pSig1, cSig0, cSig1, zSig0, zSig1; -- cgit v1.2.1