path: root/libm
AgeCommit message (Collapse)Author
2010-10-30libm: fix rint/scalb testcase failuresDenys Vlasenko
These failures no longer happen: Failure: Test: scalb (2.0, 0.5) == NaN plus invalid exception Failure: Test: scalb (3.0, -2.5) == NaN plus invalid exception Failure: Test: rint (0.5) == 0.0 Failure: Test: rint (1.5) == 2.0 Failure: Test: rint (2.5) == 2.0 Failure: Test: rint (3.5) == 4.0 Failure: Test: rint (4.5) == 4.0 Failure: Test: rint (-0.5) == -0.0 Failure: Test: rint (-1.5) == -2.0 Failure: Test: rint (-2.5) == -2.0 Failure: Test: rint (-3.5) == -4.0 Failure: Test: rint (-4.5) == -4.0 Signed-off-by: Denys Vlasenko <>
2010-10-30libm: fix powf testcase failuresDenys Vlasenko
Fixed failures: Failure: Test: pow (1, NaN) == 1 Failure: Test: pow (1, inf) == 1 Failure: Test: pow (-1, inf) == 1 Failure: Test: pow (1, -inf) == 1 Failure: Test: pow (-1, -inf) == 1 Signed-off-by: Denys Vlasenko <>
2010-10-30libm: fix scalb testsuite failuresDenys Vlasenko
Signed-off-by: Denys Vlasenko <>
2010-10-30libm: fix testuite failure in modfDenys Vlasenko
This error is gone: Failure: Test: modf (NaN, &x) == NaN Result: is: -0.00000000000000000000e+00 -0 should be: nan nan Signed-off-by: Denys Vlasenko <>
2010-10-22libm/x86: use call instead of jump for wrappersTimo Teräs
GCC can emit prologue/epilogue code for the functions in various different cases: - frame pointers - PIC build (to load ebx for indirect calls/jumps) - forced stack smashing protection If we used jump in such cases, we'd corrupt the call stack and crash. Signed-off-by: Timo Teräs <> Signed-off-by: Denys Vlasenko <>
2010-06-24use uniform form of C99 keywordsBernhard Reutner-Fischer
Signed-off-by: Bernhard Reutner-Fischer <>
2010-06-15libm: typo fix NO_LONG_DOUBLE variant of gamma_rBernhard Reutner-Fischer
Signed-off-by: Bernhard Reutner-Fischer <>
2010-06-10libm: unbreak scalbn for 64-bit processorsRoman I Khimov
Obvious typo. Signed-off-by: Roman I Khimov <> Signed-off-by: Bernhard Reutner-Fischer <>
2010-06-10lgamma: fix sign handlingBernhard Reutner-Fischer
add testcase from Signed-off-by: Bernhard Reutner-Fischer <>
2010-06-10libm: unhide signgamRoman I Khimov
Fixes signgam checks in math tests on x86_64. It's R_X86_64_COPY for program, so the program didn't see any changes from libm. Signed-off-by: Roman I Khimov <> Signed-off-by: Bernhard Reutner-Fischer <>
2010-04-22nptl: proper soname handlingNatanael Copa
Since sublevel releases are not ABI compatible we need to adjust the soname to include the sublevel version. This makes it possible to install ABI incompatible versions of the library side by side so clean upgrades are possible. Signed-off-by: Natanael Copa <> Signed-off-by: Austin Foxley <>
2010-03-25prettify make cleanBernhard Reutner-Fischer
Signed-off-by: Bernhard Reutner-Fischer <>
2010-02-04libm: explain why some funcs are not implemented (yet)Bernhard Reutner-Fischer
Signed-off-by: Bernhard Reutner-Fischer <>
2010-02-04libm: enable log2f and exp2fAurelien Jacobs
Signed-off-by: Aurelien Jacobs <> Signed-off-by: Austin Foxley <>
2010-01-21rename exp(onent) to _expBernhard Reutner-Fischer
to avoid shadow warnings Signed-off-by: Bernhard Reutner-Fischer <>
2010-01-16rename exp(onent) to exBernhard Reutner-Fischer
to avoid shadow warnings Signed-off-by: Bernhard Reutner-Fischer <>
2009-11-19DO_XSI_MATH: add config knobBernhard Reutner-Fischer
Signed-off-by: Bernhard Reutner-Fischer <>
2009-11-15libm: use int_WRAPPER_C99 macroBernhard Reutner-Fischer
Signed-off-by: Bernhard Reutner-Fischer <>
2009-11-14Revert "libm: fix C99_MATH on __NO_LONG_DOUBLE_MATH hosts"Bernhard Reutner-Fischer
This reverts commit 73d6e5c41b61633e22ea74e3aa2df721512dca57. barking up the wrong tree Signed-off-by: Bernhard Reutner-Fischer <>
2009-11-14libm: fix C99_MATH on __NO_LONG_DOUBLE_MATH hostsBernhard Reutner-Fischer
alias l to their normal double counterparts. Works around problems with libgcc blindly calling __finitel on e.g. ppc32 Signed-off-by: Bernhard Reutner-Fischer <>
2009-09-18convert // comments to /**/; remove empty #if/#endif pairs. no code changesDenys Vlasenko
Signed-off-by: Denys Vlasenko <>
2009-08-30honour NO_LONG_DOUBLE_MATHBernhard Reutner-Fischer
This fixes compilation errors on hosts that turn off long double support for C99 like powerpc32. Signed-off-by: Khem Raj <> Signed-off-by: Bernhard Reutner-Fischer <>
2009-08-17support building out-of-treeBernhard Reutner-Fischer
Handle O= Signed-off-by: Bernhard Reutner-Fischer <>
2009-07-06Add a few missing includesRon
elf.h needs __BYTE_ORDER, and s_scalbn.c needs {LONG,INT}_MAX. shm.c complains about no prototypes for shm_{open,unlink} without its header. Signed-off-by: Ron Lee <> Signed-off-by: Mike Frysinger <>
2009-02-17libm/ reformat the list of wrappersDenis Vlasenko
so that it is easier to modify, sort, etc; use __ in filenames of wrappers which wrap __functions (it may be useful to have function and file names ALWAYS match); remove names of not implemented wrappers (it was generating useless empty .o files). libm/ldouble_wrappers.c: comment out the wrapper which is not compiled anyway test/math/compile_test.c: improve this test, it was optimizing out some calls, and we don't want that. No actual code changes.
2009-02-17test/math/compile_test.c: "are long double functions even compile/link?" testDenis Vlasenko
*: fix everything which prevents above from building
2009-02-14math.h: fix libm_hidden_proto leak into sanitized headersDenis Vlasenko
libm/s_nextafterf.c: use /* */ comments
2009-02-13- scalb{,f,l} depend on UCLIBC_SUSV3_LEGACYBernhard Reutner-Fischer
2009-02-13- use existing __stringify macroBernhard Reutner-Fischer
2009-02-11docs/probe_math_exception.c:Denis Vlasenko
update example libc/sysdeps/linux/i386/bits/mathinline.h: improve __finite() macro, add __finitef macro (why they aren't always macros? why aren't they arch independent?) libm/math_private.h: much better comments on math_opt_barrier() and math_force_eval() libm/s_finite[f].c: improve out-of-line __finite[f]() too (one byte less, yay...)
2009-02-09ldouble_wrappers.c: add long and long long optimized wrappersDenis Vlasenko
float_wrappers.c: add xxxWRAPPER1(func) macros. no code changes, but makes this file much shorter. text data bss dec hex filename - 42504 188 4 42696 a6c8 lib/ + 42488 188 4 42680 a6b8 lib/
2009-02-09Hand-optimize wrappers on i386:Denis Vlasenko
-83 ec 10 sub $0x10,%esp -db 6c 24 14 fldt 0x14(%esp) -dd 5c 24 08 fstpl 0x8(%esp) -dd 44 24 08 fldl 0x8(%esp) -dd 1c 24 fstpl (%esp) -e8 fc ff ff ff call __GI_trunc -83 c4 10 add $0x10,%esp +db 6c 24 04 fldt 0x4(%esp) +dd 5c 24 04 fstpl 0x4(%esp) +e9 fc ff ff ff jmp __GI_trunc c3 ret text data bss dec hex filename - 42749 176 4 42929 a7b1 lib/ + 42085 176 4 42265 a519 lib/
2009-02-09ldouble_wrappers.c: fix __signbitl, it was calling itself by mistake.Denis Vlasenko
remove wrong casts to long double of long return values. remove lots of empty lines.
2009-02-08nextafterf: trying to correct FP exception handlingDenis Vlasenko
2009-02-06libm/s_nextafterf.c: forgot to "svn add" itDenis Vlasenko
2009-02-06fix nextafterf. by Jie Zhang (jie.zhang AT Vlasenko
2009-02-05libm: add scalbf, gammaf, significandf wrappers.Denis Vlasenko
This makes in possible to enable test/math (not it compiles, but has lots of test failures).
2009-02-02libm/ldouble_wrappers.c: add libm_hidden_def's to fix testsuite buildDenis Vlasenko
test/Rules.mak: don't pass target options to host build test/math/basic-test.c: fix test build error patching file test/unistd/errno.c: fix test build warning
2009-01-20ldouble_wrappers.c: remove erroneous libm_hidden_def'sDenis Vlasenko
2009-01-14libm_sh: fix libm build for shCarmelo Amoroso
Signed-off-by: Carmelo Amoroso <>
2009-01-14libm_sh: Re-added sh specific files erroneously removed recently,Carmelo Amoroso
and moved under a better folder. Signed-off-by: Carmelo Amoroso <>
2009-01-04forgot to remove one #endif...Denis Vlasenko
2009-01-03libm/e_scalb.c: remove unused #ifdef _SCALB_INT branchesDenis Vlasenko
libm/s_ldexp.c: add TODO
2009-01-03fix small goof in last commit: should use "long" function (scalbln)Denis Vlasenko
as a main one, not "int" one (scalbn).
2009-01-03libm: remove scalbln implementation, it seems to be less correct than scalbn.Denis Vlasenko
instead, either alias scalbln to scalbn if int == long on this arch, or just call scalbn form scalbln. text data bss dec hex filename - 45297 180 4 45481 b1a9 lib/ + 44969 180 4 45153 b061 lib/
2008-12-29libm/e_lgamma_r.c: cosmetic whitespace fixesDenis Vlasenko
2008-12-29libm/*: delete many incarnations of logarithmic gamma function,Denis Vlasenko
aliasing them instead af appropriate. Also alias drem to remainder. text data bss dec hex filename - 43568 176 4 43748 aae4 lib/ + 43444 176 4 43624 aa68 lib/
2008-12-29libm/s_nearbyint.c: delete (forgot to do it in prev commit)Denis Vlasenko
libm/*.c: minor style tweaks, no code changes
2008-12-29- expand SUSv3_LEGACYBernhard Reutner-Fischer
- SUSv4_LEGACY part #1 (non-networking)
2008-12-28remove many functions which just call __ieee754_<function>,Denis Vlasenko
define them as aliases instead. text data bss dec hex filename - 45402 180 4 45586 b212 lib/ + 45302 180 4 45486 b1ae lib/