zSig0 664 lib/libkern/softfloat.c int8 roundingPrecision, flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1
zSig0 685 lib/libkern/softfloat.c zSig0 |= ( zSig1 != 0 );
zSig0 700 lib/libkern/softfloat.c roundBits = zSig0 & roundMask;
zSig0 703 lib/libkern/softfloat.c || ( ( zExp == 0x7FFE ) && ( zSig0 + roundIncrement < zSig0 ) )
zSig0 711 lib/libkern/softfloat.c || ( zSig0 <= zSig0 + roundIncrement );
zSig0 712 lib/libkern/softfloat.c shift64RightJamming( zSig0, 1 - zExp, &zSig0 );
zSig0 714 lib/libkern/softfloat.c roundBits = zSig0 & roundMask;
zSig0 717 lib/libkern/softfloat.c zSig0 += roundIncrement;
zSig0 718 lib/libkern/softfloat.c if ( (sbits64) zSig0 < 0 ) zExp = 1;
zSig0 723 lib/libkern/softfloat.c zSig0 &= ~ roundMask;
zSig0 724 lib/libkern/softfloat.c return packFloatx80( zSign, zExp, zSig0 );
zSig0 728 lib/libkern/softfloat.c zSig0 += roundIncrement;
zSig0 729 lib/libkern/softfloat.c if ( zSig0 < roundIncrement ) {
zSig0 731 lib/libkern/softfloat.c zSig0 = LIT64( 0x8000000000000000 );
zSig0 737 lib/libkern/softfloat.c zSig0 &= ~ roundMask;
zSig0 738 lib/libkern/softfloat.c if ( zSig0 == 0 ) zExp = 0;
zSig0 739 lib/libkern/softfloat.c return packFloatx80( zSign, zExp, zSig0 );
zSig0 758 lib/libkern/softfloat.c && ( zSig0 == LIT64( 0xFFFFFFFFFFFFFFFF ) )
zSig0 778 lib/libkern/softfloat.c || ( zSig0 < LIT64( 0xFFFFFFFFFFFFFFFF ) );
zSig0 779 lib/libkern/softfloat.c shift64ExtraRightJamming( zSig0, zSig1, 1 - zExp, &zSig0, &zSig1 );
zSig0 795 lib/libkern/softfloat.c ++zSig0;
zSig0 796 lib/libkern/softfloat.c zSig0 &=
zSig0 798 lib/libkern/softfloat.c if ( (sbits64) zSig0 < 0 ) zExp = 1;
zSig0 800 lib/libkern/softfloat.c return packFloatx80( zSign, zExp, zSig0 );
zSig0 805 lib/libkern/softfloat.c ++zSig0;
zSig0 806 lib/libkern/softfloat.c if ( zSig0 == 0 ) {
zSig0 808 lib/libkern/softfloat.c zSig0 = LIT64( 0x8000000000000000 );
zSig0 811 lib/libkern/softfloat.c zSig0 &= ~ ( ( (bits64) ( zSig1<<1 ) == 0 ) & roundNearestEven );
zSig0 815 lib/libkern/softfloat.c if ( zSig0 == 0 ) zExp = 0;
zSig0 817 lib/libkern/softfloat.c return packFloatx80( zSign, zExp, zSig0 );
zSig0 833 lib/libkern/softfloat.c int8 roundingPrecision, flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1
zSig0 838 lib/libkern/softfloat.c if ( zSig0 == 0 ) {
zSig0 839 lib/libkern/softfloat.c zSig0 = zSig1;
zSig0 843 lib/libkern/softfloat.c shiftCount = countLeadingZeros64( zSig0 );
zSig0 844 lib/libkern/softfloat.c shortShift128Left( zSig0, zSig1, shiftCount, &zSig0, &zSig1 );
zSig0 847 lib/libkern/softfloat.c roundAndPackFloatx80( roundingPrecision, zSign, zExp, zSig0, zSig1 );
zSig0 963 lib/libkern/softfloat.c packFloat128( flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 )
zSig0 968 lib/libkern/softfloat.c z.high = ( ( (bits64) zSign )<<63 ) + ( ( (bits64) zExp )<<48 ) + zSig0;
zSig0 997 lib/libkern/softfloat.c flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1, bits64 zSig2 )
zSig0 1024 lib/libkern/softfloat.c zSig0,
zSig0 1051 lib/libkern/softfloat.c zSig0,
zSig0 1057 lib/libkern/softfloat.c zSig0, zSig1, zSig2, - zExp, &zSig0, &zSig1, &zSig2 );
zSig0 1075 lib/libkern/softfloat.c add128( zSig0, zSig1, 0, 1, &zSig0, &zSig1 );
zSig0 1079 lib/libkern/softfloat.c if ( ( zSig0 | zSig1 ) == 0 ) zExp = 0;
zSig0 1081 lib/libkern/softfloat.c return packFloat128( zSign, zExp, zSig0, zSig1 );
zSig0 1098 lib/libkern/softfloat.c flag zSign, int32 zExp, bits64 zSig0, bits64 zSig1 )
zSig0 1103 lib/libkern/softfloat.c if ( zSig0 == 0 ) {
zSig0 1104 lib/libkern/softfloat.c zSig0 = zSig1;
zSig0 1108 lib/libkern/softfloat.c shiftCount = countLeadingZeros64( zSig0 ) - 15;
zSig0 1111 lib/libkern/softfloat.c shortShift128Left( zSig0, zSig1, shiftCount, &zSig0, &zSig1 );
zSig0 1115 lib/libkern/softfloat.c zSig0, zSig1, 0, - shiftCount, &zSig0, &zSig1, &zSig2 );
zSig0 1118 lib/libkern/softfloat.c return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 );
zSig0 1207 lib/libkern/softfloat.c bits64 zSig0;
zSig0 1213 lib/libkern/softfloat.c zSig0 = absA;
zSig0 1214 lib/libkern/softfloat.c return packFloat128( zSign, 0x402E - shiftCount, zSig0<<shiftCount, 0 );
zSig0 1315 lib/libkern/softfloat.c bits64 zSig0, zSig1;
zSig0 1324 lib/libkern/softfloat.c zSig0 = absA;
zSig0 1329 lib/libkern/softfloat.c zSig0 = 0;
zSig0 1331 lib/libkern/softfloat.c shortShift128Left( zSig0, zSig1, shiftCount, &zSig0, &zSig1 );
zSig0 1332 lib/libkern/softfloat.c return packFloat128( zSign, zExp, zSig0, zSig1 );
zSig0 2541 lib/libkern/softfloat.c bits64 aSig, zSig0, zSig1;
zSig0 2555 lib/libkern/softfloat.c shift128Right( aSig, 0, 4, &zSig0, &zSig1 );
zSig0 2556 lib/libkern/softfloat.c return packFloat128( aSign, aExp + 0x3C00, zSig0, zSig1 );
zSig0 2828 lib/libkern/softfloat.c bits64 aSig, bSig, zSig0, zSig1;
zSig0 2866 lib/libkern/softfloat.c mul64To128( aSig, bSig, &zSig0, &zSig1 );
zSig0 2867 lib/libkern/softfloat.c zSig0 |= ( zSig1 != 0 );
zSig0 2868 lib/libkern/softfloat.c if ( 0 <= (sbits64) ( zSig0<<1 ) ) {
zSig0 2869 lib/libkern/softfloat.c zSig0 <<= 1;
zSig0 2872 lib/libkern/softfloat.c return roundAndPackFloat64( zSign, zExp, zSig0 );
zSig0 3478 lib/libkern/softfloat.c bits64 aSig, zSig0, zSig1;
zSig0 3486 lib/libkern/softfloat.c shift128Right( aSig<<1, 0, 16, &zSig0, &zSig1 );
zSig0 3487 lib/libkern/softfloat.c return packFloat128( aSign, aExp, zSig0, zSig1 );
zSig0 3579 lib/libkern/softfloat.c bits64 aSig, bSig, zSig0, zSig1;
zSig0 3613 lib/libkern/softfloat.c zSig0 = aSig + bSig;
zSig0 3615 lib/libkern/softfloat.c normalizeFloatx80Subnormal( zSig0, &zExp, &zSig0 );
zSig0 3621 lib/libkern/softfloat.c zSig0 = aSig + bSig;
zSig0 3622 lib/libkern/softfloat.c if ( (sbits64) zSig0 < 0 ) goto roundAndPack;
zSig0 3624 lib/libkern/softfloat.c shift64ExtraRightJamming( zSig0, zSig1, 1, &zSig0, &zSig1 );
zSig0 3625 lib/libkern/softfloat.c zSig0 |= LIT64( 0x8000000000000000 );
zSig0 3630 lib/libkern/softfloat.c floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 );
zSig0 3646 lib/libkern/softfloat.c bits64 aSig, bSig, zSig0, zSig1;
zSig0 3682 lib/libkern/softfloat.c sub128( bSig, 0, aSig, zSig1, &zSig0, &zSig1 );
zSig0 3694 lib/libkern/softfloat.c sub128( aSig, 0, bSig, zSig1, &zSig0, &zSig1 );
zSig0 3699 lib/libkern/softfloat.c floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 );
zSig0 3758 lib/libkern/softfloat.c bits64 aSig, bSig, zSig0, zSig1;
zSig0 3796 lib/libkern/softfloat.c mul64To128( aSig, bSig, &zSig0, &zSig1 );
zSig0 3797 lib/libkern/softfloat.c if ( 0 < (sbits64) zSig0 ) {
zSig0 3798 lib/libkern/softfloat.c shortShift128Left( zSig0, zSig1, 1, &zSig0, &zSig1 );
zSig0 3803 lib/libkern/softfloat.c floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 );
zSig0 3818 lib/libkern/softfloat.c bits64 aSig, bSig, zSig0, zSig1;
zSig0 3865 lib/libkern/softfloat.c zSig0 = estimateDiv128To64( aSig, rem1, bSig );
zSig0 3866 lib/libkern/softfloat.c mul64To128( bSig, zSig0, &term0, &term1 );
zSig0 3869 lib/libkern/softfloat.c --zSig0;
zSig0 3884 lib/libkern/softfloat.c floatx80_rounding_precision, zSign, zExp, zSig0, zSig1 );
zSig0 3997 lib/libkern/softfloat.c bits64 aSig0, aSig1, zSig0, zSig1, doubleZSig0;
zSig0 4022 lib/libkern/softfloat.c zSig0 = estimateSqrt32( aExp, aSig0>>32 );
zSig0 4024 lib/libkern/softfloat.c zSig0 = estimateDiv128To64( aSig0, aSig1, zSig0<<32 ) + ( zSig0<<30 );
zSig0 4025 lib/libkern/softfloat.c doubleZSig0 = zSig0<<1;
zSig0 4026 lib/libkern/softfloat.c mul64To128( zSig0, zSig0, &term0, &term1 );
zSig0 4029 lib/libkern/softfloat.c --zSig0;
zSig0 4031 lib/libkern/softfloat.c add128( rem0, rem1, zSig0>>63, doubleZSig0 | 1, &rem0, &rem1 );
zSig0 4049 lib/libkern/softfloat.c shortShift128Left( 0, zSig1, 1, &zSig0, &zSig1 );
zSig0 4050 lib/libkern/softfloat.c zSig0 |= doubleZSig0;
zSig0 4053 lib/libkern/softfloat.c floatx80_rounding_precision, 0, zExp, zSig0, zSig1 );
zSig0 4673 lib/libkern/softfloat.c bits64 aSig0, aSig1, bSig0, bSig1, zSig0, zSig1, zSig2;
zSig0 4720 lib/libkern/softfloat.c add128( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1 );
zSig0 4721 lib/libkern/softfloat.c if ( aExp == 0 ) return packFloat128( zSign, 0, zSig0, zSig1 );
zSig0 4723 lib/libkern/softfloat.c zSig0 |= LIT64( 0x0002000000000000 );
zSig0 4728 lib/libkern/softfloat.c add128( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1 );
zSig0 4730 lib/libkern/softfloat.c if ( zSig0 < LIT64( 0x0002000000000000 ) ) goto roundAndPack;
zSig0 4734 lib/libkern/softfloat.c zSig0, zSig1, zSig2, 1, &zSig0, &zSig1, &zSig2 );
zSig0 4736 lib/libkern/softfloat.c return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 );
zSig0 4752 lib/libkern/softfloat.c bits64 aSig0, aSig1, bSig0, bSig1, zSig0, zSig1;
zSig0 4799 lib/libkern/softfloat.c sub128( bSig0, bSig1, aSig0, aSig1, &zSig0, &zSig1 );
zSig0 4817 lib/libkern/softfloat.c sub128( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1 );
zSig0 4821 lib/libkern/softfloat.c return normalizeRoundAndPackFloat128( zSign, zExp - 14, zSig0, zSig1 );
zSig0 4880 lib/libkern/softfloat.c bits64 aSig0, aSig1, bSig0, bSig1, zSig0, zSig1, zSig2, zSig3;
zSig0 4922 lib/libkern/softfloat.c mul128To256( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1, &zSig2, &zSig3 );
zSig0 4923 lib/libkern/softfloat.c add128( zSig0, zSig1, aSig0, aSig1, &zSig0, &zSig1 );
zSig0 4925 lib/libkern/softfloat.c if ( LIT64( 0x0002000000000000 ) <= zSig0 ) {
zSig0 4927 lib/libkern/softfloat.c zSig0, zSig1, zSig2, 1, &zSig0, &zSig1, &zSig2 );
zSig0 4930 lib/libkern/softfloat.c return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 );
zSig0 4945 lib/libkern/softfloat.c bits64 aSig0, aSig1, bSig0, bSig1, zSig0, zSig1, zSig2;
zSig0 4997 lib/libkern/softfloat.c zSig0 = estimateDiv128To64( aSig0, aSig1, bSig0 );
zSig0 4998 lib/libkern/softfloat.c mul128By64To192( bSig0, bSig1, zSig0, &term0, &term1, &term2 );
zSig0 5001 lib/libkern/softfloat.c --zSig0;
zSig0 5014 lib/libkern/softfloat.c shift128ExtraRightJamming( zSig0, zSig1, 0, 15, &zSig0, &zSig1, &zSig2 );
zSig0 5015 lib/libkern/softfloat.c return roundAndPackFloat128( zSign, zExp, zSig0, zSig1, zSig2 );
zSig0 5141 lib/libkern/softfloat.c bits64 aSig0, aSig1, zSig0, zSig1, zSig2, doubleZSig0;
zSig0 5168 lib/libkern/softfloat.c zSig0 = estimateSqrt32( aExp, aSig0>>17 );
zSig0 5170 lib/libkern/softfloat.c zSig0 = estimateDiv128To64( aSig0, aSig1, zSig0<<32 ) + ( zSig0<<30 );
zSig0 5171 lib/libkern/softfloat.c doubleZSig0 = zSig0<<1;
zSig0 5172 lib/libkern/softfloat.c mul64To128( zSig0, zSig0, &term0, &term1 );
zSig0 5175 lib/libkern/softfloat.c --zSig0;
zSig0 5177 lib/libkern/softfloat.c add128( rem0, rem1, zSig0>>63, doubleZSig0 | 1, &rem0, &rem1 );
zSig0 5195 lib/libkern/softfloat.c shift128ExtraRightJamming( zSig0, zSig1, 0, 14, &zSig0, &zSig1, &zSig2 );
zSig0 5196 lib/libkern/softfloat.c return roundAndPackFloat128( 0, zExp, zSig0, zSig1, zSig2 );