The ldbl-128 implementations of j0l, j1l, y0l, y1l (also used for
ldbl-128ibm) return an sNaN argument unchanged. This patch fixes them
to add a NaN argument to itself to quiet it before return.
Tested for mips64.
[BZ #20151]
* sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_j0l): Add NaN
argument to itself before returning result.
(__ieee754_y0l): Likewise.
* sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_j1l): Likewise.
(__ieee754_y1l).
2016-05-26 Joseph Myers <joseph@codesourcery.com>
+ [BZ #20151]
+ * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_j0l): Add NaN
+ argument to itself before returning result.
+ (__ieee754_y0l): Likewise.
+ * sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_j1l): Likewise.
+ (__ieee754_y1l).
+
* math/libm-test.inc (acosh_test_data): Add sNaN tests.
(atan_test_data): Likewise.
(ceil_test_data): Likewise.
if (! isfinite (x))
{
if (x != x)
- return x;
+ return x + x;
else
return 0.0L;
}
if (! isfinite (x))
{
if (x != x)
- return x;
+ return x + x;
else
return 0.0L;
}
if (! isfinite (x))
{
if (x != x)
- return x;
+ return x + x;
else
return 0.0L;
}
if (! isfinite (x))
{
if (x != x)
- return x;
+ return x + x;
else
return 0.0L;
}