You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Ulrich Drepper a7b420eadc Fix whitespaces. 16 years ago
..
bits * misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+. 19 years ago
machine Update. 27 years ago
Makefile [BZ #4775, BZ #4776] 19 years ago
README.libm-test Update. 22 years ago
Versions * sysdeps/generic/w_exp2.c [NO_LONG_DOUBLE]: Fix typos in alias names. 21 years ago
atest-exp.c . 19 years ago
atest-exp2.c . 19 years ago
atest-sincos.c . 19 years ago
basic-test.c [BZ #2749] 20 years ago
bug-nextafter.c [BZ #3306] 19 years ago
bug-nexttoward.c [BZ #3306] 19 years ago
bug-tgmath1.c Update. 22 years ago
cabs.c Update to LGPL v2.1. 25 years ago
cabsf.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
cabsl.c Update to LGPL v2.1. 25 years ago
carg.c Update to LGPL v2.1. 25 years ago
cargf.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
cargl.c Update to LGPL v2.1. 25 years ago
cimag.c Update to LGPL v2.1. 25 years ago
cimagf.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
cimagl.c Update to LGPL v2.1. 25 years ago
complex.h * resolv/res_debug.c (loc_ntoa): Make error const. 20 years ago
conj.c Update to LGPL v2.1. 25 years ago
conjf.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
conjl.c Update to LGPL v2.1. 25 years ago
creal.c Update to LGPL v2.1. 25 years ago
crealf.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
creall.c Update to LGPL v2.1. 25 years ago
divtc3.c * math/divtc3.c: New file. 20 years ago
e_acoshl.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_acosl.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_asinl.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_atan2l.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_atanhl.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_coshl.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_exp2l.c * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules to install 21 years ago
e_exp10.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_exp10f.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_exp10l.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_expl.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_fmodl.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_gammal_r.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_hypotl.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_j0l.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_j1l.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_jnl.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_lgammal_r.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_log2l.c Moved to csu/errno-loc.c. 21 years ago
e_log10l.c 2005-12-13 Ulrich Drepper <drepper@redhat.com> 21 years ago
e_logl.c Moved to csu/errno-loc.c. 21 years ago
e_powl.c Moved to csu/errno-loc.c. 21 years ago
e_rem_pio2l.c Moved to csu/errno-loc.c. 21 years ago
e_scalb.c Moved to csu/errno-loc.c. 21 years ago
e_scalbf.c Moved to csu/errno-loc.c. 21 years ago
e_scalbl.c Moved to csu/errno-loc.c. 21 years ago
e_sinhl.c Moved to csu/errno-loc.c. 21 years ago
e_sqrtl.c Moved to csu/errno-loc.c. 21 years ago
fclrexcpt.c Moved to csu/errno-loc.c. 21 years ago
fedisblxcpt.c Moved to csu/errno-loc.c. 21 years ago
feenablxcpt.c Moved to csu/errno-loc.c. 21 years ago
fegetenv.c Avoid PLT call to fegetenv on s390 16 years ago
fegetexcept.c Moved to csu/errno-loc.c. 21 years ago
fegetround.c Moved to csu/errno-loc.c. 21 years ago
feholdexcpt.c Moved to csu/errno-loc.c. 21 years ago
fenv.h Update to LGPL v2.1. 25 years ago
fesetenv.c Moved to csu/errno-loc.c. 21 years ago
fesetround.c Moved to csu/errno-loc.c. 21 years ago
feupdateenv.c Moved to csu/errno-loc.c. 21 years ago
fgetexcptflg.c Moved to csu/errno-loc.c. 21 years ago
fpu_control.c Moved to csu/errno-loc.c. 21 years ago
fraiseexcpt.c Moved to csu/errno-loc.c. 21 years ago
fsetexcptflg.c Moved to csu/errno-loc.c. 21 years ago
ftestexcept.c Moved to csu/errno-loc.c. 21 years ago
gen-libm-test.pl [BZ #2832, BZ #2987] 20 years ago
ieee-math.c * hurd/hurdinit.c (map0): Remove [!PIC] conditional. 30 years ago
k_cosl.c Moved to csu/errno-loc.c. 21 years ago
k_rem_pio2l.c Moved to csu/errno-loc.c. 21 years ago
k_sincosl.c Moved to csu/errno-loc.c. 21 years ago
k_sinl.c Moved to csu/errno-loc.c. 21 years ago
k_tanl.c Moved to csu/errno-loc.c. 21 years ago
libm-test.inc Fix cproj implmentation. 16 years ago
math.h Define math_errhandling is possible. 17 years ago
math_private.h (INSERT_WORDS64): Fix argument order. 16 years ago
multc3.c * math/divtc3.c: New file. 20 years ago
s_asinhl.c Moved to csu/errno-loc.c. 21 years ago
s_atanl.c Moved to csu/errno-loc.c. 21 years ago
s_cacos.c Moved to csu/errno-loc.c. 21 years ago
s_cacosf.c Moved to csu/errno-loc.c. 21 years ago
s_cacosh.c [BZ #2182] 20 years ago
s_cacoshf.c [BZ #2182] 20 years ago
s_cacoshl.c [BZ #2182] 20 years ago
s_cacosl.c Moved to csu/errno-loc.c. 21 years ago
s_casin.c Moved to csu/errno-loc.c. 21 years ago
s_casinf.c Moved to csu/errno-loc.c. 21 years ago
s_casinh.c Moved to csu/errno-loc.c. 21 years ago
s_casinhf.c Moved to csu/errno-loc.c. 21 years ago
s_casinhl.c Moved to csu/errno-loc.c. 21 years ago
s_casinl.c Moved to csu/errno-loc.c. 21 years ago
s_catan.c Moved to csu/errno-loc.c. 21 years ago
s_catanf.c Moved to csu/errno-loc.c. 21 years ago
s_catanh.c Moved to csu/errno-loc.c. 21 years ago
s_catanhf.c Moved to csu/errno-loc.c. 21 years ago
s_catanhl.c Moved to csu/errno-loc.c. 21 years ago
s_catanl.c Moved to csu/errno-loc.c. 21 years ago
s_cbrtl.c Moved to csu/errno-loc.c. 21 years ago
s_ccos.c Moved to csu/errno-loc.c. 21 years ago
s_ccosf.c Moved to csu/errno-loc.c. 21 years ago
s_ccosh.c Moved to csu/errno-loc.c. 21 years ago
s_ccoshf.c Moved to csu/errno-loc.c. 21 years ago
s_ccoshl.c Moved to csu/errno-loc.c. 21 years ago
s_ccosl.c Moved to csu/errno-loc.c. 21 years ago
s_cexp.c Moved to csu/errno-loc.c. 21 years ago
s_cexpf.c Moved to csu/errno-loc.c. 21 years ago
s_cexpl.c Moved to csu/errno-loc.c. 21 years ago
s_clog.c Moved to csu/errno-loc.c. 21 years ago
s_clog10.c Moved to csu/errno-loc.c. 21 years ago
s_clog10f.c Moved to csu/errno-loc.c. 21 years ago
s_clog10l.c Moved to csu/errno-loc.c. 21 years ago
s_clogf.c Moved to csu/errno-loc.c. 21 years ago
s_clogl.c Moved to csu/errno-loc.c. 21 years ago
s_cpow.c Moved to csu/errno-loc.c. 21 years ago
s_cpowf.c Moved to csu/errno-loc.c. 21 years ago
s_cpowl.c Moved to csu/errno-loc.c. 21 years ago
s_cproj.c Fix whitespaces. 16 years ago
s_cprojf.c Fix cproj implmentation. 16 years ago
s_cprojl.c Fix cproj implmentation. 16 years ago
s_csin.c Moved to csu/errno-loc.c. 21 years ago
s_csinf.c Moved to csu/errno-loc.c. 21 years ago
s_csinh.c Moved to csu/errno-loc.c. 21 years ago
s_csinhf.c Moved to csu/errno-loc.c. 21 years ago
s_csinhl.c Moved to csu/errno-loc.c. 21 years ago
s_csinl.c Moved to csu/errno-loc.c. 21 years ago
s_csqrt.c Moved to csu/errno-loc.c. 21 years ago
s_csqrtf.c Moved to csu/errno-loc.c. 21 years ago
s_csqrtl.c Moved to csu/errno-loc.c. 21 years ago
s_ctan.c Moved to csu/errno-loc.c. 21 years ago
s_ctanf.c Moved to csu/errno-loc.c. 21 years ago
s_ctanh.c Moved to csu/errno-loc.c. 21 years ago
s_ctanhf.c Moved to csu/errno-loc.c. 21 years ago
s_ctanhl.c Moved to csu/errno-loc.c. 21 years ago
s_ctanl.c Moved to csu/errno-loc.c. 21 years ago
s_erfl.c Moved to csu/errno-loc.c. 21 years ago
s_expm1l.c Moved to csu/errno-loc.c. 21 years ago
s_fdim.c Fix overflow handling in fdim. 17 years ago
s_fdimf.c Fix overflow handling in fdim. 17 years ago
s_fdiml.c Fix generic fdiml. 17 years ago
s_fma.c Add support for x86-64 fma instruction. 17 years ago
s_fmaf.c Add support for x86-64 fma instruction. 17 years ago
s_fmal.c Moved to csu/errno-loc.c. 21 years ago
s_fmax.c Moved to csu/errno-loc.c. 21 years ago
s_fmaxf.c Moved to csu/errno-loc.c. 21 years ago
s_fmaxl.c Moved to csu/errno-loc.c. 21 years ago
s_fmin.c Moved to csu/errno-loc.c. 21 years ago
s_fminf.c Moved to csu/errno-loc.c. 21 years ago
s_fminl.c Moved to csu/errno-loc.c. 21 years ago
s_ldexp.c Moved to csu/errno-loc.c. 21 years ago
s_ldexpf.c Moved to csu/errno-loc.c. 21 years ago
s_ldexpl.c Moved to csu/errno-loc.c. 21 years ago
s_log1pl.c Moved to csu/errno-loc.c. 21 years ago
s_nan.c Moved to csu/errno-loc.c. 21 years ago
s_nanf.c Moved to csu/errno-loc.c. 21 years ago
s_nanl.c Moved to csu/errno-loc.c. 21 years ago
s_nextafter.c [BZ #3306] 19 years ago
s_nexttowardf.c [BZ #3306] 19 years ago
s_nexttowardl.c Moved to csu/errno-loc.c. 21 years ago
s_significand.c Moved to csu/errno-loc.c. 21 years ago
s_significandf.c Moved to csu/errno-loc.c. 21 years ago
s_significandl.c * sysdeps/powerpc/fpu/fenv_libc.h: Add libm_hidden_proto for 18 years ago
s_tanhl.c Moved to csu/errno-loc.c. 21 years ago
setfpucw.c Moved to csu/errno-loc.c. 21 years ago
t_sincosl.c Moved to csu/errno-loc.c. 21 years ago
test-double.c Update to LGPL v2.1. 25 years ago
test-fenv.c [BZ #3427] 19 years ago
test-float.c Update to LGPL v2.1. 25 years ago
test-fpucw.c Update to LGPL v2.1. 25 years ago
test-idouble.c Update to LGPL v2.1. 25 years ago
test-ifloat.c Update to LGPL v2.1. 25 years ago
test-ildoubl.c Update to LGPL v2.1. 25 years ago
test-ldouble.c Update to LGPL v2.1. 25 years ago
test-matherr.c Update. 29 years ago
test-misc.c * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c 19 years ago
test-tgmath-int.c [BZ #865] 21 years ago
test-tgmath-ret.c Update. 23 years ago
test-tgmath.c [BZ #4775, BZ #4776] 19 years ago
test-tgmath2.c [BZ #4775, BZ #4776] 19 years ago
tgmath.h 2008-10-24 Joseph Myers <joseph@codesourcery.com> 18 years ago
tst-definitions.c Update to LGPL v2.1. 25 years ago
w_acos.c Moved to csu/errno-loc.c. 21 years ago
w_acosf.c Moved to csu/errno-loc.c. 21 years ago
w_acosh.c Moved to csu/errno-loc.c. 21 years ago
w_acoshf.c Moved to csu/errno-loc.c. 21 years ago
w_acoshl.c Moved to csu/errno-loc.c. 21 years ago
w_acosl.c Moved to csu/errno-loc.c. 21 years ago
w_asin.c Moved to csu/errno-loc.c. 21 years ago
w_asinf.c Moved to csu/errno-loc.c. 21 years ago
w_asinl.c Moved to csu/errno-loc.c. 21 years ago
w_atan2.c Moved to csu/errno-loc.c. 21 years ago
w_atan2f.c Moved to csu/errno-loc.c. 21 years ago
w_atan2l.c Moved to csu/errno-loc.c. 21 years ago
w_atanh.c Moved to csu/errno-loc.c. 21 years ago
w_atanhf.c Moved to csu/errno-loc.c. 21 years ago
w_atanhl.c Moved to csu/errno-loc.c. 21 years ago
w_cosh.c Moved to csu/errno-loc.c. 21 years ago
w_coshf.c Moved to csu/errno-loc.c. 21 years ago
w_coshl.c Fix range checks in coshl. 17 years ago
w_drem.c Moved to csu/errno-loc.c. 21 years ago
w_dremf.c Moved to csu/errno-loc.c. 21 years ago
w_dreml.c Moved to csu/errno-loc.c. 21 years ago
w_exp2.c Moved to csu/errno-loc.c. 21 years ago
w_exp2f.c Moved to csu/errno-loc.c. 21 years ago
w_exp2l.c Moved to csu/errno-loc.c. 21 years ago
w_exp10.c Moved to csu/errno-loc.c. 21 years ago
w_exp10f.c Moved to csu/errno-loc.c. 21 years ago
w_exp10l.c Moved to csu/errno-loc.c. 21 years ago
w_expl.c Moved to csu/errno-loc.c. 21 years ago
w_fmod.c * math/w_fmod.c: Also handle x=±Inf as error. 17 years ago
w_fmodf.c * math/w_fmod.c: Also handle x=±Inf as error. 17 years ago
w_fmodl.c * math/w_fmod.c: Also handle x=±Inf as error. 17 years ago
w_hypot.c Moved to csu/errno-loc.c. 21 years ago
w_hypotf.c Moved to csu/errno-loc.c. 21 years ago
w_hypotl.c Moved to csu/errno-loc.c. 21 years ago
w_j0.c Moved to csu/errno-loc.c. 21 years ago
w_j0f.c Moved to csu/errno-loc.c. 21 years ago
w_j0l.c * math/math.h [__NO_LONG_DOUBLE_MATH] (__nldbl_nexttowardf): New 21 years ago
w_j1.c Moved to csu/errno-loc.c. 21 years ago
w_j1f.c Moved to csu/errno-loc.c. 21 years ago
w_j1l.c * math/math.h [__NO_LONG_DOUBLE_MATH] (__nldbl_nexttowardf): New 21 years ago
w_jn.c Moved to csu/errno-loc.c. 21 years ago
w_jnf.c Moved to csu/errno-loc.c. 21 years ago
w_jnl.c * math/math.h [__NO_LONG_DOUBLE_MATH] (__nldbl_nexttowardf): New 21 years ago
w_lgamma.c Moved to csu/errno-loc.c. 21 years ago
w_lgamma_r.c Moved to csu/errno-loc.c. 21 years ago
w_lgammaf.c Moved to csu/errno-loc.c. 21 years ago
w_lgammaf_r.c Moved to csu/errno-loc.c. 21 years ago
w_lgammal.c Moved to csu/errno-loc.c. 21 years ago
w_lgammal_r.c Moved to csu/errno-loc.c. 21 years ago
w_log.c Moved to csu/errno-loc.c. 21 years ago
w_log2.c Moved to csu/errno-loc.c. 21 years ago
w_log2f.c Moved to csu/errno-loc.c. 21 years ago
w_log2l.c Moved to csu/errno-loc.c. 21 years ago
w_log10.c Moved to csu/errno-loc.c. 21 years ago
w_log10f.c Moved to csu/errno-loc.c. 21 years ago
w_log10l.c Moved to csu/errno-loc.c. 21 years ago
w_logf.c Moved to csu/errno-loc.c. 21 years ago
w_logl.c Moved to csu/errno-loc.c. 21 years ago
w_pow.c Moved to csu/errno-loc.c. 21 years ago
w_powf.c Moved to csu/errno-loc.c. 21 years ago
w_powl.c Moved to csu/errno-loc.c. 21 years ago
w_remainder.c Moved to csu/errno-loc.c. 21 years ago
w_remainderf.c Moved to csu/errno-loc.c. 21 years ago
w_remainderl.c Moved to csu/errno-loc.c. 21 years ago
w_scalb.c Moved to csu/errno-loc.c. 21 years ago
w_scalbf.c Moved to csu/errno-loc.c. 21 years ago
w_scalbl.c Moved to csu/errno-loc.c. 21 years ago
w_sinh.c Moved to csu/errno-loc.c. 21 years ago
w_sinhf.c Moved to csu/errno-loc.c. 21 years ago
w_sinhl.c Moved to csu/errno-loc.c. 21 years ago
w_sqrt.c Moved to csu/errno-loc.c. 21 years ago
w_sqrtf.c Moved to csu/errno-loc.c. 21 years ago
w_sqrtl.c Moved to csu/errno-loc.c. 21 years ago
w_tgamma.c Moved to csu/errno-loc.c. 21 years ago
w_tgammaf.c Moved to csu/errno-loc.c. 21 years ago
w_tgammal.c Moved to csu/errno-loc.c. 21 years ago

README.libm-test

README for libm-test math test suite
====================================

The libm-test math test suite tests a number of function points of
math functions in the GNU C library. The following sections contain a
brief overview. Please note that the test drivers and the Perl script
"gen-libm-test.pl" have some options. A full list of options is
available with --help (for the test drivers) and -h for
"gen-libm-test.pl".


What is tested?
===============
The tests just evaluate the functions at specified points and compare
the results with precomputed values and the requirements of the ISO
C99 standard.

Besides testing the special values mandated by IEEE 754 (infinities,
NaNs and minus zero), some more or less random values are tested.

Files that are part of libm-test
================================

The main file is "libm-test.inc". It is platform and floating point
format independent. The file must be preprocessed by the Perl script
"gen-libm-test.pl". The results are "libm-test.c" and a file
"libm-test-ulps.h" with platform specific deltas.

The test drivers test-double.c, test-float.c, test-ldouble.c test the
normal double, float and long double implementation of libm. The test
drivers with an i in it (test-idouble.c, test-ifloat.c,
test-ildoubl.c) test the corresponding inline functions (where
available - otherwise they also test the real functions in libm).

"gen-libm-test.pl" needs a platform specific files with ULPs (Units of
Last Precision). The file is called "libm-test-ulps" and lives in
platform specific sysdep directory.

How can I generate "libm-test-ulps"?
====================================

The test drivers have an option "-u" to output an unsorted list of all
epsilons that the functions have. The output can be read in directly
but it's better to pretty print it first. "gen-libm-test.pl" has an option
to generate a pretty-printed and sorted new ULPs file from the output
of the test drivers.

To generate a new "libm-test-ulps" file, first remove "ULPs" file in the
current directory, then you can execute for example:
test-double -u --ignore-max-ulp=yes
This generates a file "ULPs" with all double ULPs in it, ignoring any
previous calculated ULPs.
Now generate the ULPs for all other formats, the tests will be appending
the data to the "ULPs" file. As final step run "gen-libm-test.pl" with the
file as input and ask to generate a pretty printed output in the file "NewUlps":
gen-libm-test.pl -u ULPs -n

Now you can rename "NewUlps" to "libm-test-ulps" and move it into
sysdeps.

Contents of libm-test-ulps
==========================
Since libm-test-ulps can be generated automatically, just a few
notes. The file contains lines for single tests, like:
Test "cos (pi/2) == 0":
float: 1

and lines for maximal errors of single functions, like:
Function "yn":
idouble: 6.0000

The keywords are float, ifloat, double, idouble, ldouble and ildouble
(the prefix i stands for inline). You can also specify known
failures, e.g.:

Test "cos (pi/2) == 0":
float: 1
float: fail

Adding tests to libm-test.inc
=============================

The tests are evaluated by a set of special test macros. The macros
start with "TEST_" followed by a specification the input values, an
underscore and a specification of the output values. As an example,
the test macro for a function with input of type FLOAT (FLOAT is
either float, double, long double) and output of type FLOAT is
"TEST_f_f". The macro's parameter are the name of the function, the
input parameter, output parameter and optionally one exception
parameter.

The accepted parameter types are:
- "f" for FLOAT
- "b" for boolean - just tests if the output parameter evaluates to 0
or 1 (only for output).
- "c" for complex. This parameter needs two values, first the real,
then the imaginary part.
- "i" for int.
- "l" for long int.
- "L" for long long int.
- "F" for the address of a FLOAT (only as input parameter)
- "I" for the address of an int (only as input parameter)

Some functions need special handling. For example gamma sets the
global variable signgam and frexp takes an argument to &int. This
special treatment is coded in "gen-libm-test.pl" and used while
parsing "libm-test.inc".