Print this page

        

*** 105,118 **** long double a, t, z, w; int *pt = (int *) &t, *px = (int *) &x; int i, j, hx, ix; t = 1.0L; ! #if defined(_BIG_ENDIAN) ! hx = px[0]; ! #else XTOI(px, hx); #endif ix = hx & 0x7fffffff; if (ix < 0x3ffc9000) { if (ix < 0x3fc60000) if (((int) x) == 0) --- 105,118 ---- long double a, t, z, w; int *pt = (int *) &t, *px = (int *) &x; int i, j, hx, ix; t = 1.0L; ! #if defined(__i386) || defined(__amd64) XTOI(px, hx); + #else + hx = px[0]; #endif ix = hx & 0x7fffffff; if (ix < 0x3ffc9000) { if (ix < 0x3fc60000) if (((int) x) == 0)
*** 123,136 **** t = y + x * t; return (x + t); } j = (ix + 0x400) & 0x7ffff800; i = (j - 0x3ffc4000) >> 11; ! #if defined(_BIG_ENDIAN) ! pt[0] = j; ! #else ITOX(j, pt); #endif if (hx > 0) x = y - (t - x); else x = (-y) - (t + x); --- 123,136 ---- t = y + x * t; return (x + t); } j = (ix + 0x400) & 0x7ffff800; i = (j - 0x3ffc4000) >> 11; ! #if defined(__i386) || defined(__amd64) ITOX(j, pt); + #else + pt[0] = j; #endif if (hx > 0) x = y - (t - x); else x = (-y) - (t + x);