Lines Matching refs:bSig

1706     bits32 aSig, bSig, zSig;  in addFloat32Sigs()  local
1711 bSig = extractFloat32Frac( b ); in addFloat32Sigs()
1715 bSig <<= 6; in addFloat32Sigs()
1725 bSig |= 0x20000000; in addFloat32Sigs()
1727 shift32RightJamming( bSig, expDiff, &bSig ); in addFloat32Sigs()
1732 if ( bSig ) return propagateFloat32NaN( a, b ); in addFloat32Sigs()
1746 if ( aSig | bSig ) return propagateFloat32NaN( a, b ); in addFloat32Sigs()
1749 if ( aExp == 0 ) return packFloat32( zSign, 0, ( aSig + bSig )>>6 ); in addFloat32Sigs()
1750 zSig = 0x40000000 + aSig + bSig; in addFloat32Sigs()
1755 zSig = ( aSig + bSig )<<1; in addFloat32Sigs()
1758 zSig = aSig + bSig; in addFloat32Sigs()
1778 bits32 aSig, bSig, zSig; in subFloat32Sigs() local
1783 bSig = extractFloat32Frac( b ); in subFloat32Sigs()
1787 bSig <<= 7; in subFloat32Sigs()
1791 if ( aSig | bSig ) return propagateFloat32NaN( a, b ); in subFloat32Sigs()
1799 if ( bSig < aSig ) goto aBigger; in subFloat32Sigs()
1800 if ( aSig < bSig ) goto bBigger; in subFloat32Sigs()
1804 if ( bSig ) return propagateFloat32NaN( a, b ); in subFloat32Sigs()
1814 bSig |= 0x40000000; in subFloat32Sigs()
1816 zSig = bSig - aSig; in subFloat32Sigs()
1829 bSig |= 0x40000000; in subFloat32Sigs()
1831 shift32RightJamming( bSig, expDiff, &bSig ); in subFloat32Sigs()
1834 zSig = aSig - bSig; in subFloat32Sigs()
1897 bits32 aSig, bSig; in float32_mul() local
1904 bSig = extractFloat32Frac( b ); in float32_mul()
1909 if ( aSig || ( ( bExp == 0xFF ) && bSig ) ) { in float32_mul()
1912 if ( ( bExp | bSig ) == 0 ) { in float32_mul()
1919 if ( bSig ) return propagateFloat32NaN( a, b ); in float32_mul()
1931 if ( bSig == 0 ) return packFloat32( zSign, 0, 0 ); in float32_mul()
1932 normalizeFloat32Subnormal( bSig, &bExp, &bSig ); in float32_mul()
1936 bSig = ( bSig | 0x00800000 )<<8; in float32_mul()
1937 shift64RightJamming( ( (bits64) aSig ) * bSig, 32, &zSig64 ); in float32_mul()
1958 bits32 aSig, bSig, zSig; in float32_div() local
1963 bSig = extractFloat32Frac( b ); in float32_div()
1970 if ( bSig ) return propagateFloat32NaN( a, b ); in float32_div()
1977 if ( bSig ) return propagateFloat32NaN( a, b ); in float32_div()
1981 if ( bSig == 0 ) { in float32_div()
1989 normalizeFloat32Subnormal( bSig, &bExp, &bSig ); in float32_div()
1997 bSig = ( bSig | 0x00800000 )<<8; in float32_div()
1998 if ( bSig <= ( aSig + aSig ) ) { in float32_div()
2002 zSig = ( ( (bits64) aSig )<<32 ) / bSig; in float32_div()
2004 zSig |= ( (bits64) bSig * zSig != ( (bits64) aSig )<<32 ); in float32_div()
2022 bits32 aSig, bSig; in float32_rem() local
2031 bSig = extractFloat32Frac( b ); in float32_rem()
2035 if ( aSig || ( ( bExp == 0xFF ) && bSig ) ) { in float32_rem()
2042 if ( bSig ) return propagateFloat32NaN( a, b ); in float32_rem()
2046 if ( bSig == 0 ) { in float32_rem()
2050 normalizeFloat32Subnormal( bSig, &bExp, &bSig ); in float32_rem()
2058 bSig |= 0x00800000; in float32_rem()
2061 bSig <<= 8; in float32_rem()
2066 q = ( bSig <= aSig ); in float32_rem()
2067 if ( q ) aSig -= bSig; in float32_rem()
2069 q = ( ( (bits64) aSig )<<32 ) / bSig; in float32_rem()
2071 bSig >>= 2; in float32_rem()
2072 aSig = ( ( aSig>>1 )<<( expDiff - 1 ) ) - bSig * q; in float32_rem()
2076 bSig >>= 2; in float32_rem()
2080 if ( bSig <= aSig ) aSig -= bSig; in float32_rem()
2082 bSig64 = ( (bits64) bSig )<<40; in float32_rem()
2087 aSig64 = - ( ( bSig * q64 )<<38 ); in float32_rem()
2094 bSig <<= 6; in float32_rem()
2095 aSig = ( ( aSig64>>33 )<<( expDiff - 1 ) ) - bSig * q; in float32_rem()
2100 aSig -= bSig; in float32_rem()
2672 bits64 aSig, bSig, zSig; in addFloat64Sigs() local
2677 bSig = extractFloat64Frac( b ); in addFloat64Sigs()
2681 bSig <<= 9; in addFloat64Sigs()
2691 bSig |= LIT64( 0x2000000000000000 ); in addFloat64Sigs()
2693 shift64RightJamming( bSig, expDiff, &bSig ); in addFloat64Sigs()
2698 if ( bSig ) return propagateFloat64NaN( a, b ); in addFloat64Sigs()
2712 if ( aSig | bSig ) return propagateFloat64NaN( a, b ); in addFloat64Sigs()
2715 if ( aExp == 0 ) return packFloat64( zSign, 0, ( aSig + bSig )>>9 ); in addFloat64Sigs()
2716 zSig = LIT64( 0x4000000000000000 ) + aSig + bSig; in addFloat64Sigs()
2721 zSig = ( aSig + bSig )<<1; in addFloat64Sigs()
2724 zSig = aSig + bSig; in addFloat64Sigs()
2744 bits64 aSig, bSig, zSig; in subFloat64Sigs() local
2749 bSig = extractFloat64Frac( b ); in subFloat64Sigs()
2753 bSig <<= 10; in subFloat64Sigs()
2757 if ( aSig | bSig ) return propagateFloat64NaN( a, b ); in subFloat64Sigs()
2765 if ( bSig < aSig ) goto aBigger; in subFloat64Sigs()
2766 if ( aSig < bSig ) goto bBigger; in subFloat64Sigs()
2770 if ( bSig ) return propagateFloat64NaN( a, b ); in subFloat64Sigs()
2780 bSig |= LIT64( 0x4000000000000000 ); in subFloat64Sigs()
2782 zSig = bSig - aSig; in subFloat64Sigs()
2795 bSig |= LIT64( 0x4000000000000000 ); in subFloat64Sigs()
2797 shift64RightJamming( bSig, expDiff, &bSig ); in subFloat64Sigs()
2800 zSig = aSig - bSig; in subFloat64Sigs()
2863 bits64 aSig, bSig, zSig0, zSig1; in float64_mul() local
2868 bSig = extractFloat64Frac( b ); in float64_mul()
2873 if ( aSig || ( ( bExp == 0x7FF ) && bSig ) ) { in float64_mul()
2876 if ( ( bExp | bSig ) == 0 ) { in float64_mul()
2883 if ( bSig ) return propagateFloat64NaN( a, b ); in float64_mul()
2895 if ( bSig == 0 ) return packFloat64( zSign, 0, 0 ); in float64_mul()
2896 normalizeFloat64Subnormal( bSig, &bExp, &bSig ); in float64_mul()
2900 bSig = ( bSig | LIT64( 0x0010000000000000 ) )<<11; in float64_mul()
2901 mul64To128( aSig, bSig, &zSig0, &zSig1 ); in float64_mul()
2922 bits64 aSig, bSig, zSig; in float64_div() local
2929 bSig = extractFloat64Frac( b ); in float64_div()
2936 if ( bSig ) return propagateFloat64NaN( a, b ); in float64_div()
2943 if ( bSig ) return propagateFloat64NaN( a, b ); in float64_div()
2947 if ( bSig == 0 ) { in float64_div()
2955 normalizeFloat64Subnormal( bSig, &bExp, &bSig ); in float64_div()
2963 bSig = ( bSig | LIT64( 0x0010000000000000 ) )<<11; in float64_div()
2964 if ( bSig <= ( aSig + aSig ) ) { in float64_div()
2968 zSig = estimateDiv128To64( aSig, 0, bSig ); in float64_div()
2970 mul64To128( bSig, zSig, &term0, &term1 ); in float64_div()
2974 add128( rem0, rem1, 0, bSig, &rem0, &rem1 ); in float64_div()
2994 bits64 aSig, bSig; in float64_rem() local
3001 bSig = extractFloat64Frac( b ); in float64_rem()
3005 if ( aSig || ( ( bExp == 0x7FF ) && bSig ) ) { in float64_rem()
3012 if ( bSig ) return propagateFloat64NaN( a, b ); in float64_rem()
3016 if ( bSig == 0 ) { in float64_rem()
3020 normalizeFloat64Subnormal( bSig, &bExp, &bSig ); in float64_rem()
3028 bSig = ( bSig | LIT64( 0x0010000000000000 ) )<<11; in float64_rem()
3033 q = ( bSig <= aSig ); in float64_rem()
3034 if ( q ) aSig -= bSig; in float64_rem()
3037 q = estimateDiv128To64( aSig, 0, bSig ); in float64_rem()
3039 aSig = - ( ( bSig>>2 ) * q ); in float64_rem()
3044 q = estimateDiv128To64( aSig, 0, bSig ); in float64_rem()
3047 bSig >>= 2; in float64_rem()
3048 aSig = ( ( aSig>>1 )<<( expDiff - 1 ) ) - bSig * q; in float64_rem()
3052 bSig >>= 2; in float64_rem()
3057 aSig -= bSig; in float64_rem()
3616 bits64 aSig, bSig, zSig0, zSig1; in addFloatx80Sigs() local
3621 bSig = extractFloatx80Frac( b ); in addFloatx80Sigs()
3630 shift64ExtraRightJamming( bSig, 0, expDiff, &bSig, &zSig1 ); in addFloatx80Sigs()
3635 if ( (bits64) ( bSig<<1 ) ) return propagateFloatx80NaN( a, b ); in addFloatx80Sigs()
3644 if ( (bits64) ( ( aSig | bSig )<<1 ) ) { in addFloatx80Sigs()
3650 zSig0 = aSig + bSig; in addFloatx80Sigs()
3658 zSig0 = aSig + bSig; in addFloatx80Sigs()
3683 bits64 aSig, bSig, zSig0, zSig1; in subFloatx80Sigs() local
3689 bSig = extractFloatx80Frac( b ); in subFloatx80Sigs()
3695 if ( (bits64) ( ( aSig | bSig )<<1 ) ) { in subFloatx80Sigs()
3708 if ( bSig < aSig ) goto aBigger; in subFloatx80Sigs()
3709 if ( aSig < bSig ) goto bBigger; in subFloatx80Sigs()
3713 if ( (bits64) ( bSig<<1 ) ) return propagateFloatx80NaN( a, b ); in subFloatx80Sigs()
3719 sub128( bSig, 0, aSig, zSig1, &zSig0, &zSig1 ); in subFloatx80Sigs()
3729 shift128RightJamming( bSig, 0, expDiff, &bSig, &zSig1 ); in subFloatx80Sigs()
3731 sub128( aSig, 0, bSig, zSig1, &zSig0, &zSig1 ); in subFloatx80Sigs()
3795 bits64 aSig, bSig, zSig0, zSig1; in floatx80_mul() local
3801 bSig = extractFloatx80Frac( b ); in floatx80_mul()
3807 || ( ( bExp == 0x7FFF ) && (bits64) ( bSig<<1 ) ) ) { in floatx80_mul()
3810 if ( ( bExp | bSig ) == 0 ) goto invalid; in floatx80_mul()
3814 if ( (bits64) ( bSig<<1 ) ) return propagateFloatx80NaN( a, b ); in floatx80_mul()
3829 if ( bSig == 0 ) return packFloatx80( zSign, 0, 0 ); in floatx80_mul()
3830 normalizeFloatx80Subnormal( bSig, &bExp, &bSig ); in floatx80_mul()
3833 mul64To128( aSig, bSig, &zSig0, &zSig1 ); in floatx80_mul()
3855 bits64 aSig, bSig, zSig0, zSig1; in floatx80_div() local
3862 bSig = extractFloatx80Frac( b ); in floatx80_div()
3869 if ( (bits64) ( bSig<<1 ) ) return propagateFloatx80NaN( a, b ); in floatx80_div()
3875 if ( (bits64) ( bSig<<1 ) ) return propagateFloatx80NaN( a, b ); in floatx80_div()
3879 if ( bSig == 0 ) { in floatx80_div()
3890 normalizeFloatx80Subnormal( bSig, &bExp, &bSig ); in floatx80_div()
3898 if ( bSig <= aSig ) { in floatx80_div()
3902 zSig0 = estimateDiv128To64( aSig, rem1, bSig ); in floatx80_div()
3903 mul64To128( bSig, zSig0, &term0, &term1 ); in floatx80_div()
3907 add128( rem0, rem1, 0, bSig, &rem0, &rem1 ); in floatx80_div()
3909 zSig1 = estimateDiv128To64( rem1, 0, bSig ); in floatx80_div()
3911 mul64To128( bSig, zSig1, &term1, &term2 ); in floatx80_div()
3915 add128( rem1, rem2, 0, bSig, &rem1, &rem2 ); in floatx80_div()
3936 bits64 aSig0, aSig1, bSig; in floatx80_rem() local
3943 bSig = extractFloatx80Frac( b ); in floatx80_rem()
3948 || ( ( bExp == 0x7FFF ) && (bits64) ( bSig<<1 ) ) ) { in floatx80_rem()
3954 if ( (bits64) ( bSig<<1 ) ) return propagateFloatx80NaN( a, b ); in floatx80_rem()
3958 if ( bSig == 0 ) { in floatx80_rem()
3965 normalizeFloatx80Subnormal( bSig, &bExp, &bSig ); in floatx80_rem()
3971 bSig |= LIT64( 0x8000000000000000 ); in floatx80_rem()
3980 q = ( bSig <= aSig0 ); in floatx80_rem()
3981 if ( q ) aSig0 -= bSig; in floatx80_rem()
3984 q = estimateDiv128To64( aSig0, aSig1, bSig ); in floatx80_rem()
3986 mul64To128( bSig, q, &term0, &term1 ); in floatx80_rem()
3993 q = estimateDiv128To64( aSig0, aSig1, bSig ); in floatx80_rem()
3996 mul64To128( bSig, q<<( 64 - expDiff ), &term0, &term1 ); in floatx80_rem()
3998 shortShift128Left( 0, bSig, 64 - expDiff, &term0, &term1 ); in floatx80_rem()
4006 term0 = bSig; in floatx80_rem()