| Index: fusl/src/math/acoshf.c
|
| diff --git a/fusl/src/math/acoshf.c b/fusl/src/math/acoshf.c
|
| index 8a4ec4d57ead3cbcd473d2ddfdd43d910956f1b9..e7896cd9a8b22cde718733d148ae056ea446b019 100644
|
| --- a/fusl/src/math/acoshf.c
|
| +++ b/fusl/src/math/acoshf.c
|
| @@ -1,26 +1,28 @@
|
| #include "libm.h"
|
|
|
| -#if FLT_EVAL_METHOD==2
|
| +#if FLT_EVAL_METHOD == 2
|
| #undef sqrtf
|
| #define sqrtf sqrtl
|
| -#elif FLT_EVAL_METHOD==1
|
| +#elif FLT_EVAL_METHOD == 1
|
| #undef sqrtf
|
| #define sqrtf sqrt
|
| #endif
|
|
|
| /* acosh(x) = log(x + sqrt(x*x-1)) */
|
| -float acoshf(float x)
|
| -{
|
| - union {float f; uint32_t i;} u = {x};
|
| - uint32_t a = u.i & 0x7fffffff;
|
| +float acoshf(float x) {
|
| + union {
|
| + float f;
|
| + uint32_t i;
|
| + } u = {x};
|
| + uint32_t a = u.i & 0x7fffffff;
|
|
|
| - if (a < 0x3f800000+(1<<23))
|
| - /* |x| < 2, invalid if x < 1 or nan */
|
| - /* up to 2ulp error in [1,1.125] */
|
| - return log1pf(x-1 + sqrtf((x-1)*(x-1)+2*(x-1)));
|
| - if (a < 0x3f800000+(12<<23))
|
| - /* |x| < 0x1p12 */
|
| - return logf(2*x - 1/(x+sqrtf(x*x-1)));
|
| - /* x >= 0x1p12 */
|
| - return logf(x) + 0.693147180559945309417232121458176568f;
|
| + if (a < 0x3f800000 + (1 << 23))
|
| + /* |x| < 2, invalid if x < 1 or nan */
|
| + /* up to 2ulp error in [1,1.125] */
|
| + return log1pf(x - 1 + sqrtf((x - 1) * (x - 1) + 2 * (x - 1)));
|
| + if (a < 0x3f800000 + (12 << 23))
|
| + /* |x| < 0x1p12 */
|
| + return logf(2 * x - 1 / (x + sqrtf(x * x - 1)));
|
| + /* x >= 0x1p12 */
|
| + return logf(x) + 0.693147180559945309417232121458176568f;
|
| }
|
|
|