diff options
author | das <das@FreeBSD.org> | 2011-10-15 05:23:28 +0000 |
---|---|---|
committer | das <das@FreeBSD.org> | 2011-10-15 05:23:28 +0000 |
commit | 2772ec758e6fb6c0bdaa3e30a268816e754de5a7 (patch) | |
tree | 6e08a27c033177faa9b6884dbf874ac1394faf48 /lib/libc/stdlib/strtoumax.c | |
parent | 915e8563c491314be373b178530a250e60c1219c (diff) | |
download | FreeBSD-src-2772ec758e6fb6c0bdaa3e30a268816e754de5a7.zip FreeBSD-src-2772ec758e6fb6c0bdaa3e30a268816e754de5a7.tar.gz |
Various changes to improve the accuracy and speed of log{2,10}{,f}.
- Rename __kernel_log() to k_log1p().
- Move some of the work that was previously done in the kernel log into
the callers. This enables further refactoring to improve accuracy or
speed, although I don't recall the details.
- Use extra precision when adding the final scaling term, which improves
accuracy.
- Describe and work around compiler problems that break some of the
multiprecision calculations.
A fix for a small bug is also included:
- Add a special case for log*(1). This is needed to ensure that log*(1) == +0
instead of -0, even when the rounding mode is FE_DOWNWARD.
Submitted by: bde
Diffstat (limited to 'lib/libc/stdlib/strtoumax.c')
0 files changed, 0 insertions, 0 deletions