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).
This commit is contained in:
nsz
2012-03-19 18:52:17 +01:00
parent 9a810cb685
commit eca1c35e5b
6 changed files with 2 additions and 79 deletions

View File

@ -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)
{