Lines Matching refs:zSign

114 static int32 roundAndPackInt32( flag zSign, bits64 absZ )  in roundAndPackInt32()  argument
130 if ( zSign ) { in roundAndPackInt32()
142 if ( zSign ) z = - z; in roundAndPackInt32()
143 if ( ( absZ>>32 ) || ( z && ( ( z < 0 ) ^ zSign ) ) ) { in roundAndPackInt32()
145 return zSign ? (sbits32) 0x80000000 : 0x7FFFFFFF; in roundAndPackInt32()
165 static int64 roundAndPackInt64( flag zSign, bits64 absZ0, bits64 absZ1 ) in roundAndPackInt64() argument
179 if ( zSign ) { in roundAndPackInt64()
193 if ( zSign ) z = - z; in roundAndPackInt64()
194 if ( z && ( ( z < 0 ) ^ zSign ) ) { in roundAndPackInt64()
198 zSign ? (sbits64) LIT64( 0x8000000000000000 ) in roundAndPackInt64()
274 INLINE float32 packFloat32( flag zSign, int16 zExp, bits32 zSig ) in packFloat32() argument
277 return ( ( (bits32) zSign )<<31 ) + ( ( (bits32) zExp )<<23 ) + zSig; in packFloat32()
304 static float32 roundAndPackFloat32( flag zSign, int16 zExp, bits32 zSig ) in roundAndPackFloat32() argument
320 if ( zSign ) { in roundAndPackFloat32()
335 return packFloat32( zSign, 0xFF, 0 ) - ( roundIncrement == 0 ); in roundAndPackFloat32()
352 return packFloat32( zSign, zExp, zSig ); in roundAndPackFloat32()
367 normalizeRoundAndPackFloat32( flag zSign, int16 zExp, bits32 zSig ) in normalizeRoundAndPackFloat32() argument
372 return roundAndPackFloat32( zSign, zExp - shiftCount, zSig<<shiftCount ); in normalizeRoundAndPackFloat32()
443 INLINE float64 packFloat64( flag zSign, int16 zExp, bits64 zSig ) in packFloat64() argument
446 return FLOAT64_MANGLE( ( ( (bits64) zSign )<<63 ) + in packFloat64()
474 static float64 roundAndPackFloat64( flag zSign, int16 zExp, bits64 zSig ) in roundAndPackFloat64() argument
490 if ( zSign ) { in roundAndPackFloat64()
506 FLOAT64_DEMANGLE(packFloat64( zSign, 0x7FF, 0 )) - in roundAndPackFloat64()
524 return packFloat64( zSign, zExp, zSig ); in roundAndPackFloat64()
539 normalizeRoundAndPackFloat64( flag zSign, int16 zExp, bits64 zSig ) in normalizeRoundAndPackFloat64() argument
544 return roundAndPackFloat64( zSign, zExp - shiftCount, zSig<<shiftCount ); in normalizeRoundAndPackFloat64()
614 INLINE floatx80 packFloatx80( flag zSign, int32 zExp, bits64 zSig ) in packFloatx80() argument
619 z.high = ( ( (bits16) zSign )<<15 ) + zExp; in packFloatx80()
651 int8 roundingPrecision, flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 in roundAndPackFloatx80() argument
679 if ( zSign ) { in roundAndPackFloatx80()
711 return packFloatx80( zSign, zExp, zSig0 ); in roundAndPackFloatx80()
726 return packFloatx80( zSign, zExp, zSig0 ); in roundAndPackFloatx80()
734 if ( zSign ) { in roundAndPackFloatx80()
753 || ( zSign && ( roundingMode == float_round_up ) ) in roundAndPackFloatx80()
754 || ( ! zSign && ( roundingMode == float_round_down ) ) in roundAndPackFloatx80()
756 return packFloatx80( zSign, 0x7FFE, ~ roundMask ); in roundAndPackFloatx80()
758 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in roundAndPackFloatx80()
774 if ( zSign ) { in roundAndPackFloatx80()
787 return packFloatx80( zSign, zExp, zSig0 ); in roundAndPackFloatx80()
804 return packFloatx80( zSign, zExp, zSig0 ); in roundAndPackFloatx80()
820 int8 roundingPrecision, flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 in normalizeRoundAndPackFloatx80() argument
834 roundAndPackFloatx80( roundingPrecision, zSign, zExp, zSig0, zSig1 ); in normalizeRoundAndPackFloatx80()
950 packFloat128( flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 ) in packFloat128() argument
955 z.high = ( ( (bits64) zSign )<<63 ) + ( ( (bits64) zExp )<<48 ) + zSig0; in packFloat128()
984 flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1, bits64 zSig2 ) in roundAndPackFloat128() argument
997 if ( zSign ) { in roundAndPackFloat128()
1019 || ( zSign && ( roundingMode == float_round_up ) ) in roundAndPackFloat128()
1020 || ( ! zSign && ( roundingMode == float_round_down ) ) in roundAndPackFloat128()
1024 zSign, in roundAndPackFloat128()
1030 return packFloat128( zSign, 0x7FFF, 0, 0 ); in roundAndPackFloat128()
1051 if ( zSign ) { in roundAndPackFloat128()
1068 return packFloat128( zSign, zExp, zSig0, zSig1 ); in roundAndPackFloat128()
1085 flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 ) in normalizeRoundAndPackFloat128() argument
1105 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 ); in normalizeRoundAndPackFloat128()
1120 flag zSign; in int32_to_float32() local
1124 zSign = ( a < 0 ); in int32_to_float32()
1125 return normalizeRoundAndPackFloat32( zSign, 0x9C, zSign ? - a : a ); in int32_to_float32()
1149 flag zSign; in int32_to_float64() local
1155 zSign = ( a < 0 ); in int32_to_float64()
1156 absA = zSign ? - a : a; in int32_to_float64()
1159 return packFloat64( zSign, 0x432 - shiftCount, zSig<<shiftCount ); in int32_to_float64()
1188 flag zSign; in int32_to_floatx80() local
1194 zSign = ( a < 0 ); in int32_to_floatx80()
1195 absA = zSign ? - a : a; in int32_to_floatx80()
1198 return packFloatx80( zSign, 0x403E - shiftCount, zSig<<shiftCount ); in int32_to_floatx80()
1226 flag zSign; in int32_to_float128() local
1232 zSign = ( a < 0 ); in int32_to_float128()
1233 absA = zSign ? - a : a; in int32_to_float128()
1236 return packFloat128( zSign, 0x402E - shiftCount, zSig0<<shiftCount, 0 ); in int32_to_float128()
1263 flag zSign; in int64_to_float32() local
1268 zSign = ( a < 0 ); in int64_to_float32()
1269 absA = zSign ? - a : a; in int64_to_float32()
1272 return packFloat32( zSign, 0x95 - shiftCount, absA<<shiftCount ); in int64_to_float32()
1282 return roundAndPackFloat32( zSign, 0x9C - shiftCount, absA ); in int64_to_float32()
1296 flag zSign; in int64_to_float64() local
1302 zSign = ( a < 0 ); in int64_to_float64()
1303 return normalizeRoundAndPackFloat64( zSign, 0x43C, zSign ? - a : a ); in int64_to_float64()
1319 flag zSign; in int64_to_floatx80() local
1324 zSign = ( a < 0 ); in int64_to_floatx80()
1325 absA = zSign ? - a : a; in int64_to_floatx80()
1327 return packFloatx80( zSign, 0x403E - shiftCount, absA<<shiftCount ); in int64_to_floatx80()
1346 flag zSign; in int64_to_float128() local
1353 zSign = ( a < 0 ); in int64_to_float128()
1354 absA = zSign ? - a : a; in int64_to_float128()
1367 return packFloat128( zSign, zExp, zSig0, zSig1 ); in int64_to_float128()
1706 static float32 addFloat32Sigs( float32 a, float32 b, flag zSign ) in addFloat32Sigs() argument
1736 return packFloat32( zSign, 0xFF, 0 ); in addFloat32Sigs()
1752 if ( aExp == 0 ) return packFloat32( zSign, 0, ( aSig + bSig )>>6 ); in addFloat32Sigs()
1765 return roundAndPackFloat32( zSign, zExp, zSig ); in addFloat32Sigs()
1778 static float32 subFloat32Sigs( float32 a, float32 b, flag zSign ) in subFloat32Sigs() argument
1808 return packFloat32( zSign ^ 1, 0xFF, 0 ); in subFloat32Sigs()
1821 zSign ^= 1; in subFloat32Sigs()
1841 return normalizeRoundAndPackFloat32( zSign, zExp, zSig ); in subFloat32Sigs()
1898 flag aSign, bSign, zSign; in float32_mul() local
1910 zSign = aSign ^ bSign; in float32_mul()
1919 return packFloat32( zSign, 0xFF, 0 ); in float32_mul()
1927 return packFloat32( zSign, 0xFF, 0 ); in float32_mul()
1930 if ( aSig == 0 ) return packFloat32( zSign, 0, 0 ); in float32_mul()
1934 if ( bSig == 0 ) return packFloat32( zSign, 0, 0 ); in float32_mul()
1946 return roundAndPackFloat32( zSign, zExp, zSig ); in float32_mul()
1959 flag aSign, bSign, zSign; in float32_div() local
1969 zSign = aSign ^ bSign; in float32_div()
1977 return packFloat32( zSign, 0xFF, 0 ); in float32_div()
1981 return packFloat32( zSign, 0, 0 ); in float32_div()
1990 return packFloat32( zSign, 0xFF, 0 ); in float32_div()
1995 if ( aSig == 0 ) return packFloat32( zSign, 0, 0 ); in float32_div()
2009 return roundAndPackFloat32( zSign, zExp, zSig ); in float32_div()
2023 flag aSign, bSign, zSign; in float32_rem() local
2109 zSign = ( (sbits32) aSig < 0 ); in float32_rem()
2110 if ( zSign ) aSig = - aSig; in float32_rem()
2111 return normalizeRoundAndPackFloat32( aSign ^ zSign, bExp, aSig ); in float32_rem()
2672 static float64 addFloat64Sigs( float64 a, float64 b, flag zSign ) in addFloat64Sigs() argument
2702 return packFloat64( zSign, 0x7FF, 0 ); in addFloat64Sigs()
2718 if ( aExp == 0 ) return packFloat64( zSign, 0, ( aSig + bSig )>>9 ); in addFloat64Sigs()
2731 return roundAndPackFloat64( zSign, zExp, zSig ); in addFloat64Sigs()
2744 static float64 subFloat64Sigs( float64 a, float64 b, flag zSign ) in subFloat64Sigs() argument
2774 return packFloat64( zSign ^ 1, 0x7FF, 0 ); in subFloat64Sigs()
2787 zSign ^= 1; in subFloat64Sigs()
2807 return normalizeRoundAndPackFloat64( zSign, zExp, zSig ); in subFloat64Sigs()
2864 flag aSign, bSign, zSign; in float64_mul() local
2874 zSign = aSign ^ bSign; in float64_mul()
2883 return packFloat64( zSign, 0x7FF, 0 ); in float64_mul()
2891 return packFloat64( zSign, 0x7FF, 0 ); in float64_mul()
2894 if ( aSig == 0 ) return packFloat64( zSign, 0, 0 ); in float64_mul()
2898 if ( bSig == 0 ) return packFloat64( zSign, 0, 0 ); in float64_mul()
2910 return roundAndPackFloat64( zSign, zExp, zSig0 ); in float64_mul()
2923 flag aSign, bSign, zSign; in float64_div() local
2935 zSign = aSign ^ bSign; in float64_div()
2943 return packFloat64( zSign, 0x7FF, 0 ); in float64_div()
2947 return packFloat64( zSign, 0, 0 ); in float64_div()
2956 return packFloat64( zSign, 0x7FF, 0 ); in float64_div()
2961 if ( aSig == 0 ) return packFloat64( zSign, 0, 0 ); in float64_div()
2981 return roundAndPackFloat64( zSign, zExp, zSig ); in float64_div()
2995 flag aSign, bSign, zSign; in float64_rem() local
3066 zSign = ( (sbits64) aSig < 0 ); in float64_rem()
3067 if ( zSign ) aSig = - aSig; in float64_rem()
3068 return normalizeRoundAndPackFloat64( aSign ^ zSign, bExp, aSig ); in float64_rem()
3616 static floatx80 addFloatx80Sigs( floatx80 a, floatx80 b, flag zSign ) in addFloatx80Sigs() argument
3639 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in addFloatx80Sigs()
3670 floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 ); in addFloatx80Sigs()
3683 static floatx80 subFloatx80Sigs( floatx80 a, floatx80 b, flag zSign ) in subFloatx80Sigs() argument
3717 return packFloatx80( zSign ^ 1, 0x7FFF, LIT64( 0x8000000000000000 ) ); in subFloatx80Sigs()
3724 zSign ^= 1; in subFloatx80Sigs()
3739 floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 ); in subFloatx80Sigs()
3796 flag aSign, bSign, zSign; in floatx80_mul() local
3807 zSign = aSign ^ bSign; in floatx80_mul()
3814 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in floatx80_mul()
3825 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in floatx80_mul()
3828 if ( aSig == 0 ) return packFloatx80( zSign, 0, 0 ); in floatx80_mul()
3832 if ( bSig == 0 ) return packFloatx80( zSign, 0, 0 ); in floatx80_mul()
3843 floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 ); in floatx80_mul()
3856 flag aSign, bSign, zSign; in floatx80_div() local
3868 zSign = aSign ^ bSign; in floatx80_div()
3875 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in floatx80_div()
3879 return packFloatx80( zSign, 0, 0 ); in floatx80_div()
3891 return packFloatx80( zSign, 0x7FFF, LIT64( 0x8000000000000000 ) ); in floatx80_div()
3896 if ( aSig == 0 ) return packFloatx80( zSign, 0, 0 ); in floatx80_div()
3924 floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 ); in floatx80_div()
3937 flag aSign, bSign, zSign; in floatx80_rem() local
3975 zSign = aSign; in floatx80_rem()
4018 zSign = ! zSign; in floatx80_rem()
4022 80, zSign, bExp + expDiff, aSig0, aSig1 ); in floatx80_rem()
4765 static float128 addFloat128Sigs( float128 a, float128 b, flag zSign ) in addFloat128Sigs() argument
4796 return packFloat128( zSign, 0x7FFF, 0, 0 ); in addFloat128Sigs()
4816 if ( aExp == 0 ) return packFloat128( zSign, 0, zSig0, zSig1 ); in addFloat128Sigs()
4831 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 ); in addFloat128Sigs()
4844 static float128 subFloat128Sigs( float128 a, float128 b, flag zSign ) in subFloat128Sigs() argument
4883 return packFloat128( zSign ^ 1, 0x7FFF, 0, 0 ); in subFloat128Sigs()
4896 zSign ^= 1; in subFloat128Sigs()
4916 return normalizeRoundAndPackFloat128( zSign, zExp - 14, zSig0, zSig1 ); in subFloat128Sigs()
4973 flag aSign, bSign, zSign; in float128_mul() local
4986 zSign = aSign ^ bSign; in float128_mul()
4993 return packFloat128( zSign, 0x7FFF, 0, 0 ); in float128_mul()
5004 return packFloat128( zSign, 0x7FFF, 0, 0 ); in float128_mul()
5007 if ( ( aSig0 | aSig1 ) == 0 ) return packFloat128( zSign, 0, 0, 0 ); in float128_mul()
5011 if ( ( bSig0 | bSig1 ) == 0 ) return packFloat128( zSign, 0, 0, 0 ); in float128_mul()
5025 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 ); in float128_mul()
5038 flag aSign, bSign, zSign; in float128_div() local
5052 zSign = aSign ^ bSign; in float128_div()
5059 return packFloat128( zSign, 0x7FFF, 0, 0 ); in float128_div()
5063 return packFloat128( zSign, 0, 0, 0 ); in float128_div()
5075 return packFloat128( zSign, 0x7FFF, 0, 0 ); in float128_div()
5080 if ( ( aSig0 | aSig1 ) == 0 ) return packFloat128( zSign, 0, 0, 0 ); in float128_div()
5110 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 ); in float128_div()
5123 flag aSign, bSign, zSign; in float128_rem() local
5218 zSign = ( (sbits64) aSig0 < 0 ); in float128_rem()
5219 if ( zSign ) sub128( 0, 0, aSig0, aSig1, &aSig0, &aSig1 ); in float128_rem()
5221 normalizeRoundAndPackFloat128( aSign ^ zSign, bExp - 4, aSig0, aSig1 ); in float128_rem()