Lines Matching refs:zSign

111 static int32 roundAndPackInt32( flag zSign, bits64 absZ )  in roundAndPackInt32()  argument
127 if ( zSign ) { in roundAndPackInt32()
139 if ( zSign ) z = - z; in roundAndPackInt32()
140 if ( ( absZ>>32 ) || ( z && ( ( z < 0 ) ^ zSign ) ) ) { in roundAndPackInt32()
142 return zSign ? (sbits32) 0x80000000 : 0x7FFFFFFF; in roundAndPackInt32()
162 static int64 roundAndPackInt64( flag zSign, bits64 absZ0, bits64 absZ1 ) in roundAndPackInt64() argument
176 if ( zSign ) { in roundAndPackInt64()
190 if ( zSign ) z = - z; in roundAndPackInt64()
191 if ( z && ( ( z < 0 ) ^ zSign ) ) { in roundAndPackInt64()
195 zSign ? (sbits64) LIT64( 0x8000000000000000 ) in roundAndPackInt64()
271 INLINE float32 packFloat32( flag zSign, int16 zExp, bits32 zSig ) in packFloat32() argument
274 return ( ( (bits32) zSign )<<31 ) + ( ( (bits32) zExp )<<23 ) + zSig; in packFloat32()
301 static float32 roundAndPackFloat32( flag zSign, int16 zExp, bits32 zSig ) in roundAndPackFloat32() argument
317 if ( zSign ) { in roundAndPackFloat32()
332 return packFloat32( zSign, 0xFF, 0 ) - ( roundIncrement == 0 ); in roundAndPackFloat32()
349 return packFloat32( zSign, zExp, zSig ); in roundAndPackFloat32()
364 normalizeRoundAndPackFloat32( flag zSign, int16 zExp, bits32 zSig ) in normalizeRoundAndPackFloat32() argument
369 return roundAndPackFloat32( zSign, zExp - shiftCount, zSig<<shiftCount ); in normalizeRoundAndPackFloat32()
440 INLINE float64 packFloat64( flag zSign, int16 zExp, bits64 zSig ) in packFloat64() argument
443 return FLOAT64_MANGLE( ( ( (bits64) zSign )<<63 ) + in packFloat64()
471 static float64 roundAndPackFloat64( flag zSign, int16 zExp, bits64 zSig ) in roundAndPackFloat64() argument
487 if ( zSign ) { in roundAndPackFloat64()
503 FLOAT64_DEMANGLE(packFloat64( zSign, 0x7FF, 0 )) - in roundAndPackFloat64()
521 return packFloat64( zSign, zExp, zSig ); in roundAndPackFloat64()
536 normalizeRoundAndPackFloat64( flag zSign, int16 zExp, bits64 zSig ) in normalizeRoundAndPackFloat64() argument
541 return roundAndPackFloat64( zSign, zExp - shiftCount, zSig<<shiftCount ); in normalizeRoundAndPackFloat64()
611 INLINE floatx80 packFloatx80( flag zSign, int32 zExp, bits64 zSig ) in packFloatx80() argument
616 z.high = ( ( (bits16) zSign )<<15 ) + zExp; in packFloatx80()
648 int8 roundingPrecision, flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 in roundAndPackFloatx80() argument
676 if ( zSign ) { in roundAndPackFloatx80()
708 return packFloatx80( zSign, zExp, zSig0 ); in roundAndPackFloatx80()
723 return packFloatx80( zSign, zExp, zSig0 ); in roundAndPackFloatx80()
731 if ( zSign ) { in roundAndPackFloatx80()
750 || ( zSign && ( roundingMode == float_round_up ) ) in roundAndPackFloatx80()
751 || ( ! zSign && ( roundingMode == float_round_down ) ) in roundAndPackFloatx80()
753 return packFloatx80( zSign, 0x7FFE, ~ roundMask ); in roundAndPackFloatx80()
755 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in roundAndPackFloatx80()
771 if ( zSign ) { in roundAndPackFloatx80()
784 return packFloatx80( zSign, zExp, zSig0 ); in roundAndPackFloatx80()
801 return packFloatx80( zSign, zExp, zSig0 ); in roundAndPackFloatx80()
817 int8 roundingPrecision, flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 in normalizeRoundAndPackFloatx80() argument
831 roundAndPackFloatx80( roundingPrecision, zSign, zExp, zSig0, zSig1 ); in normalizeRoundAndPackFloatx80()
947 packFloat128( flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 ) in packFloat128() argument
952 z.high = ( ( (bits64) zSign )<<63 ) + ( ( (bits64) zExp )<<48 ) + zSig0; in packFloat128()
981 flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1, bits64 zSig2 ) in roundAndPackFloat128() argument
994 if ( zSign ) { in roundAndPackFloat128()
1016 || ( zSign && ( roundingMode == float_round_up ) ) in roundAndPackFloat128()
1017 || ( ! zSign && ( roundingMode == float_round_down ) ) in roundAndPackFloat128()
1021 zSign, in roundAndPackFloat128()
1027 return packFloat128( zSign, 0x7FFF, 0, 0 ); in roundAndPackFloat128()
1048 if ( zSign ) { in roundAndPackFloat128()
1065 return packFloat128( zSign, zExp, zSig0, zSig1 ); in roundAndPackFloat128()
1082 flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 ) in normalizeRoundAndPackFloat128() argument
1102 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 ); in normalizeRoundAndPackFloat128()
1117 flag zSign; in int32_to_float32() local
1121 zSign = ( a < 0 ); in int32_to_float32()
1122 return normalizeRoundAndPackFloat32( zSign, 0x9C, zSign ? - a : a ); in int32_to_float32()
1146 flag zSign; in int32_to_float64() local
1152 zSign = ( a < 0 ); in int32_to_float64()
1153 absA = zSign ? - a : a; in int32_to_float64()
1156 return packFloat64( zSign, 0x432 - shiftCount, zSig<<shiftCount ); in int32_to_float64()
1185 flag zSign; in int32_to_floatx80() local
1191 zSign = ( a < 0 ); in int32_to_floatx80()
1192 absA = zSign ? - a : a; in int32_to_floatx80()
1195 return packFloatx80( zSign, 0x403E - shiftCount, zSig<<shiftCount ); in int32_to_floatx80()
1223 flag zSign; in int32_to_float128() local
1229 zSign = ( a < 0 ); in int32_to_float128()
1230 absA = zSign ? - a : a; in int32_to_float128()
1233 return packFloat128( zSign, 0x402E - shiftCount, zSig0<<shiftCount, 0 ); in int32_to_float128()
1260 flag zSign; in int64_to_float32() local
1265 zSign = ( a < 0 ); in int64_to_float32()
1266 absA = zSign ? - a : a; in int64_to_float32()
1269 return packFloat32( zSign, 0x95 - shiftCount, absA<<shiftCount ); in int64_to_float32()
1279 return roundAndPackFloat32( zSign, 0x9C - shiftCount, absA ); in int64_to_float32()
1293 flag zSign; in int64_to_float64() local
1299 zSign = ( a < 0 ); in int64_to_float64()
1300 return normalizeRoundAndPackFloat64( zSign, 0x43C, zSign ? - a : a ); in int64_to_float64()
1316 flag zSign; in int64_to_floatx80() local
1321 zSign = ( a < 0 ); in int64_to_floatx80()
1322 absA = zSign ? - a : a; in int64_to_floatx80()
1324 return packFloatx80( zSign, 0x403E - shiftCount, absA<<shiftCount ); in int64_to_floatx80()
1343 flag zSign; in int64_to_float128() local
1350 zSign = ( a < 0 ); in int64_to_float128()
1351 absA = zSign ? - a : a; in int64_to_float128()
1364 return packFloat128( zSign, zExp, zSig0, zSig1 ); in int64_to_float128()
1703 static float32 addFloat32Sigs( float32 a, float32 b, flag zSign ) in addFloat32Sigs() argument
1733 return packFloat32( zSign, 0xFF, 0 ); in addFloat32Sigs()
1749 if ( aExp == 0 ) return packFloat32( zSign, 0, ( aSig + bSig )>>6 ); in addFloat32Sigs()
1762 return roundAndPackFloat32( zSign, zExp, zSig ); in addFloat32Sigs()
1775 static float32 subFloat32Sigs( float32 a, float32 b, flag zSign ) in subFloat32Sigs() argument
1805 return packFloat32( zSign ^ 1, 0xFF, 0 ); in subFloat32Sigs()
1818 zSign ^= 1; in subFloat32Sigs()
1838 return normalizeRoundAndPackFloat32( zSign, zExp, zSig ); in subFloat32Sigs()
1895 flag aSign, bSign, zSign; in float32_mul() local
1907 zSign = aSign ^ bSign; in float32_mul()
1916 return packFloat32( zSign, 0xFF, 0 ); in float32_mul()
1924 return packFloat32( zSign, 0xFF, 0 ); in float32_mul()
1927 if ( aSig == 0 ) return packFloat32( zSign, 0, 0 ); in float32_mul()
1931 if ( bSig == 0 ) return packFloat32( zSign, 0, 0 ); in float32_mul()
1943 return roundAndPackFloat32( zSign, zExp, zSig ); in float32_mul()
1956 flag aSign, bSign, zSign; in float32_div() local
1966 zSign = aSign ^ bSign; in float32_div()
1974 return packFloat32( zSign, 0xFF, 0 ); in float32_div()
1978 return packFloat32( zSign, 0, 0 ); in float32_div()
1987 return packFloat32( zSign, 0xFF, 0 ); in float32_div()
1992 if ( aSig == 0 ) return packFloat32( zSign, 0, 0 ); in float32_div()
2006 return roundAndPackFloat32( zSign, zExp, zSig ); in float32_div()
2020 flag aSign, bSign, zSign; in float32_rem() local
2106 zSign = ( (sbits32) aSig < 0 ); in float32_rem()
2107 if ( zSign ) aSig = - aSig; in float32_rem()
2108 return normalizeRoundAndPackFloat32( aSign ^ zSign, bExp, aSig ); in float32_rem()
2669 static float64 addFloat64Sigs( float64 a, float64 b, flag zSign ) in addFloat64Sigs() argument
2699 return packFloat64( zSign, 0x7FF, 0 ); in addFloat64Sigs()
2715 if ( aExp == 0 ) return packFloat64( zSign, 0, ( aSig + bSig )>>9 ); in addFloat64Sigs()
2728 return roundAndPackFloat64( zSign, zExp, zSig ); in addFloat64Sigs()
2741 static float64 subFloat64Sigs( float64 a, float64 b, flag zSign ) in subFloat64Sigs() argument
2771 return packFloat64( zSign ^ 1, 0x7FF, 0 ); in subFloat64Sigs()
2784 zSign ^= 1; in subFloat64Sigs()
2804 return normalizeRoundAndPackFloat64( zSign, zExp, zSig ); in subFloat64Sigs()
2861 flag aSign, bSign, zSign; in float64_mul() local
2871 zSign = aSign ^ bSign; in float64_mul()
2880 return packFloat64( zSign, 0x7FF, 0 ); in float64_mul()
2888 return packFloat64( zSign, 0x7FF, 0 ); in float64_mul()
2891 if ( aSig == 0 ) return packFloat64( zSign, 0, 0 ); in float64_mul()
2895 if ( bSig == 0 ) return packFloat64( zSign, 0, 0 ); in float64_mul()
2907 return roundAndPackFloat64( zSign, zExp, zSig0 ); in float64_mul()
2920 flag aSign, bSign, zSign; in float64_div() local
2932 zSign = aSign ^ bSign; in float64_div()
2940 return packFloat64( zSign, 0x7FF, 0 ); in float64_div()
2944 return packFloat64( zSign, 0, 0 ); in float64_div()
2953 return packFloat64( zSign, 0x7FF, 0 ); in float64_div()
2958 if ( aSig == 0 ) return packFloat64( zSign, 0, 0 ); in float64_div()
2978 return roundAndPackFloat64( zSign, zExp, zSig ); in float64_div()
2992 flag aSign, bSign, zSign; in float64_rem() local
3063 zSign = ( (sbits64) aSig < 0 ); in float64_rem()
3064 if ( zSign ) aSig = - aSig; in float64_rem()
3065 return normalizeRoundAndPackFloat64( aSign ^ zSign, bExp, aSig ); in float64_rem()
3613 static floatx80 addFloatx80Sigs( floatx80 a, floatx80 b, flag zSign ) in addFloatx80Sigs() argument
3636 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in addFloatx80Sigs()
3667 floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 ); in addFloatx80Sigs()
3680 static floatx80 subFloatx80Sigs( floatx80 a, floatx80 b, flag zSign ) in subFloatx80Sigs() argument
3714 return packFloatx80( zSign ^ 1, 0x7FFF, LIT64( 0x8000000000000000 ) ); in subFloatx80Sigs()
3721 zSign ^= 1; in subFloatx80Sigs()
3736 floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 ); in subFloatx80Sigs()
3793 flag aSign, bSign, zSign; in floatx80_mul() local
3804 zSign = aSign ^ bSign; in floatx80_mul()
3811 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in floatx80_mul()
3822 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in floatx80_mul()
3825 if ( aSig == 0 ) return packFloatx80( zSign, 0, 0 ); in floatx80_mul()
3829 if ( bSig == 0 ) return packFloatx80( zSign, 0, 0 ); in floatx80_mul()
3840 floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 ); in floatx80_mul()
3853 flag aSign, bSign, zSign; in floatx80_div() local
3865 zSign = aSign ^ bSign; in floatx80_div()
3872 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in floatx80_div()
3876 return packFloatx80( zSign, 0, 0 ); in floatx80_div()
3888 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in floatx80_div()
3893 if ( aSig == 0 ) return packFloatx80( zSign, 0, 0 ); in floatx80_div()
3921 floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 ); in floatx80_div()
3934 flag aSign, bSign, zSign; in floatx80_rem() local
3972 zSign = aSign; in floatx80_rem()
4015 zSign = ! zSign; in floatx80_rem()
4019 80, zSign, bExp + expDiff, aSig0, aSig1 ); in floatx80_rem()
4762 static float128 addFloat128Sigs( float128 a, float128 b, flag zSign ) in addFloat128Sigs() argument
4793 return packFloat128( zSign, 0x7FFF, 0, 0 ); in addFloat128Sigs()
4813 if ( aExp == 0 ) return packFloat128( zSign, 0, zSig0, zSig1 ); in addFloat128Sigs()
4828 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 ); in addFloat128Sigs()
4841 static float128 subFloat128Sigs( float128 a, float128 b, flag zSign ) in subFloat128Sigs() argument
4880 return packFloat128( zSign ^ 1, 0x7FFF, 0, 0 ); in subFloat128Sigs()
4893 zSign ^= 1; in subFloat128Sigs()
4913 return normalizeRoundAndPackFloat128( zSign, zExp - 14, zSig0, zSig1 ); in subFloat128Sigs()
4970 flag aSign, bSign, zSign; in float128_mul() local
4983 zSign = aSign ^ bSign; in float128_mul()
4990 return packFloat128( zSign, 0x7FFF, 0, 0 ); in float128_mul()
5001 return packFloat128( zSign, 0x7FFF, 0, 0 ); in float128_mul()
5004 if ( ( aSig0 | aSig1 ) == 0 ) return packFloat128( zSign, 0, 0, 0 ); in float128_mul()
5008 if ( ( bSig0 | bSig1 ) == 0 ) return packFloat128( zSign, 0, 0, 0 ); in float128_mul()
5022 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 ); in float128_mul()
5035 flag aSign, bSign, zSign; in float128_div() local
5049 zSign = aSign ^ bSign; in float128_div()
5056 return packFloat128( zSign, 0x7FFF, 0, 0 ); in float128_div()
5060 return packFloat128( zSign, 0, 0, 0 ); in float128_div()
5072 return packFloat128( zSign, 0x7FFF, 0, 0 ); in float128_div()
5077 if ( ( aSig0 | aSig1 ) == 0 ) return packFloat128( zSign, 0, 0, 0 ); in float128_div()
5107 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 ); in float128_div()
5120 flag aSign, bSign, zSign; in float128_rem() local
5215 zSign = ( (sbits64) aSig0 < 0 ); in float128_rem()
5216 if ( zSign ) sub128( 0, 0, aSig0, aSig1, &aSig0, &aSig1 ); in float128_rem()
5218 normalizeRoundAndPackFloat128( aSign ^ zSign, bExp - 4, aSig0, aSig1 ); in float128_rem()