Lines Matching refs:hx

168   int32_t e0, i, j, nx, n, ix, hx;
172 GET_HIGH_WORD(hx, x); /* high word of x */
173 ix = hx & 0x7FFFFFFF;
180 if (hx > 0) {
236 if (hx < 0) {
264 if (hx < 0) {
279 * 2. if x < 2^-27 (hx<0x3E400000 0), return 1 with inexact if x!=0.
654 * 2. if x < 2^-27 (hx<0x3E400000 0), return x with inexact if x!=0.
709 * 2. if x < 2^-28 (hx<0x3E300000 0), return x with inexact if x!=0.
758 int32_t ix, hx;
760 GET_HIGH_WORD(hx, x); /* high word of x */
761 ix = hx & 0x7FFFFFFF; /* high word of |x| */
786 if (hx < 0) {
811 return (1 - ((hx >> 30) & 2)) * (v - 2.0 * (x - (w * w / (w + v) - r)));
880 int32_t hx, ix;
881 GET_HIGH_WORD(hx, x);
882 ix = hx & 0x7FFFFFFF;
887 if (hx > 0)
901 } else if (hx < 0) { /* x < -0.5 */
941 int32_t hx;
943 EXTRACT_WORDS(hx, lx, x);
944 if (hx < 0x3FF00000) { /* x < 1 */
946 } else if (hx >= 0x41B00000) { /* x > 2**28 */
947 if (hx >= 0x7FF00000) { /* x is inf of NaN */
952 } else if (((hx - 0x3FF00000) | lx) == 0) {
954 } else if (hx > 0x40000000) { /* 2**28 > x > 2 */
1011 int32_t hx, ix;
1014 GET_HIGH_WORD(hx, x);
1015 ix = hx & 0x7FFFFFFF;
1052 if (hx > 0)
1074 int32_t hx, ix;
1075 GET_HIGH_WORD(hx, x);
1076 ix = hx & 0x7FFFFFFF;
1090 if (hx > 0) {
1148 int32_t ix, hx, id;
1150 GET_HIGH_WORD(hx, x);
1151 ix = hx & 0x7FFFFFFF;
1157 if (hx > 0)
1198 return (hx < 0) ? -z : z;
1239 int32_t k, m, hx, hy, ix, iy;
1242 EXTRACT_WORDS(hx, lx, x);
1243 ix = hx & 0x7FFFFFFF;
1250 if ((SubWithWraparound(hx, 0x3FF00000) | lx) == 0) {
1253 m = ((hy >> 31) & 1) | ((hx >> 30) & 2); /* 2*sign(x)+sign(y) */
1304 } else if (hx < 0 && k < -60) {
1468 uint32_t hx;
1470 GET_HIGH_WORD(hx, x);
1471 xsb = (hx >> 31) & 1; /* sign bit of x */
1472 hx &= 0x7FFFFFFF; /* high word of |x| */
1475 if (hx >= 0x40862E42) { /* if |x|>=709.78... */
1476 if (hx >= 0x7FF00000) {
1479 if (((hx & 0xFFFFF) | lx) != 0)
1489 if (hx > 0x3FD62E42) { /* if |x| > 0.5 ln2 */
1490 if (hx < 0x3FF0A2B2) { /* and |x| < 1.5 ln2 */
1506 } else if (hx < 0x3E300000) { /* when |x|<2**-28 */
1558 int32_t hx, ix;
1560 EXTRACT_WORDS(hx, lx, x);
1561 ix = hx & 0x7FFFFFFF;
1578 if (hx >= 0)
1650 int32_t k, hx, i, j;
1653 EXTRACT_WORDS(hx, lx, x);
1656 if (hx < 0x00100000) { /* x < 2**-1022 */
1657 if (((hx & 0x7FFFFFFF) | lx) == 0) {
1660 if (hx < 0) {
1665 GET_HIGH_WORD(hx, x);
1667 if (hx >= 0x7FF00000) return x + x;
1668 k += (hx >> 20) - 1023;
1669 hx &= 0x000FFFFF;
1670 i = (hx + 0x95F64) & 0x100000;
1671 SET_HIGH_WORD(x, hx | (i ^ 0x3FF00000)); /* normalize x or x/2 */
1674 if ((0x000FFFFF & (2 + hx)) < 3) { /* -2**-20 <= f < 2**-20 */
1694 i = hx - 0x6147A;
1696 j = 0x6B851 - hx;
1795 int32_t k, hx, hu, ax;
1797 GET_HIGH_WORD(hx, x);
1798 ax = hx & 0x7FFFFFFF;
1801 if (hx < 0x3FDA827A) { /* 1+x < sqrt(2)+ */
1815 if (hx > 0 || hx <= static_cast<int32_t>(0xBFD2BEC4)) {
1821 if (hx >= 0x7FF00000) return x + x;
1823 if (hx < 0x43400000) {
1976 int32_t i, k, hx;
1979 EXTRACT_WORDS(hx, lx, x);
1982 if (hx < 0x00100000) { /* x < 2**-1022 */
1983 if (((hx & 0x7FFFFFFF) | lx) == 0) {
1986 if (hx < 0) {
1991 GET_HIGH_WORD(hx, x);
1993 if (hx >= 0x7FF00000) return x + x;
1994 if (hx == 0x3FF00000 && lx == 0) return 0.0; /* log(1) = +0 */
1995 k += (hx >> 20) - 1023;
1996 hx &= 0x000FFFFF;
1997 i = (hx + 0x95F64) & 0x100000;
1998 SET_HIGH_WORD(x, hx | (i ^ 0x3FF00000)); /* normalize x or x/2 */
2083 int32_t i, k, hx;
2086 EXTRACT_WORDS(hx, lx, x);
2089 if (hx < 0x00100000) { /* x < 2**-1022 */
2090 if (((hx & 0x7FFFFFFF) | lx) == 0) {
2093 if (hx < 0) {
2098 GET_HIGH_WORD(hx, x);
2101 if (hx >= 0x7FF00000) return x + x;
2102 if (hx == 0x3FF00000 && lx == 0) return 0.0; /* log(1) = +0 */
2103 k += (hx >> 20) - 1023;
2106 hx = (hx & 0x000FFFFF) | ((0x3FF - i) << 20);
2108 SET_HIGH_WORD(x, hx);
2229 uint32_t hx;
2231 GET_HIGH_WORD(hx, x);
2232 xsb = hx & 0x80000000; /* sign bit of x */
2233 hx &= 0x7FFFFFFF; /* high word of |x| */
2236 if (hx >= 0x4043687A) { /* if |x|>=56*ln2 */
2237 if (hx >= 0x40862E42) { /* if |x|>=709.78... */
2238 if (hx >= 0x7FF00000) {
2241 if (((hx & 0xFFFFF) | low) != 0)
2255 if (hx > 0x3FD62E42) { /* if |x| > 0.5 ln2 */
2256 if (hx < 0x3FF0A2B2) { /* and |x| < 1.5 ln2 */
2274 } else if (hx < 0x3C900000) { /* when |x|<2**-54, return x */
2341 int32_t hx;
2346 EXTRACT_WORDS(hx, low, x);
2347 sign = hx & 0x80000000; /* sign= sign(x) */
2348 hx ^= sign;
2349 if (hx >= 0x7FF00000) return (x + x); /* cbrt(NaN,INF) is itself */
2366 if (hx < 0x00100000) { /* zero or subnormal? */
2367 if ((hx | low) == 0) return (x); /* cbrt(0) is itself */
2373 INSERT_WORDS(t, sign | (hx / 3 + B1), 0);
2673 int hx, hy, ix, iy;
2676 EXTRACT_WORDS(hx, lx, x);
2678 ix = hx & 0x7fffffff;
2696 if (hx < 0) {
2731 if (hx >= 0) { /* x >= +0 */
2743 if (hx < 0) {
2755 n = (hx >> 31) + 1;