Lines Matching refs:sig

40     bits64X sig;  member
120 if ( zx.sig.a1 ) { in roundFloatXTo24()
125 if ( zx.sig.a1 < 0x80000000 ) goto noIncrement; in roundFloatXTo24()
126 if ( ( zx.sig.a1 == 0x80000000 ) && ! ( zx.sig.a0 & 1 ) ) { in roundFloatXTo24()
139 ++zx.sig.a0; in roundFloatXTo24()
140 if ( zx.sig.a0 == 0x01000000 ) { in roundFloatXTo24()
141 zx.sig.a0 = 0x00800000; in roundFloatXTo24()
146 zx.sig.a1 = 0; in roundFloatXTo24()
155 roundBits = zx.sig.a1 & 7; in roundFloatXTo53()
156 zx.sig.a1 -= roundBits; in roundFloatXTo53()
163 if ( ( roundBits == 4 ) && ! ( zx.sig.a1 & 8 ) ) goto noIncrement; in roundFloatXTo53()
174 zx.sig.a1 += 8; in roundFloatXTo53()
175 zx.sig.a0 += ( zx.sig.a1 == 0 ); in roundFloatXTo53()
176 if ( zx.sig.a0 == 0x01000000 ) { in roundFloatXTo53()
177 zx.sig.a0 = 0x00800000; in roundFloatXTo53()
193 ax.sig.a1 = ax.sign ? - a : a; in int32ToFloatX()
194 ax.sig.a0 = 0; in int32ToFloatX()
200 ax.sig = shortShift64Left( ax.sig, 23 ); in int32ToFloatX()
202 while ( ax.sig.a0 < 0x00800000 ) { in int32ToFloatX()
203 ax.sig = shortShift64Left( ax.sig, 1 ); in int32ToFloatX()
224 ax.sig.a1 = 1; in floatXToInt32()
225 ax.sig.a0 = 0; in floatXToInt32()
229 ax.sig = shortShift64RightJamming( ax.sig, 1 ); in floatXToInt32()
234 ax.sig = shortShift64RightJamming( ax.sig, 3 ); in floatXToInt32()
235 z = ax.sig.a1; in floatXToInt32()
238 || ax.sig.a0 in floatXToInt32()
258 ax.sig.a1 = 0; in float32ToFloatX()
259 ax.sig.a0 = a & 0x007FFFFF; in float32ToFloatX()
261 if ( ax.sig.a0 == 0 ) { in float32ToFloatX()
267 ax.sig.a0 <<= 1; in float32ToFloatX()
269 } while ( ax.sig.a0 < 0x00800000 ); in float32ToFloatX()
274 if ( ax.sig.a0 == 0 ) { in float32ToFloatX()
282 ax.sig.a0 |= 0x00800000; in float32ToFloatX()
299 while ( 0x01000000 <= zx.sig.a0 ) { in floatXToFloat32()
300 zx.sig = shortShift64RightJamming( zx.sig, 1 ); in floatXToFloat32()
303 while ( zx.sig.a0 < 0x00800000 ) { in floatXToFloat32()
304 zx.sig = shortShift64Left( zx.sig, 1 ); in floatXToFloat32()
347 zx.sig.a1 = ( zx.sig.a0 != 0 ) || ( zx.sig.a1 != 0 ); in floatXToFloat32()
348 zx.sig.a0 = 0; in floatXToFloat32()
352 zx.sig = shortShift64RightJamming( zx.sig, 1 ); in floatXToFloat32()
357 expField = ( 0x00800000 <= zx.sig.a0 ) ? 1 : 0; in floatXToFloat32()
362 z |= zx.sig.a0 & 0x007FFFFF; in floatXToFloat32()
378 ax.sig.a1 = a; in float64ToFloatX()
379 ax.sig.a0 = ( a>>32 ) & 0x000FFFFF; in float64ToFloatX()
383 ax.sig.a1 = a.low; in float64ToFloatX()
384 ax.sig.a0 = a.high & 0x000FFFFF; in float64ToFloatX()
387 if ( ( ax.sig.a0 == 0 ) && ( ax.sig.a1 == 0 ) ) { in float64ToFloatX()
393 ax.sig = shortShift64Left( ax.sig, 1 ); in float64ToFloatX()
395 } while ( ax.sig.a0 < 0x00100000 ); in float64ToFloatX()
400 if ( ( ax.sig.a0 == 0 ) && ( ax.sig.a1 == 0 ) ) { in float64ToFloatX()
409 ax.sig.a0 |= 0x00100000; in float64ToFloatX()
411 ax.sig = shortShift64Left( ax.sig, 3 ); in float64ToFloatX()
447 while ( 0x01000000 <= zx.sig.a0 ) { in floatXToFloat64()
448 zx.sig = shortShift64RightJamming( zx.sig, 1 ); in floatXToFloat64()
451 while ( zx.sig.a0 < 0x00800000 ) { in floatXToFloat64()
452 zx.sig = shortShift64Left( zx.sig, 1 ); in floatXToFloat64()
526 zx.sig.a1 = ( zx.sig.a0 != 0 ) || ( zx.sig.a1 != 0 ); in floatXToFloat64()
527 zx.sig.a0 = 0; in floatXToFloat64()
531 zx.sig = shortShift64RightJamming( zx.sig, 1 ); in floatXToFloat64()
536 expField = ( 0x00800000 <= zx.sig.a0 ) ? 1 : 0; in floatXToFloat64()
538 zx.sig = shortShift64RightJamming( zx.sig, 3 ); in floatXToFloat64()
543 z |= ( ( (bits64) ( zx.sig.a0 & 0x000FFFFF ) )<<32 ) | zx.sig.a1; in floatXToFloat64()
545 z.low = zx.sig.a1; in floatXToFloat64()
549 z.high |= zx.sig.a0 & 0x000FFFFF; in floatXToFloat64()
572 ax.sig.a1 = ! ax.isZero; in floatXRoundToInt()
573 ax.sig.a0 = 0; in floatXRoundToInt()
577 ax.sig = shortShift64RightJamming( ax.sig, 1 ); in floatXRoundToInt()
583 if ( ( ax.sig.a0 == 0 ) && ( ax.sig.a1 == 0 ) ) ax.isZero = TRUE; in floatXRoundToInt()
607 && eq64( ax.sig, bx.sig ) in floatXAdd()
622 zx.sig.a1 = 1; in floatXAdd()
623 zx.sig.a0 = 0; in floatXAdd()
627 zx.sig = shortShift64RightJamming( zx.sig, 1 ); in floatXAdd()
631 if ( ax.sign != bx.sign ) zx.sig = neg64( zx.sig ); in floatXAdd()
633 zx.sig = add64( zx.sig, bx.sig ); in floatXAdd()
639 zx.sig.a1 = 1; in floatXAdd()
640 zx.sig.a0 = 0; in floatXAdd()
644 zx.sig = shortShift64RightJamming( zx.sig, 1 ); in floatXAdd()
648 if ( ax.sign != bx.sign ) zx.sig = neg64( zx.sig ); in floatXAdd()
650 zx.sig = add64( zx.sig, ax.sig ); in floatXAdd()
652 if ( zx.sig.a0 & 0x80000000 ) { in floatXAdd()
653 zx.sig = neg64( zx.sig ); in floatXAdd()
683 zx.sig.a1 = 0; in floatXMul()
684 zx.sig.a0 = 0; in floatXMul()
686 if ( bx.sig.a1 & 2 ) zx.sig = add64( zx.sig, ax.sig ); in floatXMul()
687 bx.sig = shortShift64RightJamming( bx.sig, 1 ); in floatXMul()
688 zx.sig = shortShift64RightJamming( zx.sig, 1 ); in floatXMul()
721 zx.sig.a1 = 0; in floatXDiv()
722 zx.sig.a0 = 0; in floatXDiv()
723 negBSig = neg64( bx.sig ); in floatXDiv()
725 if ( le64( bx.sig, ax.sig ) ) { in floatXDiv()
726 zx.sig.a1 |= 1; in floatXDiv()
727 ax.sig = add64( ax.sig, negBSig ); in floatXDiv()
729 ax.sig = shortShift64Left( ax.sig, 1 ); in floatXDiv()
730 zx.sig = shortShift64Left( zx.sig, 1 ); in floatXDiv()
732 if ( ax.sig.a0 || ax.sig.a1 ) zx.sig.a1 |= 1; in floatXDiv()
749 bx.sig = shortShift64Left( bx.sig, 1 ); in floatXRem()
750 negBSig = neg64( bx.sig ); in floatXRem()
752 if ( le64( bx.sig, ax.sig ) ) ax.sig = add64( ax.sig, negBSig ); in floatXRem()
753 ax.sig = shortShift64Left( ax.sig, 1 ); in floatXRem()
756 lastQuotientBit = le64( bx.sig, ax.sig ); in floatXRem()
757 if ( lastQuotientBit ) ax.sig = add64( ax.sig, negBSig ); in floatXRem()
758 savedASig = ax.sig; in floatXRem()
759 ax.sig = neg64( add64( ax.sig, negBSig ) ); in floatXRem()
760 if ( lt64( ax.sig, savedASig ) ) { in floatXRem()
763 else if ( lt64( savedASig, ax.sig ) ) { in floatXRem()
764 ax.sig = savedASig; in floatXRem()
771 ax.sig = savedASig; in floatXRem()
774 if ( ( ax.sig.a0 == 0 ) && ( ax.sig.a1 == 0 ) ) ax.isZero = TRUE; in floatXRem()
790 if ( ( ax.exp & 1 ) == 0 ) ax.sig = shortShift64RightJamming( ax.sig, 1 ); in floatXSqrt()
791 zx.sig.a1 = 0; in floatXSqrt()
792 zx.sig.a0 = 0; in floatXSqrt()
796 savedASig = ax.sig; in floatXSqrt()
797 ax.sig = add64( ax.sig, neg64( zx.sig ) ); in floatXSqrt()
798 ax.sig = shortShift64Left( ax.sig, 1 ); in floatXSqrt()
799 ax.sig = add64( ax.sig, neg64( bitSig ) ); in floatXSqrt()
800 if ( ax.sig.a0 & 0x80000000 ) { in floatXSqrt()
801 ax.sig = shortShift64Left( savedASig, 1 ); in floatXSqrt()
804 zx.sig.a1 |= bitSig.a1; in floatXSqrt()
805 zx.sig.a0 |= bitSig.a0; in floatXSqrt()
809 if ( ax.sig.a0 || ax.sig.a1 ) zx.sig.a1 |= 1; in floatXSqrt()
821 return ( ax.exp == bx.exp ) && eq64( ax.sig, bx.sig ); in floatXEq()
836 return le64( bx.sig, ax.sig ); in floatXLe()
843 return le64( ax.sig, bx.sig ); in floatXLe()
860 return lt64( bx.sig, ax.sig ); in floatXLt()
867 return lt64( ax.sig, bx.sig ); in floatXLt()