From ed41ffefc3f947f14d565ea8d239ff2d31f6a7fe Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 9 May 2013 21:30:08 +0000 Subject: Fix ldbl-128ibm cos range reduction near pi/2 (bug 15359). --- sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'sysdeps/ieee754') diff --git a/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c b/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c index 692ae24930..6a72d6a853 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c @@ -185,13 +185,13 @@ static const int32_t two_over_pi[] = { }; static const long double c[] = { -/* 93 bits of pi/2 */ +/* 106 bits of pi/2 */ #define PI_2_1 c[0] - 1.57079632679489661923132169155131424e+00L, /* 3fff921fb54442d18469898cc5100000 */ + 0x1.921fb54442d18469898cc517018p+0L, /* pi/2 - PI_2_1 */ #define PI_2_1t c[1] - 8.84372056613570112025531863263659260e-29L, /* 3fa1c06e0e68948127044533e63a0106 */ + 0x3.839a252049c1114cf98e804178p-108L, }; int32_t __ieee754_rem_pio2l(long double x, long double *y) @@ -216,7 +216,7 @@ int32_t __ieee754_rem_pio2l(long double x, long double *y) { if (hx > 0) { - /* 113 + 93 bit PI is ok */ + /* 106 + 106 bit PI is ok */ z = x - PI_2_1; y[0] = z - PI_2_1t; y[1] = (z - y[0]) - PI_2_1t; @@ -224,7 +224,7 @@ int32_t __ieee754_rem_pio2l(long double x, long double *y) } else { - /* 113 + 93 bit PI is ok */ + /* 106 + 106 bit PI is ok */ z = x + PI_2_1; y[0] = z + PI_2_1t; y[1] = (z - y[0]) + PI_2_1t; -- cgit 1.4.1