From 541428fecf21cdde271acbd280c53bfe5beaafe2 Mon Sep 17 00:00:00 2001 From: Marek Polacek Date: Thu, 12 Jul 2012 16:34:47 +0200 Subject: Fix ynl return value with LDBL_MIN. --- sysdeps/ieee754/ldbl-96/e_jnl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sysdeps/ieee754/ldbl-96/e_jnl.c') diff --git a/sysdeps/ieee754/ldbl-96/e_jnl.c b/sysdeps/ieee754/ldbl-96/e_jnl.c index 2e206e7e22..36b0d8ba44 100644 --- a/sysdeps/ieee754/ldbl-96/e_jnl.c +++ b/sysdeps/ieee754/ldbl-96/e_jnl.c @@ -360,7 +360,8 @@ __ieee754_ynl (int n, long double x) b = __ieee754_y1l (x); /* quit if b is -inf */ GET_LDOUBLE_WORDS (se, i0, i1, b); - for (i = 1; i < n && se != 0xffff; i++) + /* Use 0xffffffff since GET_LDOUBLE_WORDS sign-extends SE. */ + for (i = 1; i < n && se != 0xffffffff; i++) { temp = b; b = ((long double) (i + i) / x) * b - a; -- cgit 1.4.1