summaryrefslogtreecommitdiffstats
path: root/regress/lib/libm (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove echo headlines.bluhm2020-12-171-2/+1
|
* Add test for ilogb(3).kettenis2020-11-072-1/+85
|
* Disable FP exception masking tests on armv7 and arm64. ARM hardware doesn'tkettenis2020-10-191-1/+6
| | | | implement this feature.
* s/__arm64__/__aarch64__/gkettenis2019-12-211-3/+3
| | | | It helps when you commit from the machine you actually tested on.
* Disable FP exception masking tests on armv7 and arm64. ARM hardware doesn'tkettenis2019-12-211-1/+6
| | | | | | implement this feature. ok blum@ (a while back)
* For ia32 use a volatile double to force 64 bit rounding. Otherwisebluhm2019-02-221-4/+8
| | | | | the i387 would use its internal 80 bit stack. This fixes getround() on i386.
* Remove the #ifdef i386 special test, it does not compile there.bluhm2019-02-211-9/+1
|
* Replace the print "not ok" with an assert macro. This is consistentbluhm2019-02-214-45/+32
| | | | | to the other tests and causes a regress fail. Fix RCS Id. from Moritz Buhl
* Link msun regress to build.bluhm2019-02-211-2/+2
|
* Copy tests for our libm implementation from FreeBSD. Only passingbluhm2019-02-215-0/+1056
| | | | | | tests are included, the others need some fixes in the library first. Hopefully these tests will help us to find compiler bugs earlier. from Moritz Buhl
* machine/fpu.h is not needed on amd64 and does not exist on i386.bluhm2018-07-101-2/+1
| | | | Remove the include.
* Clear the part of fenv that is modified by old AMD Opteron duringbluhm2018-07-091-2/+7
| | | | | process startup. from guenther@
* Implement sicos(3), sincosf(3) and sincosl(3). These functions are commonkettenis2018-03-105-4/+2769
| | | | | | | extensions and modern compilers (such as clang) will use them to optimize separate calculations of sine and cosine. ok tom@, patrick@, deraadt@, jmc@
* Clang does not support -ffloat-store, so libm fenv test failed onbluhm2017-08-072-7/+12
| | | | | | | | i386. Gcc uses this option it to store x87 registers to memory. This reduces precision and enforces rounding which this test checks. The same effect can be achieved by using a volatile double variable for the result. This works for both compilers. OK kettenis@
* use %Lf for printing long double; silences clang warningrobert2017-08-061-3/+3
| | | | ok kettenis@
* Use += instead of = for extra flag. Prompted by miod@otto2017-06-021-2/+2
|
* use -ffloat-store to avoid too much precision which breaks the subtle testotto2016-10-261-1/+2
| | | | on some platforms; suggested by and ok martynas@
* using exact valus in floating point tests often does not work as expected,otto2016-10-241-2/+3
| | | | use epsilon test
* fix lgamma test on i386 and use symbolic constant; ok martynas@otto2016-10-231-5/+8
|
* Adapt previous to extended-precision, and fix single-precision constants.martynas2015-07-161-5/+17
|
* Signs of cacosh/cacoshf were not always correct (e.g., -1.1 -1.1i),martynas2015-07-162-0/+49
| | | | | | as found by fortran regression tests. Also added some complex regression tests for cacosh, casinh, catanh. Reported by John Marino @ DragonFlyBSD.
* Enter the REGRESS_FULL target subdirs for clean, cleandir and obj targets.miod2014-07-031-2/+2
|
* Fix typo.kettenis2013-08-051-2/+2
|
* tgamma(0) == Infkettenis2013-08-022-4/+4
|
* Fix a couple of corner cases in the implementation of pow(3) to make itkettenis2013-08-023-18/+18
| | | | | | | | | | | compatible with C99. Most notably: - 1**y == 1, even if y is NaN - (-1)**+-Inf == 1 and adjust the cephes testsuite to test for the right thing here. ok martynas@
* Some tests are currently failing. Only run those if the REGRESS_FULLkettenis2013-08-011-2/+6
| | | | variable is set.
* Remove excessive sys/cdefs.h inclusionderaadt2012-12-051-2/+1
| | | | ok guenther millert kettenis
* SUBDIR += fenv, it's never too latemiod2012-10-251-2/+2
|
* Adapt tests for extended-precision.martynas2011-07-095-21/+63
|
* Add 80-bit and 128-bit precision test vectors for the math functions.martynas2011-07-084-79/+36
| | | | No problems found by Cephes in 17022 tests.
* Add the quadruple-precision constants; testvect works better nowmartynas2011-06-023-3/+63
| | | | on sparc64.
* Add cephes, and lgamma.martynas2011-05-301-2/+3
|
* Import regression test vectors from the Cephes math library. Thismartynas2011-05-3012-0/+3996
| | | | | | | | | | | | | | covers C99 double, extended and quadruple precision functions. Stephen relicensed this under the right license. Testvect contains special values from C9X section F.9. Monot contains test vectors synthesized around NPTS points, which are near the boundaries where the algorithms (likely) change their methods; helping to detect coding/monotonicity errors. Note that a lot of extended and quadruple precision tests are if0'd for now; since our math library is incomplete. Hopefully this will change soon. (-;
* Add some simple test cases for lgamma, and lgammaf.martynas2011-05-282-0/+54
| | | | | Currently the functions return correct results for the input of negative zero; however signgam is wrong in this case.
* Add recently added tests to SUBDIR.martynas2011-04-171-2/+2
|
* Add tests for {,l,ll}round{,f}. Same tests as for {,l,ll}rint{,f},martynas2011-04-172-0/+67
| | | | | | | | except doesn't test rounding modes. Fix pending. Build it with -fno-builtin if you want to test the library functionality--otherwise GCC4 will decide to use its builtins on some platforms.
* Test nextafter and nextafterf for zero, nan and some basicmartynas2011-04-162-0/+50
| | | | functionality. Fix pending.
* tsk, float version of lrint is affected by a different bug, wheremartynas2011-04-101-3/+10
| | | | | the corner cases would return zero--add some more tests. assembly versions on amd64 and i386 are fine.
* add tests for yet-another bug of netbsd implementation of lrint.martynas2011-04-101-1/+4
| | | | | | | i've added only couple of values, however the whole exponent range of 52 is broken. luckily amd64 and i386 aren't affected, since they use the assembly versions which do the right thing.
* add tests for values zero, -zero; and values close to zero withmartynas2011-04-101-16/+23
| | | | -inf/+inf rounding modes.
* import fenv regression test suite. this one is from freebsd andmartynas2011-03-212-0/+557
| | | | | has more tests than i initially had. currently the last diff for amd64 posted on tech@ passes all tests.
* add (currently failing) test for double -> long longotto2010-02-061-1/+10
| | | | (I'm using long long for this test to work on 32-bit archs).
* don't test unspecified behavior per ISO C (section F.4). this mademartynas2009-07-061-7/+1
| | | | | | machines following IEC/IEEE for fp arith fail, since they take more care of overflowed value. failure on zaurus reported by david@. ok millert@
* add fpaccuracymartynas2009-04-091-2/+2
|
* fpaccuracy, by prof. Gaston H. Gonnet, uses some most difficultmartynas2009-04-0933-0/+33394
| | | | | | | | values to test accuracy of math functions (currently, only double precision tests are present) a report summary (fpaccuracy.out) containing max errs in ulp is generated originally under gpl. consented to relicense it under our license ok millert@
* also test rintlmartynas2008-12-091-1/+3
|
* - replace dtoa w/ David's gdtoa, version 2008-03-15martynas2008-09-071-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - provide proper dtoa locks - use the real strtof implementation - add strtold, __hdtoa, __hldtoa - add %a/%A support - don't lose precision in printf, don't round to double anymore - implement extended-precision versions of libc functions: fpclassify, isnan, isinf, signbit, isnormal, isfinite, now that the ieee.h is fixed - separate vax versions of strtof, and __hdtoa - add complex math support. added functions: cacos, casin, catan, ccos, csin, ctan, cacosh, casinh, catanh, ccosh, csinh, ctanh, cexp, clog, cabs, cpow, csqrt, carg, cimag, conj, cproj, creal, cacosf, casinf, catanf, ccosf, csinf, ctanf, cacoshf, casinhf, catanhf, ccoshf, csinhf, ctanhf, cexpf, clogf, cabsf, cpowf, csqrtf, cargf, cimagf, conjf, cprojf, crealf - add fdim, fmax, fmin - add log2. (adapted implementation e_log.c. could be more acruate & faster, but it's good enough for now) - remove wrappers & cruft in libm, supposed to work-around mistakes in SVID, etc.; use ieee versions. fixes issues in python 2.6 for djm@ - make _digittoint static - proper definitions for i386, and amd64 in ieee.h - sh, powerpc don't really have extended-precision - add missing definitions for mips64 (quad), m{6,8}k (96-bit) float.h for LDBL_* - merge lead to frac for m{6,8}k, for gdtoa to work properly - add FRAC*BITS & EXT_TO_ARRAY32 definitions in ieee.h, for hdtoa&ldtoa to use - add EXT_IMPLICIT_NBIT definition, which indicates implicit normalization bit - add regression tests for libc: fpclassify and printf - arith.h & gd_qnan.h definitions - update ieee.h: hppa doesn't have quad-precision, hppa64 does - add missing prototypes to gdtoaimp - on 64-bit platforms make sure gdtoa doesn't use a long when it really wants an int - etc., what i may have forgotten... - bump libm major, due to removed&changed symbols - no libc bump, since this is riding on djm's libc major crank from a day ago discussed with / requested by / testing theo, sthen@, djm@, jsg@, merdely@, jsing@, tedu@, brad@, jakemsr@, and others. looks good to millert@ parts of the diff ok kettenis@ this commit does not include: - man page changes
* regression tests for the upcomming tgamma bitsmartynas2008-06-113-2/+115
|
* add exp & sortotto2006-03-151-2/+2
|
* Simple exp(3) and expf(3) regression test for +Inf and -Infotto2006-03-152-0/+36
|