long double __sinhl (long double x) { long double z = __ieee754_sinhl (x); if (__builtin_expect (!__finitel (z), 0) && __finitel (x) && _LIB_VERSION != _IEEE_) return __kernel_standard_l (x, x, 225); /* sinh overflow */ return z; }
/* wrapper expl */ long double __expl (long double x) { long double z = __ieee754_expl (x); if (__builtin_expect (!__finitel (z) || z == 0, 0) && __finitel (x) && _LIB_VERSION != _IEEE_) return __kernel_standard_l (x, x, 206 + !!__signbitl (x)); return z; }
long double __exp10l (long double x) { long double z = __ieee754_exp10l (x); if (__builtin_expect (!__finitel (z), 0) && __finitel (x) && _LIB_VERSION != _IEEE_) /* exp10l overflow (246) if x > 0, underflow (247) if x < 0. */ return __kernel_standard_l (x, x, 246 + !!__signbitl (x)); return z; }
long double __hypotl(long double x, long double y) { long double z; z = __ieee754_hypotl(x,y); if(__builtin_expect(!__finitel(z), 0) && __finitel(x) && __finitel(y) && _LIB_VERSION != _IEEE_) return __kernel_standard(x, y, 204); /* hypot overflow */ return z; }
/* wrapper powl */ long double __powl (long double x, long double y) { long double z = __ieee754_powl (x, y); if (__builtin_expect (!__finitel (z), 0)) { if (_LIB_VERSION != _IEEE_) { if (__isnanl (x)) { if (y == 0.0L) /* pow(NaN,0.0) */ return __kernel_standard_l (x, y, 242); } else if (__finitel (x) && __finitel (y)) { if (__isnanl (z)) /* pow neg**non-int */ return __kernel_standard_l (x, y, 224); else if (x == 0.0L && y < 0.0L) { if (signbit (x) && signbit (z)) /* pow(-0.0,negative) */ return __kernel_standard_l (x, y, 223); else /* pow(+0.0,negative) */ return __kernel_standard_l (x, y, 243); } else /* pow overflow */ return __kernel_standard_l (x, y, 221); } } } else if (__builtin_expect (z == 0.0L, 0) && __finitel (x) && __finitel (y) && _LIB_VERSION != _IEEE_) { if (x == 0.0L) { if (y == 0.0L) /* pow(0.0,0.0) */ return __kernel_standard_l (x, y, 220); } else /* pow underflow */ return __kernel_standard_l (x, y, 222); } return z; }
/* Wrapper scalbl */ long double __scalbl (long double x, long double fn) { if (__glibc_unlikely (_LIB_VERSION == _SVID_)) return sysv_scalbl (x, fn); else { long double z = __ieee754_scalbl (x, fn); if (__glibc_unlikely (!__finitel (z) || z == 0.0L)) { if (__isnanl (z)) { if (!__isnanl (x) && !__isnanl (fn)) __set_errno (EDOM); } else if (__isinf_nsl (z)) { if (!__isinf_nsl (x) && !__isinf_nsl (fn)) __set_errno (ERANGE); } else { /* z == 0. */ if (x != 0.0L && !__isinf_nsl (fn)) __set_errno (ERANGE); } } return z; } }
long double __lgammal(long double x) { int local_signgam = 0; long double y = __ieee754_lgammal_r(x, _LIB_VERSION != _ISOC_ /* ISO C99 does not define the global variable. */ ? &signgam : &local_signgam); if(__builtin_expect(!__finitel(y), 0) && __finitel(x) && _LIB_VERSION != _IEEE_) return __kernel_standard_l(x, x, __floorl(x)==x&&x<=0.0L ? 215 /* lgamma pole */ : 214); /* lgamma overflow */ return y; }
long double __ieee754_exp10l (long double arg) { if (__finitel (arg) && arg < LDBL_MIN_10_EXP - LDBL_DIG - 10) return LDBL_MIN * LDBL_MIN; else /* This is a very stupid and inprecise implementation. It'll get replaced sometime (soon?). */ return __ieee754_expl (M_LN10l * arg); }
sysv_scalbl (long double x, long double fn) { long double z = __ieee754_scalbl (x, fn); if (__glibc_unlikely (__isinfl (z))) { if (__finitel (x)) return __kernel_standard_l (x, fn, 232); /* scalb overflow */ else __set_errno (ERANGE); } else if (__builtin_expect (z == 0.0L, 0) && z != x) return __kernel_standard_l (x, fn, 233); /* scalb underflow */ return z; }
long double __ieee754_scalbl (long double x, long double fn) { if (__builtin_expect (__isnanl (x), 0)) return x * fn; if (__builtin_expect (!__finitel (fn), 0)) { if (__isnanl (fn) || fn > 0.0L) return x * fn; if (x == 0.0L) return x; return x / -fn; } if (__builtin_expect ((long double) (int) fn != fn, 0)) return invalid_fn (x, fn); return __scalbnl (x, (int) fn); }
long double __exp2l (long double x) /* wrapper exp2l */ { #ifdef _IEEE_LIBM return __ieee754_exp2l (x); #else long double z; z = __ieee754_exp2l (x); if (_LIB_VERSION != _IEEE_ && __finitel (x)) { if (x > o_threshold) return __kernel_standard (x, x, 244); /* exp2l overflow */ else if (x <= u_threshold) return __kernel_standard (x, x, 245); /* exp2l underflow */ } return z; #endif }
long double __ieee754_scalbl (long double x, long double fn) { if (__glibc_unlikely (__isnanl (x))) return x * fn; if (__glibc_unlikely (!__finitel (fn))) { if (__isnanl (fn) || fn > 0.0L) return x * fn; if (x == 0.0L) return x; return x / -fn; } if (__glibc_unlikely ((long double) (int) fn != fn)) return invalid_fn (x, fn); return __scalbnl (x, (int) fn); }
long double __ieee754_exp10l (long double arg) { union ibm_extended_long_double u; long double arg_high, arg_low; long double exp_high, exp_low; if (!__finitel (arg)) return __ieee754_expl (arg); if (arg < LDBL_MIN_10_EXP - LDBL_DIG - 10) return LDBL_MIN * LDBL_MIN; else if (arg > LDBL_MAX_10_EXP + 1) return LDBL_MAX * LDBL_MAX; else if (fabsl (arg) < 0x1p-109L) return 1.0L; u.ld = arg; arg_high = u.d[0].d; arg_low = u.d[1].d; exp_high = arg_high * log10_high; exp_low = arg_high * log10_low + arg_low * M_LN10l; return __ieee754_expl (exp_high) * __ieee754_expl (exp_low); }
long double __ieee754_j0l (long double x) { long double xx, xinv, z, p, q, c, s, cc, ss; if (! __finitel (x)) { if (x != x) return x; else return 0.0L; } if (x == 0.0L) return 1.0L; xx = fabsl (x); if (xx <= 2.0L) { /* 0 <= x <= 2 */ z = xx * xx; p = z * z * neval (z, J0_2N, NJ0_2N) / deval (z, J0_2D, NJ0_2D); p -= 0.25L * z; p += 1.0L; return p; } xinv = 1.0L / xx; z = xinv * xinv; if (xinv <= 0.25) { if (xinv <= 0.125) { if (xinv <= 0.0625) { p = neval (z, P16_IN, NP16_IN) / deval (z, P16_ID, NP16_ID); q = neval (z, Q16_IN, NQ16_IN) / deval (z, Q16_ID, NQ16_ID); } else { p = neval (z, P8_16N, NP8_16N) / deval (z, P8_16D, NP8_16D); q = neval (z, Q8_16N, NQ8_16N) / deval (z, Q8_16D, NQ8_16D); } } else if (xinv <= 0.1875) { p = neval (z, P5_8N, NP5_8N) / deval (z, P5_8D, NP5_8D); q = neval (z, Q5_8N, NQ5_8N) / deval (z, Q5_8D, NQ5_8D); } else { p = neval (z, P4_5N, NP4_5N) / deval (z, P4_5D, NP4_5D); q = neval (z, Q4_5N, NQ4_5N) / deval (z, Q4_5D, NQ4_5D); } } /* .25 */ else /* if (xinv <= 0.5) */ { if (xinv <= 0.375) { if (xinv <= 0.3125) { p = neval (z, P3r2_4N, NP3r2_4N) / deval (z, P3r2_4D, NP3r2_4D); q = neval (z, Q3r2_4N, NQ3r2_4N) / deval (z, Q3r2_4D, NQ3r2_4D); } else { p = neval (z, P2r7_3r2N, NP2r7_3r2N) / deval (z, P2r7_3r2D, NP2r7_3r2D); q = neval (z, Q2r7_3r2N, NQ2r7_3r2N) / deval (z, Q2r7_3r2D, NQ2r7_3r2D); } } else if (xinv <= 0.4375) { p = neval (z, P2r3_2r7N, NP2r3_2r7N) / deval (z, P2r3_2r7D, NP2r3_2r7D); q = neval (z, Q2r3_2r7N, NQ2r3_2r7N) / deval (z, Q2r3_2r7D, NQ2r3_2r7D); } else { p = neval (z, P2_2r3N, NP2_2r3N) / deval (z, P2_2r3D, NP2_2r3D); q = neval (z, Q2_2r3N, NQ2_2r3N) / deval (z, Q2_2r3D, NQ2_2r3D); } } p = 1.0L + z * p; q = z * xinv * q; q = q - 0.125L * xinv; /* X = x - pi/4 cos(X) = cos(x) cos(pi/4) + sin(x) sin(pi/4) = 1/sqrt(2) * (cos(x) + sin(x)) sin(X) = sin(x) cos(pi/4) - cos(x) sin(pi/4) = 1/sqrt(2) * (sin(x) - cos(x)) sin(x) +- cos(x) = -cos(2x)/(sin(x) -+ cos(x)) cf. Fdlibm. */ __sincosl (xx, &s, &c); ss = s - c; cc = s + c; z = -__cosl (xx + xx); if ((s * c) < 0) cc = z / ss; else ss = z / cc; z = ONEOSQPI * (p * cc - q * ss) / __ieee754_sqrtl (xx); return z; }
long double __ieee754_y1l (long double x) { long double xx, xinv, z, p, q, c, s, cc, ss; if (! __finitel (x)) { if (x != x) return x; else return 0.0L; } if (x <= 0.0L) { if (x < 0.0L) return (zero / (zero * x)); return -HUGE_VALL + x; } xx = fabsl (x); if (xx <= 2.0L) { /* 0 <= x <= 2 */ z = xx * xx; p = xx * neval (z, Y0_2N, NY0_2N) / deval (z, Y0_2D, NY0_2D); p = -TWOOPI / xx + p; p = TWOOPI * __ieee754_logl (x) * __ieee754_j1l (x) + p; return p; } xinv = 1.0L / xx; z = xinv * xinv; if (xinv <= 0.25) { if (xinv <= 0.125) { if (xinv <= 0.0625) { p = neval (z, P16_IN, NP16_IN) / deval (z, P16_ID, NP16_ID); q = neval (z, Q16_IN, NQ16_IN) / deval (z, Q16_ID, NQ16_ID); } else { p = neval (z, P8_16N, NP8_16N) / deval (z, P8_16D, NP8_16D); q = neval (z, Q8_16N, NQ8_16N) / deval (z, Q8_16D, NQ8_16D); } } else if (xinv <= 0.1875) { p = neval (z, P5_8N, NP5_8N) / deval (z, P5_8D, NP5_8D); q = neval (z, Q5_8N, NQ5_8N) / deval (z, Q5_8D, NQ5_8D); } else { p = neval (z, P4_5N, NP4_5N) / deval (z, P4_5D, NP4_5D); q = neval (z, Q4_5N, NQ4_5N) / deval (z, Q4_5D, NQ4_5D); } } /* .25 */ else /* if (xinv <= 0.5) */ { if (xinv <= 0.375) { if (xinv <= 0.3125) { p = neval (z, P3r2_4N, NP3r2_4N) / deval (z, P3r2_4D, NP3r2_4D); q = neval (z, Q3r2_4N, NQ3r2_4N) / deval (z, Q3r2_4D, NQ3r2_4D); } else { p = neval (z, P2r7_3r2N, NP2r7_3r2N) / deval (z, P2r7_3r2D, NP2r7_3r2D); q = neval (z, Q2r7_3r2N, NQ2r7_3r2N) / deval (z, Q2r7_3r2D, NQ2r7_3r2D); } } else if (xinv <= 0.4375) { p = neval (z, P2r3_2r7N, NP2r3_2r7N) / deval (z, P2r3_2r7D, NP2r3_2r7D); q = neval (z, Q2r3_2r7N, NQ2r3_2r7N) / deval (z, Q2r3_2r7D, NQ2r3_2r7D); } else { p = neval (z, P2_2r3N, NP2_2r3N) / deval (z, P2_2r3D, NP2_2r3D); q = neval (z, Q2_2r3N, NQ2_2r3N) / deval (z, Q2_2r3D, NQ2_2r3D); } } p = 1.0L + z * p; q = z * q; q = q * xinv + 0.375L * xinv; /* X = x - 3 pi/4 cos(X) = cos(x) cos(3 pi/4) + sin(x) sin(3 pi/4) = 1/sqrt(2) * (-cos(x) + sin(x)) sin(X) = sin(x) cos(3 pi/4) - cos(x) sin(3 pi/4) = -1/sqrt(2) * (sin(x) + cos(x)) cf. Fdlibm. */ __sincosl (xx, &s, &c); ss = -s - c; cc = s - c; z = __cosl (xx + xx); if ((s * c) > 0) cc = z / ss; else ss = z / cc; z = ONEOSQPI * (p * ss + q * cc) / __ieee754_sqrtl (xx); return z; }
long double __cbrtl (long double x) { int e, rem, sign; long double z; if (!__finitel (x)) return x + x; if (x == 0) return (x); if (x > 0) sign = 1; else { sign = -1; x = -x; } z = x; /* extract power of 2, leaving mantissa between 0.5 and 1 */ x = __frexpl (x, &e); /* Approximate cube root of number between .5 and 1, peak relative error = 1.2e-6 */ x = ((((1.3584464340920900529734e-1L * x - 6.3986917220457538402318e-1L) * x + 1.2875551670318751538055e0L) * x - 1.4897083391357284957891e0L) * x + 1.3304961236013647092521e0L) * x + 3.7568280825958912391243e-1L; /* exponent divided by 3 */ if (e >= 0) { rem = e; e /= 3; rem -= 3 * e; if (rem == 1) x *= CBRT2; else if (rem == 2) x *= CBRT4; } else { /* argument less than 1 */ e = -e; rem = e; e /= 3; rem -= 3 * e; if (rem == 1) x *= CBRT2I; else if (rem == 2) x *= CBRT4I; e = -e; } /* multiply by power of 2 */ x = __ldexpl (x, e); /* Newton iteration */ x -= (x - (z / (x * x))) * 0.3333333333333333333333333333333333333333L; x -= (x - (z / (x * x))) * 0.3333333333333333333333333333333333333333L; x -= (x - (z / (x * x))) * 0.3333333333333333333333333333333333333333L; if (sign < 0) x = -x; return (x); }
long double __ieee754_j1l (long double x) { long double xx, xinv, z, p, q, c, s, cc, ss; if (! __finitel (x)) { if (x != x) return x; else return 0.0L; } if (x == 0.0L) return x; xx = fabsl (x); if (xx <= 2.0L) { /* 0 <= x <= 2 */ z = xx * xx; p = xx * z * neval (z, J0_2N, NJ0_2N) / deval (z, J0_2D, NJ0_2D); p += 0.5L * xx; if (x < 0) p = -p; return p; } /* X = x - 3 pi/4 cos(X) = cos(x) cos(3 pi/4) + sin(x) sin(3 pi/4) = 1/sqrt(2) * (-cos(x) + sin(x)) sin(X) = sin(x) cos(3 pi/4) - cos(x) sin(3 pi/4) = -1/sqrt(2) * (sin(x) + cos(x)) cf. Fdlibm. */ __sincosl (xx, &s, &c); ss = -s - c; cc = s - c; if (xx <= LDBL_MAX / 2.0L) { z = __cosl (xx + xx); if ((s * c) > 0) cc = z / ss; else ss = z / cc; } if (xx > 0x1p256L) { z = ONEOSQPI * cc / __ieee754_sqrtl (xx); if (x < 0) z = -z; return z; } xinv = 1.0L / xx; z = xinv * xinv; if (xinv <= 0.25) { if (xinv <= 0.125) { if (xinv <= 0.0625) { p = neval (z, P16_IN, NP16_IN) / deval (z, P16_ID, NP16_ID); q = neval (z, Q16_IN, NQ16_IN) / deval (z, Q16_ID, NQ16_ID); } else { p = neval (z, P8_16N, NP8_16N) / deval (z, P8_16D, NP8_16D); q = neval (z, Q8_16N, NQ8_16N) / deval (z, Q8_16D, NQ8_16D); } } else if (xinv <= 0.1875) { p = neval (z, P5_8N, NP5_8N) / deval (z, P5_8D, NP5_8D); q = neval (z, Q5_8N, NQ5_8N) / deval (z, Q5_8D, NQ5_8D); } else { p = neval (z, P4_5N, NP4_5N) / deval (z, P4_5D, NP4_5D); q = neval (z, Q4_5N, NQ4_5N) / deval (z, Q4_5D, NQ4_5D); } } /* .25 */ else /* if (xinv <= 0.5) */ { if (xinv <= 0.375) { if (xinv <= 0.3125) { p = neval (z, P3r2_4N, NP3r2_4N) / deval (z, P3r2_4D, NP3r2_4D); q = neval (z, Q3r2_4N, NQ3r2_4N) / deval (z, Q3r2_4D, NQ3r2_4D); } else { p = neval (z, P2r7_3r2N, NP2r7_3r2N) / deval (z, P2r7_3r2D, NP2r7_3r2D); q = neval (z, Q2r7_3r2N, NQ2r7_3r2N) / deval (z, Q2r7_3r2D, NQ2r7_3r2D); } } else if (xinv <= 0.4375) { p = neval (z, P2r3_2r7N, NP2r3_2r7N) / deval (z, P2r3_2r7D, NP2r3_2r7D); q = neval (z, Q2r3_2r7N, NQ2r3_2r7N) / deval (z, Q2r3_2r7D, NQ2r3_2r7D); } else { p = neval (z, P2_2r3N, NP2_2r3N) / deval (z, P2_2r3D, NP2_2r3D); q = neval (z, Q2_2r3N, NQ2_2r3N) / deval (z, Q2_2r3D, NQ2_2r3D); } } p = 1.0L + z * p; q = z * q; q = q * xinv + 0.375L * xinv; z = ONEOSQPI * (p * cc - q * ss) / __ieee754_sqrtl (xx); if (x < 0) z = -z; return z; }
long double __ieee754_lgammal_r (long double x, int *signgamp) { long double p, q, w, z, nx; int i, nn; *signgamp = 1; if (! __finitel (x)) return x * x; if (x == 0.0L) { if (__signbitl (x)) *signgamp = -1; } if (x < 0.0L) { q = -x; p = __floorl (q); if (p == q) return (one / (p - p)); i = p; if ((i & 1) == 0) *signgamp = -1; else *signgamp = 1; if (q < 0x1p-120L) return -__logl (q); z = q - p; if (z > 0.5L) { p += 1.0L; z = p - q; } z = q * __sinl (PIL * z); w = __ieee754_lgammal_r (q, &i); z = __logl (PIL / z) - w; return (z); } if (x < 13.5L) { p = 0.0L; nx = __floorl (x + 0.5L); nn = nx; switch (nn) { case 0: /* log gamma (x + 1) = log(x) + log gamma(x) */ if (x < 0x1p-120L) return -__logl (x); else if (x <= 0.125) { p = x * neval (x, RN1, NRN1) / deval (x, RD1, NRD1); } else if (x <= 0.375) { z = x - 0.25L; p = z * neval (z, RN1r25, NRN1r25) / deval (z, RD1r25, NRD1r25); p += lgam1r25b; p += lgam1r25a; } else if (x <= 0.625) { z = x + (1.0L - x0a); z = z - x0b; p = neval (z, RN1r5, NRN1r5) / deval (z, RD1r5, NRD1r5); p = p * z * z; p = p + y0b; p = p + y0a; } else if (x <= 0.875) { z = x - 0.75L; p = z * neval (z, RN1r75, NRN1r75) / deval (z, RD1r75, NRD1r75); p += lgam1r75b; p += lgam1r75a; } else { z = x - 1.0L; p = z * neval (z, RN2, NRN2) / deval (z, RD2, NRD2); } p = p - __logl (x); break; case 1: if (x < 0.875L) { if (x <= 0.625) { z = x + (1.0L - x0a); z = z - x0b; p = neval (z, RN1r5, NRN1r5) / deval (z, RD1r5, NRD1r5); p = p * z * z; p = p + y0b; p = p + y0a; } else if (x <= 0.875) { z = x - 0.75L; p = z * neval (z, RN1r75, NRN1r75) / deval (z, RD1r75, NRD1r75); p += lgam1r75b; p += lgam1r75a; } else { z = x - 1.0L; p = z * neval (z, RN2, NRN2) / deval (z, RD2, NRD2); } p = p - __logl (x); } else if (x < 1.0L) { z = x - 1.0L; p = z * neval (z, RNr9, NRNr9) / deval (z, RDr9, NRDr9); } else if (x == 1.0L) p = 0.0L; else if (x <= 1.125L) { z = x - 1.0L; p = z * neval (z, RN1, NRN1) / deval (z, RD1, NRD1); } else if (x <= 1.375) { z = x - 1.25L; p = z * neval (z, RN1r25, NRN1r25) / deval (z, RD1r25, NRD1r25); p += lgam1r25b; p += lgam1r25a; } else { /* 1.375 <= x+x0 <= 1.625 */ z = x - x0a; z = z - x0b; p = neval (z, RN1r5, NRN1r5) / deval (z, RD1r5, NRD1r5); p = p * z * z; p = p + y0b; p = p + y0a; } break; case 2: if (x < 1.625L) { z = x - x0a; z = z - x0b; p = neval (z, RN1r5, NRN1r5) / deval (z, RD1r5, NRD1r5); p = p * z * z; p = p + y0b; p = p + y0a; } else if (x < 1.875L) { z = x - 1.75L; p = z * neval (z, RN1r75, NRN1r75) / deval (z, RD1r75, NRD1r75); p += lgam1r75b; p += lgam1r75a; } else if (x == 2.0L) p = 0.0L; else if (x < 2.375L) { z = x - 2.0L; p = z * neval (z, RN2, NRN2) / deval (z, RD2, NRD2); } else { z = x - 2.5L; p = z * neval (z, RN2r5, NRN2r5) / deval (z, RD2r5, NRD2r5); p += lgam2r5b; p += lgam2r5a; } break; case 3: if (x < 2.75) { z = x - 2.5L; p = z * neval (z, RN2r5, NRN2r5) / deval (z, RD2r5, NRD2r5); p += lgam2r5b; p += lgam2r5a; } else { z = x - 3.0L; p = z * neval (z, RN3, NRN3) / deval (z, RD3, NRD3); p += lgam3b; p += lgam3a; } break; case 4: z = x - 4.0L; p = z * neval (z, RN4, NRN4) / deval (z, RD4, NRD4); p += lgam4b; p += lgam4a; break; case 5: z = x - 5.0L; p = z * neval (z, RN5, NRN5) / deval (z, RD5, NRD5); p += lgam5b; p += lgam5a; break; case 6: z = x - 6.0L; p = z * neval (z, RN6, NRN6) / deval (z, RD6, NRD6); p += lgam6b; p += lgam6a; break; case 7: z = x - 7.0L; p = z * neval (z, RN7, NRN7) / deval (z, RD7, NRD7); p += lgam7b; p += lgam7a; break; case 8: z = x - 8.0L; p = z * neval (z, RN8, NRN8) / deval (z, RD8, NRD8); p += lgam8b; p += lgam8a; break; case 9: z = x - 9.0L; p = z * neval (z, RN9, NRN9) / deval (z, RD9, NRD9); p += lgam9b; p += lgam9a; break; case 10: z = x - 10.0L; p = z * neval (z, RN10, NRN10) / deval (z, RD10, NRD10); p += lgam10b; p += lgam10a; break; case 11: z = x - 11.0L; p = z * neval (z, RN11, NRN11) / deval (z, RD11, NRD11); p += lgam11b; p += lgam11a; break; case 12: z = x - 12.0L; p = z * neval (z, RN12, NRN12) / deval (z, RD12, NRD12); p += lgam12b; p += lgam12a; break; case 13: z = x - 13.0L; p = z * neval (z, RN13, NRN13) / deval (z, RD13, NRD13); p += lgam13b; p += lgam13a; break; } return p; } if (x > MAXLGM) return (*signgamp * huge * huge); q = ls2pi - x; q = (x - 0.5L) * __logl (x) + q; if (x > 1.0e18L) return (q); p = 1.0L / (x * x); q += neval (p, RASY, NRASY) / x; return (q); }
static int testl(long double long_double_x, int int_x, long long_x) { int r = 0; r += __finitel(long_double_x); r += __fpclassifyl(long_double_x); r += __isinfl(long_double_x); r += __isnanl(long_double_x); r += __signbitl(long_double_x); r += acoshl(long_double_x); r += acosl(long_double_x); r += asinhl(long_double_x); r += asinl(long_double_x); r += atan2l(long_double_x, long_double_x); r += atanhl(long_double_x); r += atanl(long_double_x); r += cbrtl(long_double_x); r += ceill(long_double_x); r += copysignl(long_double_x, long_double_x); r += coshl(long_double_x); r += cosl(long_double_x); r += erfcl(long_double_x); r += erfl(long_double_x); r += exp2l(long_double_x); r += expl(long_double_x); r += expm1l(long_double_x); r += fabsl(long_double_x); r += fdiml(long_double_x, long_double_x); r += floorl(long_double_x); r += fmal(long_double_x, long_double_x, long_double_x); r += fmaxl(long_double_x, long_double_x); r += fminl(long_double_x, long_double_x); r += fmodl(long_double_x, long_double_x); r += frexpl(long_double_x, &int_x); r += hypotl(long_double_x, long_double_x); r += ilogbl(long_double_x); r += ldexpl(long_double_x, int_x); r += lgammal(long_double_x); r += llrintl(long_double_x); r += llroundl(long_double_x); r += log10l(long_double_x); r += log1pl(long_double_x); r += log2l(long_double_x); r += logbl(long_double_x); r += logl(long_double_x); r += lrintl(long_double_x); r += lroundl(long_double_x); r += modfl(long_double_x, &long_double_x); r += nearbyintl(long_double_x); r += nextafterl(long_double_x, long_double_x); r += nexttowardl(long_double_x, long_double_x); r += powl(long_double_x, long_double_x); r += remainderl(long_double_x, long_double_x); r += remquol(long_double_x, long_double_x, &int_x); r += rintl(long_double_x); r += roundl(long_double_x); r += scalblnl(long_double_x, long_x); r += scalbnl(long_double_x, int_x); r += sinhl(long_double_x); r += sinl(long_double_x); r += sqrtl(long_double_x); r += tanhl(long_double_x); r += tanl(long_double_x); r += tgammal(long_double_x); r += truncl(long_double_x); return r; }