summaryrefslogtreecommitdiff
path: root/sysdeps/ieee754/ldbl-128/e_log10l.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ieee754/ldbl-128/e_log10l.c')
-rw-r--r--sysdeps/ieee754/ldbl-128/e_log10l.c134
1 files changed, 67 insertions, 67 deletions
diff --git a/sysdeps/ieee754/ldbl-128/e_log10l.c b/sysdeps/ieee754/ldbl-128/e_log10l.c
index 618255f2fa..e8f33984f2 100644
--- a/sysdeps/ieee754/ldbl-128/e_log10l.c
+++ b/sysdeps/ieee754/ldbl-128/e_log10l.c
@@ -68,36 +68,36 @@
* Theoretical peak relative error = 5.3e-37,
* relative peak error spread = 2.3e-14
*/
-static const long double P[13] =
+static const _Float128 P[13] =
{
- 1.313572404063446165910279910527789794488E4L,
- 7.771154681358524243729929227226708890930E4L,
- 2.014652742082537582487669938141683759923E5L,
- 3.007007295140399532324943111654767187848E5L,
- 2.854829159639697837788887080758954924001E5L,
- 1.797628303815655343403735250238293741397E5L,
- 7.594356839258970405033155585486712125861E4L,
- 2.128857716871515081352991964243375186031E4L,
- 3.824952356185897735160588078446136783779E3L,
- 4.114517881637811823002128927449878962058E2L,
- 2.321125933898420063925789532045674660756E1L,
- 4.998469661968096229986658302195402690910E-1L,
- 1.538612243596254322971797716843006400388E-6L
+ L(1.313572404063446165910279910527789794488E4),
+ L(7.771154681358524243729929227226708890930E4),
+ L(2.014652742082537582487669938141683759923E5),
+ L(3.007007295140399532324943111654767187848E5),
+ L(2.854829159639697837788887080758954924001E5),
+ L(1.797628303815655343403735250238293741397E5),
+ L(7.594356839258970405033155585486712125861E4),
+ L(2.128857716871515081352991964243375186031E4),
+ L(3.824952356185897735160588078446136783779E3),
+ L(4.114517881637811823002128927449878962058E2),
+ L(2.321125933898420063925789532045674660756E1),
+ L(4.998469661968096229986658302195402690910E-1),
+ L(1.538612243596254322971797716843006400388E-6)
};
-static const long double Q[12] =
+static const _Float128 Q[12] =
{
- 3.940717212190338497730839731583397586124E4L,
- 2.626900195321832660448791748036714883242E5L,
- 7.777690340007566932935753241556479363645E5L,
- 1.347518538384329112529391120390701166528E6L,
- 1.514882452993549494932585972882995548426E6L,
- 1.158019977462989115839826904108208787040E6L,
- 6.132189329546557743179177159925690841200E5L,
- 2.248234257620569139969141618556349415120E5L,
- 5.605842085972455027590989944010492125825E4L,
- 9.147150349299596453976674231612674085381E3L,
- 9.104928120962988414618126155557301584078E2L,
- 4.839208193348159620282142911143429644326E1L
+ L(3.940717212190338497730839731583397586124E4),
+ L(2.626900195321832660448791748036714883242E5),
+ L(7.777690340007566932935753241556479363645E5),
+ L(1.347518538384329112529391120390701166528E6),
+ L(1.514882452993549494932585972882995548426E6),
+ L(1.158019977462989115839826904108208787040E6),
+ L(6.132189329546557743179177159925690841200E5),
+ L(2.248234257620569139969141618556349415120E5),
+ L(5.605842085972455027590989944010492125825E4),
+ L(9.147150349299596453976674231612674085381E3),
+ L(9.104928120962988414618126155557301584078E2),
+ L(4.839208193348159620282142911143429644326E1)
/* 1.000000000000000000000000000000000000000E0L, */
};
@@ -107,44 +107,44 @@ static const long double Q[12] =
* Theoretical peak relative error = 1.1e-35,
* relative peak error spread 1.1e-9
*/
-static const long double R[6] =
+static const _Float128 R[6] =
{
- 1.418134209872192732479751274970992665513E5L,
- -8.977257995689735303686582344659576526998E4L,
- 2.048819892795278657810231591630928516206E4L,
- -2.024301798136027039250415126250455056397E3L,
- 8.057002716646055371965756206836056074715E1L,
- -8.828896441624934385266096344596648080902E-1L
+ L(1.418134209872192732479751274970992665513E5),
+ L(-8.977257995689735303686582344659576526998E4),
+ L(2.048819892795278657810231591630928516206E4),
+ L(-2.024301798136027039250415126250455056397E3),
+ L(8.057002716646055371965756206836056074715E1),
+ L(-8.828896441624934385266096344596648080902E-1)
};
-static const long double S[6] =
+static const _Float128 S[6] =
{
- 1.701761051846631278975701529965589676574E6L,
- -1.332535117259762928288745111081235577029E6L,
- 4.001557694070773974936904547424676279307E5L,
- -5.748542087379434595104154610899551484314E4L,
- 3.998526750980007367835804959888064681098E3L,
- -1.186359407982897997337150403816839480438E2L
+ L(1.701761051846631278975701529965589676574E6),
+ L(-1.332535117259762928288745111081235577029E6),
+ L(4.001557694070773974936904547424676279307E5),
+ L(-5.748542087379434595104154610899551484314E4),
+ L(3.998526750980007367835804959888064681098E3),
+ L(-1.186359407982897997337150403816839480438E2)
/* 1.000000000000000000000000000000000000000E0L, */
};
-static const long double
+static const _Float128
/* log10(2) */
-L102A = 0.3125L,
-L102B = -1.14700043360188047862611052755069732318101185E-2L,
+L102A = L(0.3125),
+L102B = L(-1.14700043360188047862611052755069732318101185E-2),
/* log10(e) */
-L10EA = 0.5L,
-L10EB = -6.570551809674817234887108108339491770560299E-2L,
+L10EA = L(0.5),
+L10EB = L(-6.570551809674817234887108108339491770560299E-2),
/* sqrt(2)/2 */
-SQRTH = 7.071067811865475244008443621048490392848359E-1L;
+SQRTH = L(7.071067811865475244008443621048490392848359E-1);
/* Evaluate P[n] x^n + P[n-1] x^(n-1) + ... + P[0] */
-static long double
-neval (long double x, const long double *p, int n)
+static _Float128
+neval (_Float128 x, const _Float128 *p, int n)
{
- long double y;
+ _Float128 y;
p += n;
y = *p--;
@@ -159,10 +159,10 @@ neval (long double x, const long double *p, int n)
/* Evaluate x^n+1 + P[n] x^(n) + P[n-1] x^(n-1) + ... + P[0] */
-static long double
-deval (long double x, const long double *p, int n)
+static _Float128
+deval (_Float128 x, const _Float128 *p, int n)
{
- long double y;
+ _Float128 y;
p += n;
y = x + *p--;
@@ -176,25 +176,25 @@ deval (long double x, const long double *p, int n)
-long double
-__ieee754_log10l (long double x)
+_Float128
+__ieee754_log10l (_Float128 x)
{
- long double z;
- long double y;
+ _Float128 z;
+ _Float128 y;
int e;
int64_t hx, lx;
/* Test for domain */
GET_LDOUBLE_WORDS64 (hx, lx, x);
if (((hx & 0x7fffffffffffffffLL) | lx) == 0)
- return (-1.0L / (x - x));
+ return (-1 / fabsl (x)); /* log10l(+-0)=-inf */
if (hx < 0)
return (x - x) / (x - x);
if (hx >= 0x7fff000000000000LL)
return (x + x);
- if (x == 1.0L)
- return 0.0L;
+ if (x == 1)
+ return 0;
/* separate mantissa from exponent */
@@ -212,14 +212,14 @@ __ieee754_log10l (long double x)
if (x < SQRTH)
{ /* 2( 2x-1 )/( 2x+1 ) */
e -= 1;
- z = x - 0.5L;
- y = 0.5L * z + 0.5L;
+ z = x - L(0.5);
+ y = L(0.5) * z + L(0.5);
}
else
{ /* 2 (x-1)/(x+1) */
- z = x - 0.5L;
- z -= 0.5L;
- y = 0.5L * x + 0.5L;
+ z = x - L(0.5);
+ z -= L(0.5);
+ y = L(0.5) * x + L(0.5);
}
x = z / y;
z = x * x;
@@ -233,11 +233,11 @@ __ieee754_log10l (long double x)
if (x < SQRTH)
{
e -= 1;
- x = 2.0 * x - 1.0L; /* 2x - 1 */
+ x = 2.0 * x - 1; /* 2x - 1 */
}
else
{
- x = x - 1.0L;
+ x = x - 1;
}
z = x * x;
y = x * (z * neval (x, P, 12) / deval (x, Q, 11));