Lines Matching full:asig1
908 | `aSig0' and `aSig1'. The normalized exponent is stored at the location
918 uint64_t aSig1,
927 shiftCount = countLeadingZeros64( aSig1 ) - 15;
929 *zSig0Ptr = aSig1>>( - shiftCount );
930 *zSig1Ptr = aSig1<<( shiftCount & 63 );
933 *zSig0Ptr = aSig1<<shiftCount;
940 shortShift128Left( aSig0, aSig1, shiftCount, zSig0Ptr, zSig1Ptr );
3565 uint64_t aSig, aSig0, aSig1, zSig, i;
3590 mul64To128( aSig, aSig, &aSig0, &aSig1 );
3591 aSig = ( aSig0 << 12 ) | ( aSig1 >> 52 );
4459 uint64_t aSig0, aSig1, bSig;
4496 aSig1 = 0;
4499 shift128Right( aSig0, 0, 1, &aSig0, &aSig1 );
4506 q = estimateDiv128To64( aSig0, aSig1, bSig );
4509 sub128( aSig0, aSig1, term0, term1, &aSig0, &aSig1 );
4510 shortShift128Left( aSig0, aSig1, 62, &aSig0, &aSig1 );
4515 q = estimateDiv128To64( aSig0, aSig1, bSig );
4519 sub128( aSig0, aSig1, term0, term1, &aSig0, &aSig1 );
4521 while ( le128( term0, term1, aSig0, aSig1 ) ) {
4523 sub128( aSig0, aSig1, term0, term1, &aSig0, &aSig1 );
4530 sub128( term0, term1, aSig0, aSig1, &alternateASig0, &alternateASig1 );
4531 if ( lt128( alternateASig0, alternateASig1, aSig0, aSig1 )
4532 || ( eq128( alternateASig0, alternateASig1, aSig0, aSig1 )
4536 aSig1 = alternateASig1;
4541 80, zSign, bExp + expDiff, aSig0, aSig1 STATUS_VAR );
4555 uint64_t aSig0, aSig1, zSig0, zSig1, doubleZSig0;
4581 shift128Right( aSig0, 0, 2 + ( aExp & 1 ), &aSig0, &aSig1 );
4582 zSig0 = estimateDiv128To64( aSig0, aSig1, zSig0<<32 ) + ( zSig0<<30 );
4585 sub128( aSig0, aSig1, term0, term1, &rem0, &rem1 );
4870 uint64_t aSig0, aSig1;
4872 aSig1 = extractFloat128Frac1( a );
4876 if ( ( aExp == 0x7FFF ) && ( aSig0 | aSig1 ) ) aSign = 0;
4878 aSig0 |= ( aSig1 != 0 );
4899 uint64_t aSig0, aSig1, savedASig;
4902 aSig1 = extractFloat128Frac1( a );
4906 aSig0 |= ( aSig1 != 0 );
4947 uint64_t aSig0, aSig1;
4949 aSig1 = extractFloat128Frac1( a );
4960 && ( aSig1 || ( aSig0 != LIT64( 0x0001000000000000 ) ) )
4967 shortShift128Left( aSig0, aSig1, - shiftCount, &aSig0, &aSig1 );
4970 shift64ExtraRightJamming( aSig0, aSig1, shiftCount, &aSig0, &aSig1 );
4972 return roundAndPackInt64( aSign, aSig0, aSig1 STATUS_VAR );
4990 aSig1;
4993 aSig1 = extractFloat128Frac1( a );
5003 && ( aSig1 < LIT64( 0x0002000000000000 ) ) ) {
5004 if ( aSig1 ) STATUS(float_exception_flags) |= float_flag_inexact;
5008 if ( ! aSign || ( ( aExp == 0x7FFF ) && ( aSig0 | aSig1 ) ) ) {
5014 z = ( aSig0<<shiftCount ) | ( aSig1>>( ( - shiftCount ) & 63 ) );
5015 if ( (uint64_t) ( aSig1<<shiftCount ) ) {
5021 if ( aExp | aSig0 | aSig1 ) {
5027 if ( aSig1
5048 uint64_t aSig0, aSig1;
5051 aSig1 = extractFloat128Frac1( a );
5056 if ( aSig0 | aSig1 ) {
5061 aSig0 |= ( aSig1 != 0 );
5083 uint64_t aSig0, aSig1;
5085 aSig1 = extractFloat128Frac1( a );
5090 if ( aSig0 | aSig1 ) {
5095 shortShift128Left( aSig0, aSig1, 14, &aSig0, &aSig1 );
5096 aSig0 |= ( aSig1 != 0 );
5118 uint64_t aSig0, aSig1;
5120 aSig1 = extractFloat128Frac1( a );
5125 if ( aSig0 | aSig1 ) {
5131 if ( ( aSig0 | aSig1 ) == 0 ) return packFloatx80( aSign, 0, 0 );
5132 normalizeFloat128Subnormal( aSig0, aSig1, &aExp, &aSig0, &aSig1 );
5137 shortShift128Left( aSig0, aSig1, 15, &aSig0, &aSig1 );
5138 return roundAndPackFloatx80( 80, aSign, aExp, aSig0, aSig1 STATUS_VAR );
5258 uint64_t aSig0, aSig1, bSig0, bSig1, zSig0, zSig1, zSig2;
5261 aSig1 = extractFloat128Frac1( a );
5270 if ( aSig0 | aSig1 ) return propagateFloat128NaN( a, b STATUS_VAR );
5295 aSig0, aSig1, 0, - expDiff, &aSig0, &aSig1, &zSig2 );
5300 if ( aSig0 | aSig1 | bSig0 | bSig1 ) {
5305 add128( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1 );
5321 add128( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1 );
5344 uint64_t aSig0, aSig1, bSig0, bSig1, zSig0, zSig1;
5348 aSig1 = extractFloat128Frac1( a );
5355 shortShift128Left( aSig0, aSig1, 14, &aSig0, &aSig1 );
5360 if ( aSig0 | aSig1 | bSig0 | bSig1 ) {
5374 if ( bSig1 < aSig1 ) goto aBigger;
5375 if ( aSig1 < bSig1 ) goto bBigger;
5388 shift128RightJamming( aSig0, aSig1, - expDiff, &aSig0, &aSig1 );
5391 sub128( bSig0, bSig1, aSig0, aSig1, &zSig0, &zSig1 );
5397 if ( aSig0 | aSig1 ) return propagateFloat128NaN( a, b STATUS_VAR );
5409 sub128( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1 );
5469 uint64_t aSig0, aSig1, bSig0, bSig1, zSig0, zSig1, zSig2, zSig3;
5472 aSig1 = extractFloat128Frac1( a );
5482 if ( ( aSig0 | aSig1 )
5491 if ( ( aExp | aSig0 | aSig1 ) == 0 ) {
5501 if ( ( aSig0 | aSig1 ) == 0 ) return packFloat128( zSign, 0, 0, 0 );
5502 normalizeFloat128Subnormal( aSig0, aSig1, &aExp, &aSig0, &aSig1 );
5511 mul128To256( aSig0, aSig1, bSig0, bSig1, &zSig0, &zSig1, &zSig2, &zSig3 );
5512 add128( zSig0, zSig1, aSig0, aSig1, &zSig0, &zSig1 );
5533 uint64_t aSig0, aSig1, bSig0, bSig1, zSig0, zSig1, zSig2;
5537 aSig1 = extractFloat128Frac1( a );
5547 if ( aSig0 | aSig1 ) return propagateFloat128NaN( a, b STATUS_VAR );
5560 if ( ( aExp | aSig0 | aSig1 ) == 0 ) {
5573 if ( ( aSig0 | aSig1 ) == 0 ) return packFloat128( zSign, 0, 0, 0 );
5574 normalizeFloat128Subnormal( aSig0, aSig1, &aExp, &aSig0, &aSig1 );
5578 aSig0 | LIT64( 0x0001000000000000 ), aSig1, 15, &aSig0, &aSig1 );
5581 if ( le128( bSig0, bSig1, aSig0, aSig1 ) ) {
5582 shift128Right( aSig0, aSig1, 1, &aSig0, &aSig1 );
5585 zSig0 = estimateDiv128To64( aSig0, aSig1, bSig0 );
5587 sub192( aSig0, aSig1, 0, term0, term1, term2, &rem0, &rem1, &rem2 );
5617 uint64_t aSig0, aSig1, bSig0, bSig1, q, term0, term1, term2;
5622 aSig1 = extractFloat128Frac1( a );
5630 if ( ( aSig0 | aSig1 )
5651 if ( ( aSig0 | aSig1 ) == 0 ) return a;
5652 normalizeFloat128Subnormal( aSig0, aSig1, &aExp, &aSig0, &aSig1 );
5658 aSig1,
5661 &aSig1
5665 q = le128( bSig0, bSig1, aSig0, aSig1 );
5666 if ( q ) sub128( aSig0, aSig1, bSig0, bSig1, &aSig0, &aSig1 );
5669 q = estimateDiv128To64( aSig0, aSig1, bSig0 );
5673 shortShift128Left( aSig0, aSig1, 61, &aSig0, &allZero );
5674 sub128( aSig0, 0, term1, term2, &aSig0, &aSig1 );
5678 q = estimateDiv128To64( aSig0, aSig1, bSig0 );
5684 shift128Right( aSig0, aSig1, - expDiff, &aSig0, &aSig1 );
5687 shortShift128Left( aSig0, aSig1, expDiff, &aSig0, &aSig1 );
5690 sub128( aSig0, aSig1, term1, term2, &aSig0, &aSig1 );
5693 shift128Right( aSig0, aSig1, 12, &aSig0, &aSig1 );
5698 alternateASig1 = aSig1;
5700 sub128( aSig0, aSig1, bSig0, bSig1, &aSig0, &aSig1 );
5703 aSig0, aSig1, alternateASig0, alternateASig1, (uint64_t *)&sigMean0, &sigMean1 );
5707 aSig1 = alternateASig1;
5710 if ( zSign ) sub128( 0, 0, aSig0, aSig1, &aSig0, &aSig1 );
5712 normalizeRoundAndPackFloat128( aSign ^ zSign, bExp - 4, aSig0, aSig1 STATUS_VAR );
5726 uint64_t aSig0, aSig1, zSig0, zSig1, zSig2, doubleZSig0;
5730 aSig1 = extractFloat128Frac1( a );
5735 if ( aSig0 | aSig1 ) return propagateFloat128NaN( a, a STATUS_VAR );
5740 if ( ( aExp | aSig0 | aSig1 ) == 0 ) return a;
5748 if ( ( aSig0 | aSig1 ) == 0 ) return packFloat128( 0, 0, 0, 0 );
5749 normalizeFloat128Subnormal( aSig0, aSig1, &aExp, &aSig0, &aSig1 );
5754 shortShift128Left( aSig0, aSig1, 13 - ( aExp & 1 ), &aSig0, &aSig1 );
5755 zSig0 = estimateDiv128To64( aSig0, aSig1, zSig0<<32 ) + ( zSig0<<30 );
5758 sub128( aSig0, aSig1, term0, term1, &rem0, &rem1 );
6464 uint64_t aSig0, aSig1;
6466 aSig1 = extractFloat128Frac1( a );
6471 if ( aSig0 | aSig1 ) {
6478 else if ( aSig0 == 0 && aSig1 == 0 )
6488 return normalizeRoundAndPackFloat128( aSign, aExp, aSig0, aSig1