diff options
Diffstat (limited to 'lib/libc/softfloat/bits64/softfloat-macros')
| -rw-r--r-- | lib/libc/softfloat/bits64/softfloat-macros | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/lib/libc/softfloat/bits64/softfloat-macros b/lib/libc/softfloat/bits64/softfloat-macros index 731941b49be..21a26f7f7ec 100644 --- a/lib/libc/softfloat/bits64/softfloat-macros +++ b/lib/libc/softfloat/bits64/softfloat-macros @@ -1,4 +1,4 @@ -/* $NetBSD: softfloat-macros,v 1.2 2009/02/16 10:23:35 tron Exp $ */ +/* $NetBSD: softfloat-macros,v 1.3 2012/03/21 02:32:26 christos Exp $ */ /* =============================================================================== @@ -464,10 +464,10 @@ INLINE void mul64To128( bits64 a, bits64 b, bits64 *z0Ptr, bits64 *z1Ptr ) bits32 aHigh, aLow, bHigh, bLow; bits64 z0, zMiddleA, zMiddleB, z1; - aLow = a; - aHigh = a>>32; - bLow = b; - bHigh = b>>32; + aLow = (bits32)a; + aHigh = (bits32)(a>>32); + bLow = (bits32)b; + bHigh = (bits32)(b>>32); z1 = ( (bits64) aLow ) * bLow; zMiddleA = ( (bits64) aLow ) * bHigh; zMiddleB = ( (bits64) aHigh ) * bLow; @@ -616,7 +616,7 @@ static bits32 estimateSqrt32( int16 aExp, bits32 a ) z = 0x8000 + ( a>>17 ) - sqrtEvenAdjustments[ idx ]; z = a / z + z; z = ( 0x20000 <= z ) ? 0xFFFF8000 : ( z<<15 ); - if ( z <= a ) return (bits32) ( ( (sbits32) a )>>1 ); + if ( z <= a ) return (bits32) ( ( (bits32) a )>>1 ); } return ( (bits32) ( ( ( (bits64) a )<<31 ) / z ) ) + ( z>>1 ); @@ -682,7 +682,7 @@ static int8 countLeadingZeros64( bits64 a ) else { a >>= 32; } - shiftCount += countLeadingZeros32( a ); + shiftCount += (int8)countLeadingZeros32( (bits32)a ); return shiftCount; } |
