Lines Matching refs:zSig1

574 | and extended significand formed by the concatenation of `zSig0' and `zSig1',
598 int8 roundingPrecision, flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1
619 zSig0 |= ( zSig1 != 0 );
676 increment = ( (sbits64) zSig1 < 0 );
683 increment = ( roundingMode == float_round_down ) && zSig1;
686 increment = ( roundingMode == float_round_up ) && zSig1;
714 shift64ExtraRightJamming( zSig0, zSig1, 1 - zExp, &zSig0, &zSig1 );
716 if ( isTiny && zSig1 ) float_raise( float_flag_underflow STATUS_VAR);
717 if ( zSig1 ) STATUS(float_exception_flags) |= float_flag_inexact;
719 increment = ( (sbits64) zSig1 < 0 );
723 increment = ( roundingMode == float_round_down ) && zSig1;
726 increment = ( roundingMode == float_round_up ) && zSig1;
732 ~ ( ( (bits64) ( zSig1<<1 ) == 0 ) & roundNearestEven );
738 if ( zSig1 ) STATUS(float_exception_flags) |= float_flag_inexact;
746 zSig0 &= ~ ( ( (bits64) ( zSig1<<1 ) == 0 ) & roundNearestEven );
758 | `zExp', and significand formed by the concatenation of `zSig0' and `zSig1',
767 int8 roundingPrecision, flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1
773 zSig0 = zSig1;
774 zSig1 = 0;
778 shortShift128Left( zSig0, zSig1, shiftCount, &zSig0, &zSig1 );
781 roundAndPackFloatx80( roundingPrecision, zSign, zExp, zSig0, zSig1 STATUS_VAR);
879 | by the concatenation of `zSig0' and `zSig1' into a quadruple-precision
886 | whenever `zSig0' and `zSig1' concatenated form a complete, normalized
891 packFloat128( flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 )
895 z.low = zSig1;
903 | and extended significand formed by the concatenation of `zSig0', `zSig1',
924 flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1, bits64 zSig2 STATUS_PARAM)
952 zSig1
980 zSig1,
985 zSig0, zSig1, zSig2, - zExp, &zSig0, &zSig1, &zSig2 );
1003 add128( zSig0, zSig1, 0, 1, &zSig0, &zSig1 );
1004 zSig1 &= ~ ( ( zSig2 + zSig2 == 0 ) & roundNearestEven );
1007 if ( ( zSig0 | zSig1 ) == 0 ) zExp = 0;
1009 return packFloat128( zSign, zExp, zSig0, zSig1 );
1015 | and significand formed by the concatenation of `zSig0' and `zSig1', and
1025 flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 STATUS_PARAM)
1031 zSig0 = zSig1;
1032 zSig1 = 0;
1038 shortShift128Left( zSig0, zSig1, shiftCount, &zSig0, &zSig1 );
1042 zSig0, zSig1, 0, - shiftCount, &zSig0, &zSig1, &zSig2 );
1045 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 STATUS_VAR);
1261 bits64 zSig0, zSig1;
1269 zSig1 = 0;
1274 zSig1 = absA;
1277 shortShift128Left( zSig0, zSig1, shiftCount, &zSig0, &zSig1 );
1278 return packFloat128( zSign, zExp, zSig0, zSig1 );
2723 bits64 aSig, zSig0, zSig1;
2737 shift128Right( aSig, 0, 4, &zSig0, &zSig1 );
2738 return packFloat128( aSign, aExp + 0x3C00, zSig0, zSig1 );
3017 bits64 aSig, bSig, zSig0, zSig1;
3055 mul64To128( aSig, bSig, &zSig0, &zSig1 );
3056 zSig0 |= ( zSig1 != 0 );
3701 bits64 aSig, zSig0, zSig1;
3709 shift128Right( aSig<<1, 0, 16, &zSig0, &zSig1 );
3710 return packFloat128( aSign, aExp, zSig0, zSig1 );
3800 bits64 aSig, bSig, zSig0, zSig1;
3814 shift64ExtraRightJamming( bSig, 0, expDiff, &bSig, &zSig1 );
3823 shift64ExtraRightJamming( aSig, 0, - expDiff, &aSig, &zSig1 );
3833 zSig1 = 0;
3845 shift64ExtraRightJamming( zSig0, zSig1, 1, &zSig0, &zSig1 );
3851 STATUS(floatx80_rounding_precision), zSign, zExp, zSig0, zSig1 STATUS_VAR );
3866 bits64 aSig, bSig, zSig0, zSig1;
3890 zSig1 = 0;
3900 shift128RightJamming( aSig, 0, - expDiff, &aSig, &zSig1 );
3902 sub128( bSig, 0, aSig, zSig1, &zSig0, &zSig1 );
3912 shift128RightJamming( bSig, 0, expDiff, &bSig, &zSig1 );
3914 sub128( aSig, 0, bSig, zSig1, &zSig0, &zSig1 );
3919 STATUS(floatx80_rounding_precision), zSign, zExp, zSig0, zSig1 STATUS_VAR );
3975 bits64 aSig, bSig, zSig0, zSig1;
4013 mul64To128( aSig, bSig, &zSig0, &zSig1 );
4015 shortShift128Left( zSig0, zSig1, 1, &zSig0, &zSig1 );
4020 STATUS(floatx80_rounding_precision), zSign, zExp, zSig0, zSig1 STATUS_VAR );
4034 bits64 aSig, bSig, zSig0, zSig1;
4088 zSig1 = estimateDiv128To64( rem1, 0, bSig );
4089 if ( (bits64) ( zSig1<<1 ) <= 8 ) {
4090 mul64To128( bSig, zSig1, &term1, &term2 );
4093 --zSig1;
4096 zSig1 |= ( ( rem1 | rem2 ) != 0 );
4100 STATUS(floatx80_rounding_precision), zSign, zExp, zSig0, zSig1 STATUS_VAR );
4210 bits64 aSig0, aSig1, zSig0, zSig1, doubleZSig0;
4246 zSig1 = estimateDiv128To64( rem1, 0, doubleZSig0 );
4247 if ( ( zSig1 & LIT64( 0x3FFFFFFFFFFFFFFF ) ) <= 5 ) {
4248 if ( zSig1 == 0 ) zSig1 = 1;
4249 mul64To128( doubleZSig0, zSig1, &term1, &term2 );
4251 mul64To128( zSig1, zSig1, &term2, &term3 );
4254 --zSig1;
4255 shortShift128Left( 0, zSig1, 1, &term2, &term3 );
4260 zSig1 |= ( ( rem1 | rem2 | rem3 ) != 0 );
4262 shortShift128Left( 0, zSig1, 1, &zSig0, &zSig1 );
4266 STATUS(floatx80_rounding_precision), 0, zExp, zSig0, zSig1 STATUS_VAR );
4871 bits64 aSig0, aSig1, bSig0, bSig1, zSig0, zSig1, zSig2;
4918 add128( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1 );
4921 return packFloat128( zSign, 0, zSig0, zSig1 );
4929 add128( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1 );
4935 zSig0, zSig1, zSig2, 1, &zSig0, &zSig1, &zSig2 );
4937 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 STATUS_VAR );
4952 bits64 aSig0, aSig1, bSig0, bSig1, zSig0, zSig1;
4999 sub128( bSig0, bSig1, aSig0, aSig1, &zSig0, &zSig1 );
5017 sub128( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1 );
5021 return normalizeRoundAndPackFloat128( zSign, zExp - 14, zSig0, zSig1 STATUS_VAR );
5077 bits64 aSig0, aSig1, bSig0, bSig1, zSig0, zSig1, zSig2, zSig3;
5119 mul128To256( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1, &zSig2, &zSig3 );
5120 add128( zSig0, zSig1, aSig0, aSig1, &zSig0, &zSig1 );
5124 zSig0, zSig1, zSig2, 1, &zSig0, &zSig1, &zSig2 );
5127 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 STATUS_VAR );
5141 bits64 aSig0, aSig1, bSig0, bSig1, zSig0, zSig1, zSig2;
5200 zSig1 = estimateDiv128To64( rem1, rem2, bSig0 );
5201 if ( ( zSig1 & 0x3FFF ) <= 4 ) {
5202 mul128By64To192( bSig0, bSig1, zSig1, &term1, &term2, &term3 );
5205 --zSig1;
5208 zSig1 |= ( ( rem1 | rem2 | rem3 ) != 0 );
5210 shift128ExtraRightJamming( zSig0, zSig1, 0, 15, &zSig0, &zSig1, &zSig2 );
5211 return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 STATUS_VAR );
5334 bits64 aSig0, aSig1, zSig0, zSig1, zSig2, doubleZSig0;
5372 zSig1 = estimateDiv128To64( rem1, 0, doubleZSig0 );
5373 if ( ( zSig1 & 0x1FFF ) <= 5 ) {
5374 if ( zSig1 == 0 ) zSig1 = 1;
5375 mul64To128( doubleZSig0, zSig1, &term1, &term2 );
5377 mul64To128( zSig1, zSig1, &term2, &term3 );
5380 --zSig1;
5381 shortShift128Left( 0, zSig1, 1, &term2, &term3 );
5386 zSig1 |= ( ( rem1 | rem2 | rem3 ) != 0 );
5388 shift128ExtraRightJamming( zSig0, zSig1, 0, 14, &zSig0, &zSig1, &zSig2 );
5389 return roundAndPackFloat128( 0, zExp, zSig0, zSig1, zSig2 STATUS_VAR );