aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/s390/fpu/libm-test-ulps
AgeCommit message (Collapse)Author
2021-10-06S390: update libm test ulpsStefan Liebler
Update after commit 6bbf7298323bf31bc43494b2201465a449778e10. Fixed inaccuracy of j0f (BZ #28185) See also e.g. commit c75b106145c30e6c7bcf87f384a5c68ce56406e9 aarch64: update libm test ulps
2021-04-15s390: Update ulpsStefan Liebler
Required after 9acda61d94acc "Fix the inaccuracy of j0f/j1f/y0f/y1f [BZ #14469, #14470, #14471, #14472]".
2021-04-13s390: Update ulpsAdhemerval Zanella
Required after 43576de04afc6 "Improve the accuracy of tgamma (BZ #26983)"
2021-04-02Fix the inaccuracy of j0f/j1f/y0f/y1f [BZ #14469, #14470, #14471, #14472]Paul Zimmermann
For j0f/j1f/y0f/y1f, the largest error for all binary32 inputs is reduced to at most 9 ulps for all rounding modes. The new code is enabled only when there is a cancellation at the very end of the j0f/j1f/y0f/y1f computation, or for very large inputs, thus should not give any visible slowdown on average. Two different algorithms are used: * around the first 64 zeros of j0/j1/y0/y1, approximation polynomials of degree 3 are used, computed using the Sollya tool (https://www.sollya.org/) * for large inputs, an asymptotic formula from [1] is used [1] Fast and Accurate Bessel Function Computation, John Harrison, Proceedings of Arith 19, 2009. Inputs yielding the new largest errors are added to auto-libm-test-in, and ulps are regenerated for various targets (thanks Adhemerval Zanella). Tested on x86_64 with --disable-multi-arch and on powerpc64le-linux-gnu. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2021-03-12s390x: Regenerate ULPs.Stefan Liebler
Updates needed after recent commit: db3f7bb5586392d9809fc6397c7184983aed6008 "math: Remove slow paths from asin and acos [BZ #15267]" Compre to the required ulps update for x86_64.
2021-03-03s390x: Regenerate ulpsArjun Shankar
For new test cases in commit 5a051454a9b5.
2020-12-22s390x: Regenerate ulpsFlorian Weimer
For new inputs added in commit cad5ad81d2f7f58a7ad0d8afa8c1b710, as seen on a z13 system.
2020-08-12S390: Regenerate ULPs.Stefan Liebler
Updates needed after new j0 test: commit 9bfc225078219521439ec8b0f665915e769d40c2 math: Regenerate auto-libm-test-out-j0
2020-06-24S390: Regenerate ULPs.Stefan Liebler
Updates needed after recent exp10f commits.
2020-04-03S390: Regenerate ULPs.Stefan Liebler
Updates needed after recent commit a9d42c09a327540a99f2eac25a98fd2ad6d0b540 math: Add inputs that yield larger errors for float type (x86_64)
2020-03-19math: Remove inline math testsAdhemerval Zanella
With mathinline removal there is no need to keep building and testing inline math tests. The gen-libm-tests.py support to generate ULP_I_* is removed and all libm-test-ulps files are updated to longer have the i{float,double,ldouble} entries. The support for no-test-inline is also removed from both gen-auto-libm-tests and the auto-libm-test-out-* were regenerated. Checked on x86_64-linux-gnu and i686-linux-gnu.
2019-06-25S390: Regenerate ULPs.Stefan Liebler
The update is needed for builds with -O3 and -march>=z13. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2018-11-28S390: Regenerate ULPs.Stefan Liebler
Regenerated ulps from scratch as builds with gcc 5.5 / 6.4 resulted in +1 ulps. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2018-09-06S390: Regenerate ULPs.Stefan Liebler
Regenerated ulps from scratch after recent changes. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2018-08-17math: Regenerate s390 ulpsFlorian Weimer
Based on results on a s390x 2964 machine, with -march=z196 and -mtune=zEC12, and separately with -march=z13 and -mtune=z14.
2018-04-05S390: Regenerate ULPs.Stefan Liebler
Updated ulps after recent commit "[PATCH 1/7] sin/cos slow paths: avoid slow paths for small inputs" (19a8b9a300f2f1f0012aff0f2b70b09430f50d9e). ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2018-02-22S390: Regenerate ULPs.Stefan Liebler
After regenerating ULPs from scratch in commit 8e7196c8759287a3e4c882e3c7cf32ddc322df8a, I've missed to test it with multiple gcc versions. Hence, here is a further update. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2018-02-15S390: Regenerate ULPs.Stefan Liebler
Regenerated ulps file from scratch due to recent pow changes. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2017-12-16s390: Update ulpsRajalakshmi Srinivasaraghavan
* sysdeps/s390/fpu/libm-test-ulps: Update.
2017-10-05S390: Regenerate ULPsStefan Liebler
Updated ulps file. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2017-09-01Obsolete pow10 functions.Joseph Myers
This patch obsoletes the pow10, pow10f and pow10l functions (makes them into compat symbols, not available for new ports or static linking). The exp10 names for these functions are standardized (in TS 18661-4) and were added in the same glibc version (2.1) as pow10 so source code can change to use them without any loss of portability. Since pow10 is deliberately not provided for _Float128, only exp10, this slightly simplifies moving to the new wrapper templates in the !LIBM_SVID_COMPAT case, by avoiding needing to arrange for pow10, pow10f and pow10l to be defined by those templates. Tested for x86_64, and with build-many-glibcs.py. * manual/math.texi (pow10): Do not document. (pow10f): Likewise. (pow10l): Likewise. * math/bits/mathcalls.h [__USE_GNU] (pow10): Do not declare. * math/bits/math-finite.h [__USE_GNU] (pow10): Likewise. * math/libm-test-exp10.inc (pow10_test): Remove. (do_test): Do not call pow10. * math/w_exp10_compat.c (pow10): Make into compat symbol. [NO_LONG_DOUBLE] (pow10l): Likewise. * math/w_exp10f_compat.c (pow10f): Likewise. * math/w_exp10l_compat.c (pow10l): Likewise. * sysdeps/ia64/fpu/e_exp10.S: Include <shlib-compat.h>. (pow10): Make into compat symbol. * sysdeps/ia64/fpu/e_exp10f.S: Include <shlib-compat.h>. (pow10f): Make into compat symbol. * sysdeps/ia64/fpu/e_exp10l.S: Include <shlib-compat.h>. (pow10l): Make into compat symbol. * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Remove pow10. (CFLAGS-nldbl-pow10.c): Remove variable.. * sysdeps/ieee754/ldbl-opt/nldbl-pow10.c: Remove file. * sysdeps/ieee754/ldbl-opt/w_exp10_compat.c (pow10l): Condition on [SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_27)]. * sysdeps/ieee754/ldbl-opt/w_exp10l_compat.c (compat_symbol): Undefine and redefine. (pow10l): Make into compat symbol. * sysdeps/aarch64/libm-test-ulps: Remove pow10 ulps. * sysdeps/alpha/fpu/libm-test-ulps: Likewise. * sysdeps/arm/libm-test-ulps: Likewise. * sysdeps/hppa/fpu/libm-test-ulps: Likewise. * sysdeps/i386/fpu/libm-test-ulps: Likewise. * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. * sysdeps/microblaze/libm-test-ulps: Likewise. * sysdeps/mips/mips32/libm-test-ulps: Likewise. * sysdeps/mips/mips64/libm-test-ulps: Likewise. * sysdeps/nios2/libm-test-ulps: Likewise. * sysdeps/powerpc/fpu/libm-test-ulps: Likewise. * sysdeps/powerpc/nofpu/libm-test-ulps: Likewise. * sysdeps/s390/fpu/libm-test-ulps: Likewise. * sysdeps/sh/libm-test-ulps: Likewise. * sysdeps/sparc/fpu/libm-test-ulps: Likewise. * sysdeps/tile/libm-test-ulps: Likewise. * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
2017-05-09S390: Regenerate ULPsStefan Liebler
Updated ulps file - Needed if build with GCC 7. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2017-03-10Update auto-libm-test-out for catan / catanh.Stefan Liebler
I've used gmp 6.1.2, mpfr 3.1.5 and upstream mpc with fix in mpc_atan (https://scm.gforge.inria.fr/anonscm/gitweb?p=mpc/mpc.git;a=commit;h=958aac9b15a659d6fb5edcb11778123f8a35b14f) to build gen-auto-libm-tests and regenerated catan / catanh out files. Regenerated ULPs for s390 from scratch. Now the catan / catanh tests are passing. ChangeLog: * math/auto-libm-test-out-catan: Regenerated. * math/auto-libm-test-out-catanh: Likewise. * sysdeps/s390/fpu/libm-test-ulps: Likewise.
2017-03-08S390: Regenerate ULPsStefan Liebler
Updated ulps file. There are still fails for long double catan / catanh due to MPC bug. See post from Joseph Myers: https://www.sourceware.org/ml/libc-alpha/2017-03/msg00099.html ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2016-12-02S390: Regenerate ULPs.Stefan Liebler
Updated ulps file. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2016-10-04S390: Regenerate ULPsStefan Liebler
Regenerated ulps file after recent commit "Use __builtin_fma more in dbl-64 code.". ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2016-01-19S390: Regenerate ULPsStefan Liebler
I've regenerated ulps from scratch for s390/s390x. All math testcases are passing afterwards. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2015-07-15S390: Regenerate ULPsStefan Liebler
I've regenerated the ulps for s390 from scratch. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2015-07-07S390: Regenerate ULPs.Stefan Liebler
Regenerated ulps after recent changes. Tested on s390/s390x. All math-tests passes on s390 after this patch. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2015-06-19S/390: Regenerate ULPsStefan Liebler
Regenerated ULPs after recent math test changes. ChangeLog: * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2015-04-24S/390: Regenerate ULPsStefan Liebler
2015-03-12S/390: Regenerate ULPsStefan Liebler
2014-07-01S/390: Regenerate ULPsStefan Liebler
2014-06-03S/390: Regenerate ULPs.Stefan Liebler
2014-04-16S/390: Regenerate ULPsStefan Liebler
2014-03-05Don't include individual test ulps in libm-test-ulps.Joseph Myers
As recently discussed <https://sourceware.org/ml/libc-alpha/2014-02/msg00670.html>, it doesn't seem particularly useful for libm-test-ulps files to contain huge amounts of data on ulps for individual tests; just the global maximum observed ulps for each function, together with the verification of exceptions, errno and special results such as infinities and NaNs for each test, suffices to verify that a function's behavior on the given test inputs is within the expected accuracy. Removing this data reduces source tree churn caused by updates to these files when libm tests are added, and reduces the frequency with which testsuite additions actually need libm-test-ulps changes at all. Accordingly, this patch removes that data, so that individual tests get checked against the global bounds for the given function and only generate an error if those are exceeded. Tested x86_64 (including verifying that if an ulps value is artificially reduced, the tests do indeed fail as they should and "make regen-ulps" generates the expected changes). * math/libm-test.inc (struct ulp_data): Don't refer to ulps for individual tests in comment. (libm-test-ulps.h): Don't refer to test_ulps in #include comment. (prev_max_error): New variable. (prev_real_max_error): Likewise. (prev_imag_max_error): Likewise. (compare_ulp_data): Don't refer to test names in comment. (find_test_ulps): Remove function. (find_function_ulps): Likewise. (find_complex_function_ulps): Likewise. (init_max_error): Take function name as argument. Look up ulps for that function. (print_ulps): Remove function. (print_max_error): Use prev_max_error instead of calling find_function_ulps. (print_complex_max_error): Use prev_real_max_error and prev_imag_max_error instead of calling find_complex_function_ulps. (check_float_internal): Take max_ulp parameter instead of calling find_test_ulps. Don't call print_ulps. (check_float): Update call to check_float_internal. (check_complex): Update calls to check_float_internal. (START): Pass argument to init_max_error. * math/gen-libm-test.pl (%results): Don't include "kind" information. (parse_ulps): Don't handle ulps of individual tests. (print_ulps_file): Likewise. (output_ulps): Likewise. * math/README.libm-test: Update. * manual/libm-err-tab.pl (parse_ulps): Don't handle ulps of individual tests. * sysdeps/aarch64/libm-test-ulps: Remove individual test ulps. * sysdeps/alpha/fpu/libm-test-ulps: Likewise. * sysdeps/arm/libm-test-ulps: Likewise. * sysdeps/i386/fpu/libm-test-ulps: Likewise. * sysdeps/ia64/fpu/libm-test-ulps: Likewise. * sysdeps/m68k/coldfire/fpu/libm-test-ulps: Likewise. * sysdeps/m68k/m680x0/fpu/libm-test-ulps: Likewise. * sysdeps/microblaze/libm-test-ulps: Likewise. * sysdeps/mips/mips32/libm-test-ulps: Likewise. * sysdeps/mips/mips64/libm-test-ulps: Likewise. * sysdeps/powerpc/fpu/libm-test-ulps: Likewise. * sysdeps/powerpc/nofpu/libm-test-ulps: Likewise. * sysdeps/s390/fpu/libm-test-ulps: Likewise. * sysdeps/sh/libm-test-ulps: Likewise. * sysdeps/sparc/fpu/libm-test-ulps: Likewise. * sysdeps/tile/libm-test-ulps: Likewise. * sysdeps/x86_64/fpu/libm-test-ulps: Likewise. * sysdeps/hppa/fpu/libm-test-ulps: Remove individual test ulps.
2014-02-25S/390: Regenerate ULPs.Stefan Liebler
2014-02-11BZ #16447: Fix ldbl-128 expl implementation.Andreas Krebbel
Extend the range of numbers handled via unsafe mode. Add expl testcase and regenerate ULPs for s390.
2014-01-15S/390: Regenerate ULPs.Andreas Krebbel
2013-07-22S/390: ULPs update.Andreas Krebbel
2013-05-22Don't include expected results in libm-test test names.Joseph Myers
2013-05-19Handle sincos with generic libm-test logic.Joseph Myers
2013-01-09Update s390 ULPsSiddhesh Poyarekar
2012-12-21S/390: Update libm-test-ulps.Andreas Krebbel
2012-06-25Update s390 ULPs fileAndreas Jaeger
2012-05-24Don't include exceptions in libm-test-ulps test names.Joseph Myers
2012-05-04Update s390 libm-test-ulpsAndreas Krebbel
2011-11-30Adjust libm test ulps for s390Andreas Schwab
2011-10-14Adjust s390 libm ULPsAndreas Schwab
2006-08-08* stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,Ulrich Drepper
__strtol_ull_max_tab, __strtol_ull_rem_tab): Declare. (DEF): Don't put the var into .gnu.linkonce.r.* section. Only provide var definitions in strtol_l (or for *ull* in strtoll_l). * stdio-common/bug16.c (tests): New array. (do_tests): Allow the first hexadecimal digit to be 1, 2, 4 or 8. Do 3 additional tests. * sysdeps/s390/fpu/libm-test-ulps: Update. * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use fchownat syscall if available. * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise. * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise. * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise. (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.