about summary refs log tree commit diff
path: root/NEWS
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2015-02-24 17:30:02 +0000
committerJoseph Myers <joseph@codesourcery.com>2015-02-24 17:30:02 +0000
commit9438b237abca11de201dd10483717299eafb1f0b (patch)
treeeb70d51aaa288f93cb7f365c2221dc1c08343ad7 /NEWS
parent6909d2767580b680138a6aa49aabf4976770e9f6 (diff)
downloadglibc-9438b237abca11de201dd10483717299eafb1f0b.tar.gz
glibc-9438b237abca11de201dd10483717299eafb1f0b.tar.xz
glibc-9438b237abca11de201dd10483717299eafb1f0b.zip
Fix x86/x86_64 scalb (qNaN, -Inf) (bug 16783).
Various x86 / x86_64 versions of scalb / scalbf / scalbl produce
spurious "invalid" exceptions for (qNaN, -Inf) arguments, because this
is wrongly handled like (+/-Inf, -Inf) which *should* raise such an
exception.  (In fact the NaN case of the code determining whether to
quietly return a zero or a NaN for second argument -Inf was
accidentally dead since the code had been made to return a NaN with
exception.)  This patch fixes the code to do the proper test for an
infinity as distinct from a NaN.

(Since the existing code does nothing to distinguish qNaNs and sNaNs
here, this patch doesn't either.  If in future we systematically
implement proper sNaN semantics following TS 18661-1:2014, there will
be lots of bugs to address - Thomas found lots of issues with his
patch <https://sourceware.org/ml/libc-ports/2013-04/msg00008.html> to
add SNaN tests (which never went in and would now require significant
reworking).)

Tested for x86_64 and x86.  Committed.

	[BZ #16783]
	* sysdeps/i386/fpu/e_scalb.S (__ieee754_scalb): Do not handle
	arguments (NaN, -Inf) the same as (+/-Inf, -Inf).
	* sysdeps/i386/fpu/e_scalbf.S (__ieee754_scalbf): Likewise.
	* sysdeps/i386/fpu/e_scalbl.S (__ieee754_scalbl): Likewise.
	* sysdeps/x86_64/fpu/e_scalbl.S (__ieee754_scalbl): Likewise.
	* math/libm-test.inc (scalb_test_data): Add more tests.
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS6
1 files changed, 3 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index 3f005fedaf..f1127a041e 100644
--- a/NEWS
+++ b/NEWS
@@ -9,9 +9,9 @@ Version 2.22
 
 * The following bugs are resolved with this release:
 
-  4719, 14841, 13064, 14094, 15319, 15467, 15790, 16560, 17269, 17523,
-  17569, 17588, 17792, 17836, 17912, 17916, 17932, 17944, 17949, 17964,
-  17965, 17967, 17969, 17978, 17987, 17991, 17996, 17998, 17999.
+  4719, 14841, 13064, 14094, 15319, 15467, 15790, 16560, 16783, 17269,
+  17523, 17569, 17588, 17792, 17836, 17912, 17916, 17932, 17944, 17949,
+  17964, 17965, 17967, 17969, 17978, 17987, 17991, 17996, 17998, 17999.
 
 * Character encoding and ctype tables were updated to Unicode 7.0.0, using
   new generator scripts contributed by Pravin Satpute and Mike FABIAN (Red