Print this page
11210 libm should be cstyle(1ONBLD) clean

*** 20,29 **** --- 20,30 ---- */ /* * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ + /* * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */
*** 54,121 **** static long double neg(long double, int *); static long double poly(long double, const long double *, int); static long double polytail(long double); static long double primary(long double); ! static const long double ! c0 = 0.0L, ! ch = 0.5L, ! c1 = 1.0L, ! c2 = 2.0L, ! c3 = 3.0L, ! c4 = 4.0L, ! c5 = 5.0L, ! c6 = 6.0L, ! pi = 3.1415926535897932384626433832795028841971L, ! tiny = 1.0e-40L; long double ! __k_lgammal(long double x, int *signgamlp) { ! long double t,y; int i; /* purge off +-inf, NaN and negative arguments */ ! if (!finitel(x)) return x*x; *signgamlp = 1; ! if (signbitl(x)) return (neg(x,signgamlp)); /* for x < 8.0 */ ! if (x<8.0L) { y = anintl(x); ! i = (int) y; ! switch(i) { case 0: ! if (x<1.0e-40L) return -logl(x); else ! return (primary(x)-log1pl(x))-logl(x); case 1: ! return primary(x-y)-logl(x); case 2: ! return primary(x-y); case 3: ! return primary(x-y)+logl(x-c1); case 4: ! return primary(x-y)+logl((x-c1)*(x-c2)); case 5: ! return primary(x-y)+logl((x-c1)*(x-c2)*(x-c3)); case 6: ! return primary(x-y)+logl((x-c1)*(x-c2)*(x-c3)*(x-c4)); case 7: ! return primary(x-y)+logl((x-c1)*(x-c2)*(x-c3)*(x-c4)*(x-c5)); case 8: ! return primary(x-y)+ ! logl((x-c1)*(x-c2)*(x-c3)*(x-c4)*(x-c5)*(x-c6)); } } /* 8.0 <= x < 1.0e40 */ if (x < 1.0e40L) { t = logl(x); ! return x*(t-c1)-(ch*t-polytail(c1/x)); } /* 1.0e40 <= x <= inf */ ! return x*(logl(x)-c1); } static const long double an1[] = { /* 20 terms */ -0.0772156649015328606065120900824024309741L, 3.224670334241132182362075833230130289059e-0001L, --- 55,134 ---- static long double neg(long double, int *); static long double poly(long double, const long double *, int); static long double polytail(long double); static long double primary(long double); ! static const long double c0 = 0.0L, ! ch = 0.5L, ! c1 = 1.0L, ! c2 = 2.0L, ! c3 = 3.0L, ! c4 = 4.0L, ! c5 = 5.0L, ! c6 = 6.0L, ! pi = 3.1415926535897932384626433832795028841971L, ! tiny = 1.0e-40L; long double ! __k_lgammal(long double x, int *signgamlp) ! { ! long double t, y; int i; /* purge off +-inf, NaN and negative arguments */ ! if (!finitel(x)) ! return (x * x); ! *signgamlp = 1; ! ! if (signbitl(x)) ! return (neg(x, signgamlp)); /* for x < 8.0 */ ! if (x < 8.0L) { y = anintl(x); ! i = (int)y; ! ! switch (i) { case 0: ! ! if (x < 1.0e-40L) ! return (-logl(x)); ! else ! return ((primary(x) - log1pl(x)) - logl(x)); ! case 1: ! return (primary(x - y) - logl(x)); case 2: ! return (primary(x - y)); case 3: ! return (primary(x - y) + logl(x - c1)); case 4: ! return (primary(x - y) + logl((x - c1) * (x - c2))); case 5: ! return (primary(x - y) + logl((x - c1) * (x - c2) * (x - ! c3))); case 6: ! return (primary(x - y) + logl((x - c1) * (x - c2) * (x - ! c3) * (x - c4))); case 7: ! return (primary(x - y) + logl((x - c1) * (x - c2) * (x - ! c3) * (x - c4) * (x - c5))); case 8: ! return (primary(x - y) + logl((x - c1) * (x - c2) * (x - ! c3) * (x - c4) * (x - c5) * (x - c6))); } } /* 8.0 <= x < 1.0e40 */ if (x < 1.0e40L) { t = logl(x); ! return (x * (t - c1) - (ch * t - polytail(c1 / x))); } /* 1.0e40 <= x <= inf */ ! return (x * (logl(x) - c1)); } static const long double an1[] = { /* 20 terms */ -0.0772156649015328606065120900824024309741L, 3.224670334241132182362075833230130289059e-0001L,
*** 296,330 **** 2.961350193868935325526962209019387821584e-0008L, -2.834602215195368130104649234505033159842e-0009L, }; static long double ! primary(long double s) { /* assume |s|<=0.5 */ int i; ! i = (int) (8.0L * (s + 0.5L)); ! switch(i) { ! case 0: return ch*s+s*poly(s,an4,21); ! case 1: return ch*s+s*poly(s,an3,20); ! case 2: return ch*s+s*poly(s,an2,20); ! case 3: return ch*s+s*poly(s,an1,20); ! case 4: return ch*s+s*poly(s,ap1,19); ! case 5: return ch*s+s*poly(s,ap2,19); ! case 6: return ch*s+s*poly(s,ap3,19); ! case 7: return ch*s+s*poly(s,ap4,19); } /* NOTREACHED */ ! return 0.0L; } static long double ! poly(long double s, const long double *p, int n) { long double y; int i; ! y = p[n-1]; ! for (i=n-2;i>=0;i--) y = p[i]+s*y; ! return y; } static const long double pt[] = { 9.189385332046727417803297364056176804663e-0001L, 8.333333333333333333333333333331286969123e-0002L, --- 309,359 ---- 2.961350193868935325526962209019387821584e-0008L, -2.834602215195368130104649234505033159842e-0009L, }; static long double ! primary(long double s) /* assume |s|<=0.5 */ ! { int i; ! i = (int)(8.0L * (s + 0.5L)); ! ! switch (i) { ! case 0: ! return (ch * s + s * poly(s, an4, 21)); ! case 1: ! return (ch * s + s * poly(s, an3, 20)); ! case 2: ! return (ch * s + s * poly(s, an2, 20)); ! case 3: ! return (ch * s + s * poly(s, an1, 20)); ! case 4: ! return (ch * s + s * poly(s, ap1, 19)); ! case 5: ! return (ch * s + s * poly(s, ap2, 19)); ! case 6: ! return (ch * s + s * poly(s, ap3, 19)); ! case 7: ! return (ch * s + s * poly(s, ap4, 19)); } + /* NOTREACHED */ ! return (0.0L); } static long double ! poly(long double s, const long double *p, int n) ! { long double y; int i; ! ! y = p[n - 1]; ! ! for (i = n - 2; i >= 0; i--) ! y = p[i] + s * y; ! ! return (y); } static const long double pt[] = { 9.189385332046727417803297364056176804663e-0001L, 8.333333333333333333333333333331286969123e-0002L,
*** 346,368 **** 7.316526934569686459641438882340322673357e+0007L, -3.806450279064900548836571789284896711473e+0008L, }; static long double ! polytail(long double s) { ! long double t,z; int i; ! z = s*s; t = pt[18]; ! for (i=17;i>=1;i--) t = pt[i]+z*t; ! return pt[0]+s*t; } static long double ! neg(long double z, int *signgamlp) { ! long double t,p; /* * written by K.C. Ng, Feb 2, 1989. * * Since * -z*G(-z)*G(z) = pi/sin(pi*z), --- 375,404 ---- 7.316526934569686459641438882340322673357e+0007L, -3.806450279064900548836571789284896711473e+0008L, }; static long double ! polytail(long double s) ! { ! long double t, z; int i; ! ! z = s * s; t = pt[18]; ! ! for (i = 17; i >= 1; i--) ! t = pt[i] + z * t; ! ! return (pt[0] + s * t); } static long double ! neg(long double z, int *signgamlp) ! { ! long double t, p; + /* BEGIN CSTYLED */ /* * written by K.C. Ng, Feb 2, 1989. * * Since * -z*G(-z)*G(z) = pi/sin(pi*z),
*** 380,397 **** * return -log(z); * else * return log(pi/(t*z))-lgamma(z); * */ t = sinpil(z); /* t := sin(pi*z) */ if (t == c0) /* return 1.0/0.0 = +INF */ ! return c1/c0; z = -z; ! if (z<=tiny) p = -logl(z); else ! p = logl(pi/(fabsl(t)*z))-__k_lgammal(z,signgamlp); ! if (t<c0) *signgamlp = -1; ! return p; } --- 416,439 ---- * return -log(z); * else * return log(pi/(t*z))-lgamma(z); * */ + /* END CSTYLED */ t = sinpil(z); /* t := sin(pi*z) */ + if (t == c0) /* return 1.0/0.0 = +INF */ ! return (c1 / c0); z = -z; ! ! if (z <= tiny) p = -logl(z); else ! p = logl(pi / (fabsl(t) * z)) - __k_lgammal(z, signgamlp); ! ! if (t < c0) ! *signgamlp = -1; ! ! return (p); }