diff options
Diffstat (limited to 'libm/w_gamma.c')
-rw-r--r-- | libm/w_gamma.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/libm/w_gamma.c b/libm/w_gamma.c index 4b23392ed..246c8f764 100644 --- a/libm/w_gamma.c +++ b/libm/w_gamma.c @@ -18,21 +18,19 @@ #include <math.h> #include "math_private.h" -libm_hidden_proto(signgam) double gamma(double x) { #ifdef _IEEE_LIBM - return __ieee754_lgamma_r(x,&signgam); + return __ieee754_lgamma_r(x, &signgam); #else - double y; - y = __ieee754_lgamma_r(x,&signgam); - if(_LIB_VERSION == _IEEE_) return y; - if(!isfinite(y)&&isfinite(x)) { - if(floor(x)==x&&x<=0.0) - return __kernel_standard(x,x,41); /* gamma pole */ - else - return __kernel_standard(x,x,40); /* gamma overflow */ - } else - return y; + double y = __ieee754_lgamma_r(x, &signgam); + if (_LIB_VERSION == _IEEE_) + return y; + if (!isfinite(y) && isfinite(x)) { + if (floor(x) == x && x <= 0.0) + return __kernel_standard(x, x, 41); /* gamma pole */ + return __kernel_standard(x, x, 40); /* gamma overflow */ + } + return y; #endif } |