aboutsummaryrefslogtreecommitdiff
path: root/NEWS
diff options
context:
space:
mode:
authorWilco Dijkstra <wdijkstr@arm.com>2015-09-18 16:30:43 +0100
committerWilco Dijkstra <wdijkstr@arm.com>2015-09-18 16:34:45 +0100
commit8df4e219e43a4a257d0759b54fef8c488e2f282e (patch)
treefd17e1976bc8fb5443476300f9bcf9645de920a9 /NEWS
parentcb2f668d4692df8d31b2ccf9b18b86bebe2d9174 (diff)
downloadglibc-8df4e219e43a4a257d0759b54fef8c488e2f282e.zip
glibc-8df4e219e43a4a257d0759b54fef8c488e2f282e.tar.gz
glibc-8df4e219e43a4a257d0759b54fef8c488e2f282e.tar.bz2
Add inlining of the C99 math functions isinf/isnan/signbit/isfinite/isnormal/fpclassify using GCC
built-ins when available. Since going through the PLT is expensive for these small functions, inlining results in major speedups (about 7x on Cortex-A57 for isinf). The GCC built-ins are not correct if signalling NaN support is required, and thus are turned off in that case (see GCC bug 66462). The test-snan.c tests sNaNs and so must be explicitly built with -fsignaling-nans. 2015-09-18 Wilco Dijkstra <wdijkstr@arm.com> [BZ #15367] [BZ #17441] * math/Makefile: Build test-snan.c with -fsignaling-nans. * math/math.h (fpclassify): Use __builtin_fpclassify when available. (signbit): Use __builtin_signbit(f/l). (isfinite): Use__builtin_isfinite. (isnormal): Use __builtin_isnormal. (isnan): Use __builtin_isnan. (isinf): Use __builtin_isinf_sign.
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS15
1 files changed, 8 insertions, 7 deletions
diff --git a/NEWS b/NEWS
index 6a69bdb..8f487fa 100644
--- a/NEWS
+++ b/NEWS
@@ -9,13 +9,14 @@ Version 2.23
* The following bugs are resolved with this release:
- 2542, 2543, 2558, 2898, 4404, 6803, 14341, 14912, 15384, 15786, 15918,
- 16141, 16296, 16415, 16517, 16519, 16520, 16521, 16734, 16973, 16985,
- 17118, 17243, 17244, 17787, 17886, 17887, 17905, 18084, 18086, 18240,
- 18265, 18370, 18421, 18480, 18525, 18595, 18610, 18618, 18647, 18661,
- 18674, 18675, 18681, 18757, 18778, 18781, 18787, 18789, 18790, 18795,
- 18796, 18820, 18823, 18824, 18857, 18863, 18870, 18872, 18873, 18875,
- 18887, 18921, 18951, 18952, 18961, 18966, 18967, 18970, 18977.
+ 2542, 2543, 2558, 2898, 4404, 6803, 14341, 14912, 15367, 15384, 15786,
+ 15918, 16141, 16296, 16415, 16517, 16519, 16520, 16521, 16734, 16973,
+ 16985, 17118, 17243, 17244, 17441, 17787, 17886, 17887, 17905, 18084,
+ 18086, 18240, 18265, 18370, 18421, 18480, 18525, 18595, 18610, 18618,
+ 18647, 18661, 18674, 18675, 18681, 18757, 18778, 18781, 18787, 18789,
+ 18790, 18795, 18796, 18820, 18823, 18824, 18857, 18863, 18870, 18872,
+ 18873, 18875, 18887, 18921, 18951, 18952, 18961, 18966, 18967, 18970,
+ 18977.
* The obsolete header <regexp.h> has been removed. Programs that require
this header must be updated to use <regex.h> instead.