From eca1c35e5be967478c8fe9381c6f4652b6645d5e Mon Sep 17 00:00:00 2001 From: nsz Date: Mon, 19 Mar 2012 18:52:17 +0100 Subject: remove long double const workarounds Some long double consts were stored in two doubles as a workaround for x86_64 and i386 with the following comment: /* Long double constants are slow on these arches, and broken on i386. */ This is most likely old gcc bug related to the default x87 fpu precision setting (it's double instead of double extended on BSD). --- src/math/acosl.c | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) (limited to 'src/math/acosl.c') diff --git a/src/math/acosl.c b/src/math/acosl.c index 510e16f1..170520fe 100644 --- a/src/math/acosl.c +++ b/src/math/acosl.c @@ -25,20 +25,8 @@ long double acosl(long double x) #include "__invtrigl.h" static const long double -one = 1.00000000000000000000e+00; - -// FIXME -//#ifdef __i386__ -/* XXX Work around the fact that gcc truncates long double constants on i386 */ -static const volatile double -pi1 = 3.14159265358979311600e+00, /* 0x1.921fb54442d18p+1 */ -pi2 = 1.22514845490862001043e-16; /* 0x1.1a80000000000p-53 */ -#define pi ((long double)pi1 + pi2) -//#else -#if 0 -static const long double +one = 1.00000000000000000000e+00, pi = 3.14159265358979323846264338327950280e+00L; -#endif long double acosl(long double x) { -- cgit v1.2.3-70-g09d2