/* wrapper y0l */ long double y0l (long double x) { # if defined(__UCLIBC_HAS_FENV__) if (__builtin_expect (islessequal (x, 0.0L) || isgreater (x, X_TLOSS), 0) && _LIB_VERSION != _IEEE_) { if (x < 0.0L) { /* d = zero/(x-x) */ feraiseexcept (FE_INVALID); return __kernel_standard_l (x, x, 209); } else if (x == 0.0L) { /* d = -one/(x-x) */ feraiseexcept (FE_DIVBYZERO); return __kernel_standard_l (x, x, 208); } else if (_LIB_VERSION != _POSIX_) /* y0(x>X_TLOSS) */ return __kernel_standard_l (x, x, 235); } # endif /* __UCLIBC_HAS_FENV__ */ return (long double)__ieee754_y0 ((double) x); }
/* wrapper y0 */ double y0 (double x) { if (__builtin_expect (islessequal (x, 0.0) || isgreater (x, X_TLOSS), 0) && _LIB_VERSION != _IEEE_) { if (x < 0.0) { /* d = zero/(x-x) */ feraiseexcept (FE_INVALID); return __kernel_standard (x, x, 9); } else if (x == 0.0) { /* d = -one/(x-x) */ feraiseexcept (FE_DIVBYZERO); return __kernel_standard (x, x, 8); } else if (_LIB_VERSION != _POSIX_) /* y0(x>X_TLOSS) */ return __kernel_standard (x, x, 35); } return __ieee754_y0 (x); }
void Math_y0(void *fp) { F_Math_y0 *f; f = fp; *f->ret = __ieee754_y0(f->x); }
double y0(double x) { double z = __ieee754_y0(x); if (_LIB_VERSION == _IEEE_ || isnan(x)) return z; if (x <= 0.0) { if (x == 0.0) /* d= -one/(x-x); */ return __kernel_standard(x, x, 8); /* d = zero/(x-x); */ return __kernel_standard(x, x, 9); } if (x > X_TLOSS) return __kernel_standard(x, x, 35); /* y0(x>X_TLOSS) */ return z; }