diff options
Diffstat (limited to 'sysdeps/ieee754/ldbl-128ibm/e_remainderl.c')
-rw-r--r-- | sysdeps/ieee754/ldbl-128ibm/e_remainderl.c | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c b/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c index b7fa68f32a..d4a847dbed 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c @@ -14,8 +14,8 @@ /* __ieee754_remainderl(x,p) * Return : - * returns x REM p = x - [x/p]*p as if in infinite - * precise arithmetic, where [x/p] is the (infinite bit) + * returns x REM p = x - [x/p]*p as if in infinite + * precise arithmetic, where [x/p] is the (infinite bit) * integer nearest x/p (in half way case choose the even one). * Method : * Based on fmodl() return x-[x/p]chopped*p exactlp. @@ -24,19 +24,11 @@ #include "math.h" #include "math_private.h" -#ifdef __STDC__ static const long double zero = 0.0L; -#else -static long double zero = 0.0L; -#endif -#ifdef __STDC__ - long double __ieee754_remainderl(long double x, long double p) -#else - long double __ieee754_remainderl(x,p) - long double x,p; -#endif +long double +__ieee754_remainderl(long double x, long double p) { int64_t hx,hp; u_int64_t sx,lx,lp; @@ -49,7 +41,7 @@ static long double zero = 0.0L; hx &= 0x7fffffffffffffffLL; /* purge off exception values */ - if((hp|(lp&0x7fffffffffffffff))==0) return (x*p)/(x*p); /* p = 0 */ + if((hp|(lp&0x7fffffffffffffff))==0) return (x*p)/(x*p); /* p = 0 */ if((hx>=0x7ff0000000000000LL)|| /* x not finite */ ((hp>=0x7ff0000000000000LL)&& /* p is NaN */ (((hp-0x7ff0000000000000LL)|lp)!=0))) @@ -76,3 +68,4 @@ static long double zero = 0.0L; SET_LDOUBLE_MSW64(x,hx^sx); return x; } +strong_alias (__ieee754_remainderl, __remainderl_finite) |