word0
*bits = 4*P + 8 - k - hi0bits(word0(d) & Frac_mask);
word0(da) += (k >> 2)*Exp_msk1;
word0(db) += (k >> 2)*Exp_msk1;
word0(da) += k*Exp_msk1;
word0(db) += k*Exp_msk1;
word0(rv) -= P*Exp_msk1;
if ((word0(rv) & Exp_mask)
word0(rv) += P*Exp_msk1;
word0(rv) -= P*Exp_msk1;
if ((z = word0(rv) & Exp_mask)
word0(rv) = Big0;
word0(rv) += P*Exp_msk1;
word0(rv) = Tiny0;
if (dsign || word1(rv) || word0(rv) & Bndry_mask)
if ((word0(rv) & Bndry_mask1) == Bndry_mask1
word0(rv) = (word0(rv) & Exp_mask)
} else if (!(word0(rv) & Bndry_mask) && !word1(rv)) {
L = word0(rv) & Exp_mask;
L = (word0(rv) & Exp_mask) - Exp_msk1;
word0(rv) = L | Bndry_mask1;
else if (word1(rv) || word0(rv) & Bndry_mask) {
if (word1(rv) == Tiny1 && !word0(rv))
y = word0(rv) & Exp_mask;
word0(rv) -= P*Exp_msk1;
if ((word0(rv) & Exp_mask) >=
if (word0(rv0) == Big0 && word1(rv0) == Big1)
word0(rv) = Big0;
word0(rv) += P*Exp_msk1;
if ((word0(rv) & Exp_mask) <= P*Exp_msk1) {
word0(rv) += P*Exp_msk1;
if ((word0(rv) & Exp_mask) < P*Exp_msk1)
if ((word0(rv) & Exp_mask) <= P*Exp_msk1)
if (word0(rv0) == Tiny0
word0(rv) = Tiny0;
word0(rv) -= P*Exp_msk1;
z = word0(rv) & Exp_mask;
if (dsign || word1(rv) || word0(rv) & Bndry_mask) {
if (word0(d) & Sign_bit) {
word0(d) &= ~Sign_bit; /* clear sign bit */
if ((word0(d) & Exp_mask) == Exp_mask)
if (word0(d) == 0x8000)
!word1(d) && !(word0(d) & 0xfffff) ? "Infinity" :
i = (int)(word0(d) >> Exp_shift1 & (Exp_mask>>Exp_shift1));
if ( (i = (int)((word0(d) >> Exp_shift1) & (Exp_mask>>Exp_shift1))) ) {
word0(d2) &= Frac_mask1;
word0(d2) |= Exp_11;
if ( (j = 11 - hi0bits(word0(d2) & Frac_mask)) )
x = i > 32 ? ((word0(d) << (64 - i)) | (word1(d) >> (i - 32)))
word0(d2) -= 31*Exp_msk1; /* adjust exponent */
word0(eps) -= (P-1)*Exp_msk1;
if (!word1(d) && !(word0(d) & Bndry_mask)
&& word0(d) & Exp_mask
#define Infinite(x) (word0(x) == 0x7ff00000) /* sufficient test for here */
L = (word0(x) & Exp_mask) - (P-1)*Exp_msk1;
word0(a) = L;
word0(a) = 0x80000 >> L;
word0(a) = 0;
#define d0 word0(d)
word0(d) = d0 >> 16 | d0 << 16;
d0 = word0(d) >> 16 | word0(d) << 16;
#define d0 word0(d)