From f00faa4a43706d85ad8d4d2c970d3f52f0f63bfb Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 9 Jun 2016 18:04:30 +0000 Subject: Fix i386/x86_64 log2l (sNaN) (bug 20235). The i386/x86_64 versions of log2l return sNaN for sNaN input. This patch fixes them to add NaN inputs to themselves so that qNaN is returned in this case. Tested for x86_64 and x86. [BZ #20235] * sysdeps/i386/fpu/e_log2l.S (__ieee754_log2l): Add NaN input to itself. * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise. * math/libm-test.inc (log2_test_data): Add sNaN tests. --- sysdeps/x86_64/fpu/e_log2l.S | 1 + 1 file changed, 1 insertion(+) (limited to 'sysdeps/x86_64') diff --git a/sysdeps/x86_64/fpu/e_log2l.S b/sysdeps/x86_64/fpu/e_log2l.S index a063255..023ec29 100644 --- a/sysdeps/x86_64/fpu/e_log2l.S +++ b/sysdeps/x86_64/fpu/e_log2l.S @@ -63,6 +63,7 @@ ENTRY(__ieee754_log2l) jnz 4b // in case x is ħInf fstp %st(1) fstp %st(1) + fadd %st(0) ret END (__ieee754_log2l) -- cgit v1.1