Jozef Lawrynowicz
7db203304e
Remove HUGE_VAL definition from libm math functions
...
This patch removes the definitions of HUGE_VAL from some of the float math
functions. HUGE_VAL is defined in newlib/libc/include/math.h, so it is not
necessary to have a further definition in the math functions.
2019-01-23 10:46:30 +01:00
Jozef Lawrynowicz
b14a879d85
Remove matherr, and SVID and X/Open math library configurations
...
Default math library configuration is now IEEE
2019-01-23 10:46:24 +01:00
Szabolcs Nagy
fb929067db
New exp and exp2 implementations
...
The new implementations are provided under !__OBSOLETE_MATH, they use
ISO C99 code. There are several settings, with the default one the
worst case error in nearest rounding mode is 0.509 ULP for exp and
0.507 ULP for exp2 when a multiply and add is contracted into an fma.
They use a shared 2 KB lookup table, on aarch64 .text+.rodata size
of libm.a is increased by 1868 bytes. The w_*.c wrappers are disabled
for the new code as it takes care of error handling inline.
The old exp2(x) code used to be just pow(2,x) so the speedup there
is more significant.
The file name has no special prefix to avoid any name collision with
existing files.
Improvements on Cortex-A72:
exp latency: 3.2x
exp thruput: 4.1x
exp2 latency: 7.8x
exp2 thruput: 18.8x
2018-06-27 15:40:49 +02:00
Yaakov Selkowitz
ec4c079f4b
math: remove TRAD_SYNOPSIS
...
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
2017-12-01 03:41:53 -06:00
Jeff Johnston
76a7df5256
2003-10-20 Bob Wilson <bob.wilson@acm.org>
...
* libc/locale/locale.c: Use double quotes in code.
* libc/locale/locale.tex: Likewise.
* libc/libc.texinfo: Hyphenate "floating-point".
* libc/machine/necv70/necv70.tex: Likewise.
* libc/stdio/sprintf.c: Likewise.
* libc/stdio/sscanf.c: Likewise.
* libc/stdlib/atof.c: Likewise.
* libc/stdlib/ldtoa.c: Fix comment typo.
* libc/stdlib/div.c: Use @ifnottex instead of @ifinfo.
* libc/stdlib/ldiv.c: Likewise.
* libm/common/s_expm1.c: Likewise.
* libm/common/s_ilogb.c: Hyphenate "floating-point". Use "nonzero".
* libm/common/s_infinity: Hyphenate "double- and single-precision".
* libm/common/s_nan.c: Likewise. Also correct the FUNCTION summary.
* libm/common/s_nextafter.c: Fix typo. Hyphenate "double-precision"
and "floating-point".
* libm/common/s_scalbn.c: Correct the FUNCTION summary.
* libm/math/e_pow.c: Fix comment typo.
* libm/math/math.tex: Hyphenate "single-precision" and "floating-point".
* libm/math/s_asinh.c: Use @ifnottex instead of @ifinfo.
* libm/math/s_atan.c: Likewise.
* libm/math/s_frexp.c: Likewise. Also use "nonzero".
* libm/math/s_isnan.c: Hyphenate "single-precision" and
"floating-point". Use "nonzero".
* libm/math/s_ldexp.c: Use @ifnottex instead of @ifinfo.
* libm/math/w_acos.c: Likewise.
* libm/math/w_acosh.c: Likewise.
* libm/math/w_asin.c: Likewise.
* libm/math/w_atan2.c: Likewise.
* libm/math/w_atanh.c: Likewise.
* libm/math/w_cosh.c: Likewise.
* libm/math/w_exp.c: Likewise.
* libm/math/w_exp2.c: Likewise. Add missing @end and missing @tex
version of 2^x in the description.
* libm/math/w_fmod.c: Use @ifnottex instead of @ifinfo.
* libm/math/w_gamma.c: Likewise.
* libm/math/w_hypot.c: Likewise.
* libm/math/w_j0.c: Likewise.
* libm/math/w_sinh.c: Likewise.
* libm/math/w_pow.c: Replace "exp1.0nt" with "exponent".
* libm/mathfp/mathfp.tex: Hyphenate "single-precision" and
"floating-point".
* libm/mathfp/e_acosh.c: Use @ifnottex instead of @ifinfo.
* libm/mathfp/e_atanh.c: Likewise.
* libm/mathfp/e_hypot.c: Likewise.
* libm/mathfp/er_lgamma.c: Likewise.
* libm/mathfp/s_acos.c: Likewise.
* libm/mathfp/s_asine.c: Likewise.
* libm/mathfp/s_asinh.c: Likewise.
* libm/mathfp/s_atan.c: Likewise.
* libm/mathfp/s_atan2.c: Likewise.
* libm/mathfp/s_atangent.c: Likewise.
* libm/mathfp/s_cosh.c: Likewise.
* libm/mathfp/s_exp.c: Likewise.
* libm/mathfp/s_fmod.c: Likewise.
* libm/mathfp/s_frexp.c: Likewise. Also use "nonzero".
* libm/mathfp/s_isnan.c: Hyphenate "single-precision" and
"floating-point". Use "nonzero".
* libm/math/s_pow.c: Replace "exp1.0nt" with "exponent".
* libm/mathfp/s_ldexp.c: Use @ifnottex instead of @ifinfo.
* libm/mathfp/s_sineh.c: Likewise.
* libm/mathfp/w_jn.c: Likewise.
2003-10-20 18:46:38 +00:00
Christopher Faylor
8a0efa53e4
import newlib-2000-02-17 snapshot
2000-02-17 19:39:52 +00:00