summary refs log tree commit diff
path: root/math/libm-test.inc
Commit message (Collapse)AuthorAgeFilesLines
* PowerPC floating point little-endian [4 of 15]Alan Modra2013-10-041-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://sourceware.org/ml/libc-alpha/2013-08/msg00084.html Another batch of ieee854 macros and union replacement. These four files also have bugs fixed with this patch. The fact that the two doubles in an IBM long double may have different signs means that negation and absolute value operations can't just twiddle one sign bit as you can with ieee864 style extended double. fmodl, remainderl, erfl and erfcl all had errors of this type. erfl also returned +1 for large magnitude negative input where it should return -1. The hypotl error is innocuous since the value adjusted twice is only used as a flag. The e_hypotl.c tests for large "a" and small "b" are mutually exclusive because we've already exited when x/y > 2**120. That allows some further small simplifications. [BZ #15734], [BZ #15735] * sysdeps/ieee754/ldbl-128ibm/e_fmodl.c (__ieee754_fmodl): Rewrite all uses of ieee875 long double macros and unions. Simplify test for 0.0L. Correct |x|<|y| and |x|=|y| test. Use ldbl_extract_mantissa value for ix,iy exponents. Properly normalize after ldbl_extract_mantissa, and don't add hidden bit already handled. Don't treat low word of ieee854 mantissa like low word of IBM long double and mask off bit when testing for zero. * sysdeps/ieee754/ldbl-128ibm/e_hypotl.c (__ieee754_hypotl): Rewrite all uses of ieee875 long double macros and unions. Simplify tests for 0.0L and inf. Correct double adjustment of k. Delete dead code adjusting ha,hb. Simplify code setting kld. Delete two600 and two1022, instead use their values. Recognise that tests for large "a" and small "b" are mutually exclusive. Rename vars. Comment. * sysdeps/ieee754/ldbl-128ibm/e_remainderl.c (__ieee754_remainderl): Rewrite all uses of ieee875 long double macros and unions. Simplify test for 0.0L and nan. Correct negation. * sysdeps/ieee754/ldbl-128ibm/s_erfl.c (__erfl): Rewrite all uses of ieee875 long double macros and unions. Correct output for large magnitude x. Correct absolute value calculation. (__erfcl): Likewise. * math/libm-test.inc: Add tests for errors discovered in IBM long double versions of fmodl, remainderl, erfl and erfcl.
* New test cases for sin and cos for multiple precision fallbackSiddhesh Poyarekar2013-09-191-0/+18
|
* Fix lgammaf spurious underflow (bug 15427).Joseph Myers2013-09-031-0/+55
|
* Fix spurious jnf underflows (bug 14155).Joseph Myers2013-09-021-2/+17
|
* Fix cexp (NaN + i0) (bug 15532).Joseph Myers2013-08-231-1/+2
|
* Fix fdim handling of infinities (bug 15797).Joseph Myers2013-08-211-27/+31
|
* Fix cproj handling of (finite, NaN) arguments (bug 15531).Joseph Myers2013-08-201-0/+40
|
* Fix cbrtl for ldbl-96Andreas Schwab2013-08-131-0/+5
|
* Annotate more cases of math bug 15319.David S. Miller2013-07-131-16/+20
| | | | | | * math/libm-test.inc (casin_test_data): Annotate more cases of missing underflows from atanl/atan2l due to bug 15319. (casinh_test_data): Likewise.
* Add another fma test.Joseph Myers2013-06-151-0/+1
|
* Add exception information to math-tests.h and use it in libm-test.inc.Joseph Myers2013-06-111-17/+21
|
* Add rounding mode information to math-tests.h and use it in libm-test.inc.Joseph Myers2013-06-101-4/+9
|
* BZ #15536: Fix ulp for 128-bit IBM long double.Carlos O'Donell2013-06-031-11/+26
| | | | | | | | In 128-bit IBM long double the precision of the type decreases as you approach subnormal numbers, equaling that of a double for subnormal numbers. Therefore adjust the computation in ulp to use 2^(MIN_EXP - MANT_DIG) which is correct for FP_SUBNORMAL for all types.
* Fix ldbl-96 hypotl of subnormals (bug 15529).Joseph Myers2013-05-241-0/+13
|
* Test drem and pow10 in libm-test.inc.Joseph Myers2013-05-241-5/+63
|
* Use same tests for isfinite/finite, lgamma/gamma.Joseph Myers2013-05-241-44/+18
|
* Correctly compute ulp near zero.Carlos O'Donell2013-05-241-48/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current value used for ulp near zero is wrong, and this commit fixes it such that ulp(0) is the smallest subnormal value nearest to zero, which makes the most sense for testing values near zero. Note that this is not what Java does; they use the nearest normal value, which is less accurate than what we want for glibc. Note that there is no correct implementation of ulp since there is no strict mathmatical definition that is accepted by all groups using IEEE 754. Previously with the large ulp values near zero there were tests that previously passed, but were in fact billions of ulp away from the precise answer. With this commit we now need to disable one of the cpow tests which is revealed to be inaccurate (bug 14473). --- 2013-05-24 Carlos O'Donell <carlos@redhat.com> * math/libm-test.inc (MAX_EXP): Define. (ULPDIFF): Define. (ulp): New function. (check_float_internal): Use ULPDIFF. (cpow_test): Disable failing test. (check_ulp): Test ulp() implemetnation. (main): Call check_ulp before starting tests.
* Remove libm-test START_DATA and END_DATA.Joseph Myers2013-05-241-339/+0
|
* Make libm-test START and END into ordinary macros.Joseph Myers2013-05-241-169/+176
|
* Don't include function names in test data in generated libm-test.c.Joseph Myers2013-05-221-117/+229
|
* Handle sincos with generic libm-test logic.Joseph Myers2013-05-191-47/+54
|
* Make libm-test look up ulps by name at runtime.Joseph Myers2013-05-181-138/+154
|
* Fix remainder exceptions and directed-rounding results (bugs 15480, 15485).Joseph Myers2013-05-171-7/+162
|
* Simplify libm-test extra-output initialization.Joseph Myers2013-05-171-33/+26
|
* Don't handle ulps for integer tests in libm-test.inc.Joseph Myers2013-05-171-15/+3
|
* Test more cases of "inexact" exceptions in libm-test.inc.Joseph Myers2013-05-171-1119/+1132
|
* Test for errno setting in more pole error cases.Joseph Myers2013-05-161-15/+15
|
* Remove ENOSYS tests in libm-test.inc.Joseph Myers2013-05-161-649/+0
|
* Remove libm-test support for TEST_* inside functions.Joseph Myers2013-05-161-18/+9
|
* Convert TEST_extra tests from code to data.Joseph Myers2013-05-161-48/+75
|
* Support testing "inexact" exceptions in libm-test.inc.Joseph Myers2013-05-161-392/+399
|
* Test for errno setting in more overflow error cases.Joseph Myers2013-05-161-81/+79
|
* Convert TEST_cc_c tests from code to data.Joseph Myers2013-05-161-14/+36
|
* Convert TEST_f_L tests from code to data.Joseph Myers2013-05-161-769/+780
|
* Convert TEST_f_l tests from code to data.Joseph Myers2013-05-151-167/+179
|
* Consistently use TEST_f_L in tests of llrint and llround.Joseph Myers2013-05-151-6/+6
|
* Convert TEST_f_b tests from code to data.Joseph Myers2013-05-151-67/+117
|
* Test for errno setting in more domain error cases.Joseph Myers2013-05-151-53/+53
|
* Disable libm-test errno testing for TEST_INLINE.Joseph Myers2013-05-151-0/+2
|
* Convert TEST_ff_i tests from code to data.Joseph Myers2013-05-151-108/+154
|
* Fix whitespace in RUN_TEST_LOOP_2_f.Joseph Myers2013-05-141-1/+1
|
* Correct types of fields in libm-test.inc structures.Joseph Myers2013-05-141-2/+2
|
* Convert TEST_ffI_f1 tests from code to data.Joseph Myers2013-05-141-15/+46
|
* Convert TEST_f_i tests from code to data.Joseph Myers2013-05-141-24/+56
|
* Fix function name in scalbln_test call to END.Joseph Myers2013-05-141-1/+1
|
* Convert TEST_fI_f1 tests from code to data.Joseph Myers2013-05-141-11/+27
|
* Convert TEST_fF_f1 tests from code to data.Joseph Myers2013-05-141-12/+40
|
* Convert TEST_f_f1 tests from code to data.Joseph Myers2013-05-141-34/+67
|
* Convert TEST_fl_f tests from code to data.Joseph Myers2013-05-131-38/+53
|
* Convert TEST_fi_f tests from code to data.Joseph Myers2013-05-131-36/+56
|