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.
 
 
 
 
 
 
Joseph Myers 9ac4470888 Use libm_alias_double in math/. 9 years ago
..
bits Fix bits/math-finite.h exp10 condition (bug 22082). 9 years ago
machine Update. 27 years ago
Makefile Simplify NAN definitions. 9 years ago
README.libm-test Run libm tests separately for each function. 9 years ago
Versions Add fromfp functions. 9 years ago
atest-exp.c Update copyright dates with scripts/update-copyrights. 9 years ago
atest-exp2.c Update copyright dates with scripts/update-copyrights. 9 years ago
atest-sincos.c Update copyright dates with scripts/update-copyrights. 9 years ago
auto-libm-test-in XFAIL catan and catanh tests on ibm128 9 years ago
auto-libm-test-out-acos Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-acosh Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-asin Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-asinh Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-atan Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-atan2 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-atanh Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-cabs Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-cacos Move tests of cacos, cacosh to auto-libm-test-*. 9 years ago
auto-libm-test-out-cacosh Move tests of cacos, cacosh to auto-libm-test-*. 9 years ago
auto-libm-test-out-carg Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-casin Move tests of casin, casinh to auto-libm-test-*. 9 years ago
auto-libm-test-out-casinh Move tests of casin, casinh to auto-libm-test-*. 9 years ago
auto-libm-test-out-catan XFAIL catan and catanh tests on ibm128 9 years ago
auto-libm-test-out-catanh XFAIL catan and catanh tests on ibm128 9 years ago
auto-libm-test-out-cbrt Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-ccos Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-ccosh Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-cexp Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-clog Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-clog10 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-cos Improve float range reduction accuracy near pi/2 (bug 21094). 9 years ago
auto-libm-test-out-cosh Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-cpow Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-csin Move more csin, csinh tests to auto-libm-test-in. 9 years ago
auto-libm-test-out-csinh Move more csin, csinh tests to auto-libm-test-in. 9 years ago
auto-libm-test-out-csqrt Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-ctan Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-ctanh Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-erf Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-erfc Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-exp Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-exp2 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-exp10 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-expm1 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-fma Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-hypot Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-j0 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-j1 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-jn Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-lgamma Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-log Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-log1p Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-log2 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-log10 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-pow Fix powf inaccuracy (bug 21112). 9 years ago
auto-libm-test-out-sin Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-sincos Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-sinh Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-sqrt Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-tan Improve float range reduction accuracy near pi/2 (bug 21094). 9 years ago
auto-libm-test-out-tanh Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-tgamma Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-y0 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-y1 Split auto-libm-test-out by function. 9 years ago
auto-libm-test-out-yn Split auto-libm-test-out by function. 9 years ago
basic-test.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
bug-nextafter.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
bug-nexttoward.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
bug-tgmath1.c Update. 22 years ago
cabs_template.c Define and use libm_alias_double. 9 years ago
carg_template.c Define and use libm_alias_double. 9 years ago
cimag_template.c Define and use libm_alias_double. 9 years ago
complex.h float128: Add public _Float128 declarations to libm. 9 years ago
conj_template.c Define and use libm_alias_double. 9 years ago
creal_template.c Define and use libm_alias_double. 9 years ago
divtc3.c Update copyright dates with scripts/update-copyrights. 9 years ago
e_exp2_template.c Convert e_exp2l.c into a template 9 years ago
e_exp10.c Update copyright dates with scripts/update-copyrights. 9 years ago
e_exp10f.c Update copyright dates with scripts/update-copyrights. 9 years ago
e_exp10l.c Update copyright dates with scripts/update-copyrights. 9 years ago
e_scalb.c Update copyright dates with scripts/update-copyrights. 9 years ago
e_scalbf.c Update copyright dates with scripts/update-copyrights. 9 years ago
e_scalbl.c Update copyright dates with scripts/update-copyrights. 9 years ago
fclrexcpt.c Update copyright dates with scripts/update-copyrights. 9 years ago
fedisblxcpt.c Update copyright dates with scripts/update-copyrights. 9 years ago
feenablxcpt.c Update copyright dates with scripts/update-copyrights. 9 years ago
fegetenv.c Update copyright dates with scripts/update-copyrights. 9 years ago
fegetexcept.c Update copyright dates with scripts/update-copyrights. 9 years ago
fegetmode.c Update copyright dates with scripts/update-copyrights. 9 years ago
fegetround.c Update copyright dates with scripts/update-copyrights. 9 years ago
feholdexcpt.c Update copyright dates with scripts/update-copyrights. 9 years ago
fenv.h Update copyright dates with scripts/update-copyrights. 9 years ago
fesetenv.c Update copyright dates with scripts/update-copyrights. 9 years ago
fesetexcept.c Update copyright dates with scripts/update-copyrights. 9 years ago
fesetmode.c Update copyright dates with scripts/update-copyrights. 9 years ago
fesetround.c Update copyright dates with scripts/update-copyrights. 9 years ago
fetestexceptflag.c Update copyright dates with scripts/update-copyrights. 9 years ago
feupdateenv.c Update copyright dates with scripts/update-copyrights. 9 years ago
fgetexcptflg.c Make fallback fegetexceptflag work with generic fetestexceptflag. 9 years ago
fpu_control.c Update copyright dates with scripts/update-copyrights. 9 years ago
fraiseexcpt.c Update copyright dates with scripts/update-copyrights. 9 years ago
fromfp.h Update copyright dates with scripts/update-copyrights. 9 years ago
fsetexcptflg.c Make fallback fesetexceptflag always succeed (bug 21028). 9 years ago
ftestexcept.c Update copyright dates with scripts/update-copyrights. 9 years ago
gen-auto-libm-tests.c Split auto-libm-test-out by function. 9 years ago
gen-fromfp-tests-inputs Add fromfp functions. 9 years ago
gen-fromfp-tests.py Update copyright dates with scripts/update-copyrights. 9 years ago
gen-libm-test.pl float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
gen-tgmath-tests.py Fix tgmath.h handling of complex integers (bug 21684). 9 years ago
k_casinh_template.c Update copyright dates with scripts/update-copyrights. 9 years ago
k_sincosl.c Moved to csu/errno-loc.c. 21 years ago
lgamma-compat.h Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
libm-test-acos.inc Run libm tests separately for each function. 9 years ago
libm-test-acosh.inc Run libm tests separately for each function. 9 years ago
libm-test-asin.inc Run libm tests separately for each function. 9 years ago
libm-test-asinh.inc Run libm tests separately for each function. 9 years ago
libm-test-atan.inc Run libm tests separately for each function. 9 years ago
libm-test-atan2.inc Run libm tests separately for each function. 9 years ago
libm-test-atanh.inc Run libm tests separately for each function. 9 years ago
libm-test-cabs.inc Run libm tests separately for each function. 9 years ago
libm-test-cacos.inc Run libm tests separately for each function. 9 years ago
libm-test-cacosh.inc Run libm tests separately for each function. 9 years ago
libm-test-canonicalize.inc Run libm tests separately for each function. 9 years ago
libm-test-carg.inc Run libm tests separately for each function. 9 years ago
libm-test-casin.inc Run libm tests separately for each function. 9 years ago
libm-test-casinh.inc Run libm tests separately for each function. 9 years ago
libm-test-catan.inc Run libm tests separately for each function. 9 years ago
libm-test-catanh.inc Run libm tests separately for each function. 9 years ago
libm-test-cbrt.inc Run libm tests separately for each function. 9 years ago
libm-test-ccos.inc Run libm tests separately for each function. 9 years ago
libm-test-ccosh.inc Run libm tests separately for each function. 9 years ago
libm-test-ceil.inc Run libm tests separately for each function. 9 years ago
libm-test-cexp.inc Run libm tests separately for each function. 9 years ago
libm-test-cimag.inc Run libm tests separately for each function. 9 years ago
libm-test-clog.inc Run libm tests separately for each function. 9 years ago
libm-test-clog10.inc Run libm tests separately for each function. 9 years ago
libm-test-conj.inc Run libm tests separately for each function. 9 years ago
libm-test-copysign.inc Run libm tests separately for each function. 9 years ago
libm-test-cos.inc Run libm tests separately for each function. 9 years ago
libm-test-cosh.inc Run libm tests separately for each function. 9 years ago
libm-test-cpow.inc Run libm tests separately for each function. 9 years ago
libm-test-cproj.inc Run libm tests separately for each function. 9 years ago
libm-test-creal.inc Run libm tests separately for each function. 9 years ago
libm-test-csin.inc Run libm tests separately for each function. 9 years ago
libm-test-csinh.inc Run libm tests separately for each function. 9 years ago
libm-test-csqrt.inc Run libm tests separately for each function. 9 years ago
libm-test-ctan.inc Run libm tests separately for each function. 9 years ago
libm-test-ctanh.inc Run libm tests separately for each function. 9 years ago
libm-test-driver.c Run libm tests separately for each function. 9 years ago
libm-test-erf.inc Run libm tests separately for each function. 9 years ago
libm-test-erfc.inc Run libm tests separately for each function. 9 years ago
libm-test-exp.inc Run libm tests separately for each function. 9 years ago
libm-test-exp2.inc Run libm tests separately for each function. 9 years ago
libm-test-exp10.inc Obsolete pow10 functions. 9 years ago
libm-test-expm1.inc Run libm tests separately for each function. 9 years ago
libm-test-fabs.inc Run libm tests separately for each function. 9 years ago
libm-test-fdim.inc Run libm tests separately for each function. 9 years ago
libm-test-floor.inc Run libm tests separately for each function. 9 years ago
libm-test-fma.inc Run libm tests separately for each function. 9 years ago
libm-test-fmax.inc Run libm tests separately for each function. 9 years ago
libm-test-fmaxmag.inc Run libm tests separately for each function. 9 years ago
libm-test-fmin.inc Run libm tests separately for each function. 9 years ago
libm-test-fminmag.inc Run libm tests separately for each function. 9 years ago
libm-test-fmod.inc Run libm tests separately for each function. 9 years ago
libm-test-fpclassify.inc Run libm tests separately for each function. 9 years ago
libm-test-frexp.inc Run libm tests separately for each function. 9 years ago
libm-test-fromfp.inc Run libm tests separately for each function. 9 years ago
libm-test-fromfpx.inc Run libm tests separately for each function. 9 years ago
libm-test-getpayload.inc Add float128 support for x86_64, x86. 9 years ago
libm-test-hypot.inc Run libm tests separately for each function. 9 years ago
libm-test-ilogb.inc Run libm tests separately for each function. 9 years ago
libm-test-iscanonical.inc Run libm tests separately for each function. 9 years ago
libm-test-iseqsig.inc Run libm tests separately for each function. 9 years ago
libm-test-isfinite.inc float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
libm-test-isgreater.inc Run libm tests separately for each function. 9 years ago
libm-test-isgreaterequal.inc Run libm tests separately for each function. 9 years ago
libm-test-isinf.inc Run libm tests separately for each function. 9 years ago
libm-test-isless.inc Run libm tests separately for each function. 9 years ago
libm-test-islessequal.inc Run libm tests separately for each function. 9 years ago
libm-test-islessgreater.inc Run libm tests separately for each function. 9 years ago
libm-test-isnan.inc Run libm tests separately for each function. 9 years ago
libm-test-isnormal.inc Run libm tests separately for each function. 9 years ago
libm-test-issignaling.inc Run libm tests separately for each function. 9 years ago
libm-test-issubnormal.inc Run libm tests separately for each function. 9 years ago
libm-test-isunordered.inc Run libm tests separately for each function. 9 years ago
libm-test-iszero.inc Run libm tests separately for each function. 9 years ago
libm-test-j0.inc Run libm tests separately for each function. 9 years ago
libm-test-j1.inc Run libm tests separately for each function. 9 years ago
libm-test-jn.inc Run libm tests separately for each function. 9 years ago
libm-test-lgamma.inc float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
libm-test-llogb.inc Run libm tests separately for each function. 9 years ago
libm-test-llrint.inc Run libm tests separately for each function. 9 years ago
libm-test-llround.inc Run libm tests separately for each function. 9 years ago
libm-test-log.inc Run libm tests separately for each function. 9 years ago
libm-test-log1p.inc Run libm tests separately for each function. 9 years ago
libm-test-log2.inc Run libm tests separately for each function. 9 years ago
libm-test-log10.inc Run libm tests separately for each function. 9 years ago
libm-test-logb.inc Run libm tests separately for each function. 9 years ago
libm-test-lrint.inc Run libm tests separately for each function. 9 years ago
libm-test-lround.inc Run libm tests separately for each function. 9 years ago
libm-test-modf.inc Run libm tests separately for each function. 9 years ago
libm-test-nearbyint.inc Run libm tests separately for each function. 9 years ago
libm-test-nextafter.inc Run libm tests separately for each function. 9 years ago
libm-test-nextdown.inc Run libm tests separately for each function. 9 years ago
libm-test-nexttoward.inc float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
libm-test-nextup.inc Run libm tests separately for each function. 9 years ago
libm-test-pow.inc Run libm tests separately for each function. 9 years ago
libm-test-remainder.inc float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
libm-test-remquo.inc Run libm tests separately for each function. 9 years ago
libm-test-rint.inc Run libm tests separately for each function. 9 years ago
libm-test-round.inc Run libm tests separately for each function. 9 years ago
libm-test-roundeven.inc Run libm tests separately for each function. 9 years ago
libm-test-scalb.inc float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
libm-test-scalbln.inc Run libm tests separately for each function. 9 years ago
libm-test-scalbn.inc Run libm tests separately for each function. 9 years ago
libm-test-setpayload.inc Add float128 support for x86_64, x86. 9 years ago
libm-test-setpayloadsig.inc Run libm tests separately for each function. 9 years ago
libm-test-signbit.inc Run libm tests separately for each function. 9 years ago
libm-test-significand.inc float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
libm-test-sin.inc Run libm tests separately for each function. 9 years ago
libm-test-sincos.inc Run libm tests separately for each function. 9 years ago
libm-test-sinh.inc Run libm tests separately for each function. 9 years ago
libm-test-sqrt.inc Run libm tests separately for each function. 9 years ago
libm-test-support.c Obsolete matherr, _LIB_VERSION, libieee.a. 9 years ago
libm-test-support.h Add float128 support for ia64. 9 years ago
libm-test-tan.inc Run libm tests separately for each function. 9 years ago
libm-test-tanh.inc Run libm tests separately for each function. 9 years ago
libm-test-tgamma.inc Run libm tests separately for each function. 9 years ago
libm-test-totalorder.inc Add float128 support for x86_64, x86. 9 years ago
libm-test-totalordermag.inc Add float128 support for x86_64, x86. 9 years ago
libm-test-trunc.inc Run libm tests separately for each function. 9 years ago
libm-test-ufromfp.inc Run libm tests separately for each function. 9 years ago
libm-test-ufromfpx.inc Run libm tests separately for each function. 9 years ago
libm-test-y0.inc Run libm tests separately for each function. 9 years ago
libm-test-y1.inc Run libm tests separately for each function. 9 years ago
libm-test-yn.inc Run libm tests separately for each function. 9 years ago
math-svid-compat.h Simplify math-svid-compat code. 9 years ago
math.h math.h: Warn about an already-defined log macro 9 years ago
mul_split.h Update copyright dates with scripts/update-copyrights. 9 years ago
mul_splitl.h Update copyright dates with scripts/update-copyrights. 9 years ago
multc3.c Update copyright dates with scripts/update-copyrights. 9 years ago
s_cacos_template.c Define and use libm_alias_double. 9 years ago
s_cacosh_template.c Define and use libm_alias_double. 9 years ago
s_canonicalize_template.c Update copyright dates with scripts/update-copyrights. 9 years ago
s_casin_template.c Define and use libm_alias_double. 9 years ago
s_casinh_template.c Define and use libm_alias_double. 9 years ago
s_catan_template.c Define and use libm_alias_double. 9 years ago
s_catanh_template.c Define and use libm_alias_double. 9 years ago
s_ccos_template.c Define and use libm_alias_double. 9 years ago
s_ccosh_template.c Define and use libm_alias_double. 9 years ago
s_cexp_template.c Define and use libm_alias_double. 9 years ago
s_clog10_template.c Define and use libm_alias_double. 9 years ago
s_clog_template.c Define and use libm_alias_double. 9 years ago
s_cpow_template.c Define and use libm_alias_double. 9 years ago
s_cproj_template.c Define and use libm_alias_double. 9 years ago
s_csin_template.c Define and use libm_alias_double. 9 years ago
s_csinh_template.c Define and use libm_alias_double. 9 years ago
s_csqrt_template.c Define and use libm_alias_double. 9 years ago
s_ctan_template.c Define and use libm_alias_double. 9 years ago
s_ctanh_template.c Define and use libm_alias_double. 9 years ago
s_fdim_template.c Define and use libm_alias_double. 9 years ago
s_fma.c Use libm_alias_double in math/. 9 years ago
s_fmaf.c Use libm_alias_float in math/. 9 years ago
s_fmal.c Update copyright dates with scripts/update-copyrights. 9 years ago
s_fmax_template.c Define and use libm_alias_double. 9 years ago
s_fmaxmag_template.c float128: Add wrappers to override ldbl-128 as float128. 9 years ago
s_fmin_template.c Define and use libm_alias_double. 9 years ago
s_fminmag_template.c float128: Add wrappers to override ldbl-128 as float128. 9 years ago
s_iscanonicall.c Add iscanonical. 10 years ago
s_iseqsig_template.c Use internal __feraiseexcept in __iseqsig 9 years ago
s_ldexp_template.c Remove declare_mgen_alias_2. 9 years ago
s_nan_template.c Define and use libm_alias_double. 9 years ago
s_nextafter.c Use libm_alias_double in math/. 9 years ago
s_nextdown_template.c Update copyright dates with scripts/update-copyrights. 9 years ago
s_nexttowardf.c Consistently use uintN_t not u_intN_t in libm. 9 years ago
s_nexttowardl.c Moved to csu/errno-loc.c. 21 years ago
s_significand.c Remove __STDC__ conditionals from libm. 14 years ago
s_significandf.c Remove __STDC__ conditionals from libm. 14 years ago
s_significandl.c Remove __STDC__ conditionals from libm. 14 years ago
setfpucw.c Update copyright dates with scripts/update-copyrights. 9 years ago
t_sincosl.c Moved to csu/errno-loc.c. 21 years ago
test-double-vlen2.h Run libm tests separately for each function. 9 years ago
test-double-vlen4.h Run libm tests separately for each function. 9 years ago
test-double-vlen8.h Run libm tests separately for each function. 9 years ago
test-double.h float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
test-fe-snans-always-signal.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-femode-traps.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-femode.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fenv-clear-main.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fenv-clear.c Fix i386/x86_64 fesetenv SSE exception clearing (bug 19181). 11 years ago
test-fenv-preserve.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fenv-return.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fenv-tls.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fenv.c Fix math/test-fenv for no-exceptions / no-rounding-modes configurations. 9 years ago
test-fenvinline.c Fix math/test-fenvinline for no-exceptions configurations. 9 years ago
test-fesetexcept-traps.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fesetexcept.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fetestexceptflag.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fexcept-traps.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fexcept.c Make fallback fesetexceptflag always succeed (bug 21028). 9 years ago
test-finite-macros.c Fix bits/math-finite.h _MSUF_ expansion namespace (bug 22028). 9 years ago
test-float-vlen4.h Run libm tests separately for each function. 9 years ago
test-float-vlen8.h Run libm tests separately for each function. 9 years ago
test-float-vlen16.h Run libm tests separately for each function. 9 years ago
test-float.h float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
test-float128.h float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
test-flt-eval-method.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fp-ilogb-constants.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fp-llogb-constants.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fpucw-ieee-static.c Fix static-binary lazy FPU context allocation 13 years ago
test-fpucw-ieee.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-fpucw-static.c Fix math/test-fpucw-*.c for sysdeps test-fpucw.c overrides. 12 years ago
test-fpucw.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-iseqsig-excess-precision.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-iszero-excess-precision.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-ldouble.h float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
test-math-errno.h Update copyright dates with scripts/update-copyrights. 9 years ago
test-math-finite.h Clean up libm vector tests exception test disabling. 9 years ago
test-math-floatn.h float128: Add test-{float128,ifloat128,float128-finite} 9 years ago
test-math-inline.h Move -U__LIBC_INTERNAL_MATH_INLINES to test-math-inline.h. 9 years ago
test-math-isinff.cc Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-math-issignaling.cc Provide a C++ version of issignaling that does not use __MATH_TG 9 years ago
test-math-iszero.cc Provide a C++ version of iszero that does not use __MATH_TG (bug 21930) 9 years ago
test-math-no-finite.h Clean up libm vector tests exception test disabling. 9 years ago
test-math-no-inline.h Clean up libm vector tests exception test disabling. 9 years ago
test-math-scalar.h Update copyright dates with scripts/update-copyrights. 9 years ago
test-math-vector.h Run libm tests separately for each function. 9 years ago
test-matherr-2.c Fix tests that are testing obsoleted functionality 9 years ago
test-matherr-3.c Obsolete matherr, _LIB_VERSION, libieee.a. 9 years ago
test-matherr.c Fix tests that are testing obsoleted functionality 9 years ago
test-misc.c Miscellaneous low-risk changes preparing for _ISOMAC testsuite. 9 years ago
test-nan-overflow.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-nan-payload.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-nearbyint-except-2.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-nearbyint-except.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-powl.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-signgam-finite-c11.c Fix finite-math-only lgamma functions signgam setting (bug 19211). 11 years ago
test-signgam-finite-c99.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-signgam-finite.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-signgam-main.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-signgam-uchar-init-static.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-uchar-init.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-uchar-static.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-uchar.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-uint-init-static.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-uint-init.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-uint-static.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-uint.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-ullong-init-static.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-ullong-init.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-ullong-static.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-signgam-ullong.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
test-snan.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-tgmath-int.c Update copyright dates with scripts/update-copyrights. 9 years ago
test-tgmath-ret.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
test-tgmath.c Fix tgmath.h totalorder, totalordermag return type (bug 21687). 9 years ago
test-tgmath2.c Remove NO_LONG_DOUBLE conditionals in libm tests (bug 21607). 9 years ago
tgmath.h Use __HAVE_DISTINCT_FLOAT128 in tgmath.h. 9 years ago
tst-CMPLX.c Don't disable CMPLXL macro for __NO_LONG_DOUBLE_MATH (bug 15488). 13 years ago
tst-CMPLX2.c Update copyright dates with scripts/update-copyrights. 9 years ago
tst-definitions.c Update copyright dates with scripts/update-copyrights. 9 years ago
w_acos_compat.c Use libm_alias_double in math/. 9 years ago
w_acos_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_acosf_compat.c Use libm_alias_float in math/. 9 years ago
w_acosh_compat.c Use libm_alias_double in math/. 9 years ago
w_acosh_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_acoshf_compat.c Use libm_alias_float in math/. 9 years ago
w_acoshl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_acosl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_asin_compat.c Use libm_alias_double in math/. 9 years ago
w_asin_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_asinf_compat.c Use libm_alias_float in math/. 9 years ago
w_asinl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_atan2_compat.c Use libm_alias_double in math/. 9 years ago
w_atan2_template.c Add new templates for IEEE wrappers 9 years ago
w_atan2f_compat.c Use libm_alias_float in math/. 9 years ago
w_atan2l_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_atanh_compat.c Use libm_alias_double in math/. 9 years ago
w_atanh_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_atanhf_compat.c Use libm_alias_float in math/. 9 years ago
w_atanhl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_cosh_compat.c Use libm_alias_double in math/. 9 years ago
w_cosh_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_coshf_compat.c Use libm_alias_float in math/. 9 years ago
w_coshl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_exp2_compat.c Use libm_alias_double in math/. 9 years ago
w_exp2_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_exp2f_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_exp2l_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_exp10_compat.c Use libm_alias_double in math/. 9 years ago
w_exp10_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_exp10f_compat.c Use libm_alias_float in math/. 9 years ago
w_exp10l_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_exp_compat.c Use libm_alias_double in math/. 9 years ago
w_exp_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_expf_compat.c Move exp compat wrappers under math/ 9 years ago
w_expl_compat.c Move exp compat wrappers under math/ 9 years ago
w_fmod_compat.c Use libm_alias_double in math/. 9 years ago
w_fmod_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_fmodf_compat.c Use libm_alias_float in math/. 9 years ago
w_fmodl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_hypot_compat.c Use libm_alias_double in math/. 9 years ago
w_hypot_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_hypotf_compat.c Use libm_alias_float in math/. 9 years ago
w_hypotl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_ilogb_template.c Define and use libm_alias_double. 9 years ago
w_j0_compat.c Use libm_alias_double in math/. 9 years ago
w_j0_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_j0f_compat.c Use libm_alias_float in math/. 9 years ago
w_j0l_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_j1_compat.c Use libm_alias_double in math/. 9 years ago
w_j1_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_j1f_compat.c Use libm_alias_float in math/. 9 years ago
w_j1l_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_jn_compat.c Use libm_alias_double in math/. 9 years ago
w_jn_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_jnf_compat.c Use libm_alias_float in math/. 9 years ago
w_jnl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_lgamma_compat.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
w_lgamma_compat2.c Move w_lgamma to libm-compat-calls-auto 9 years ago
w_lgamma_compatf.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
w_lgamma_compatl.c Fix lgamma setting signgam for ISO C (bug 15421). 11 years ago
w_lgamma_main.c Obsolete matherr, _LIB_VERSION, libieee.a. 9 years ago
w_lgamma_r_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_lgamma_r_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_lgamma_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_lgammaf_compat2.c Move w_lgamma to libm-compat-calls-auto 9 years ago
w_lgammaf_main.c Obsolete matherr, _LIB_VERSION, libieee.a. 9 years ago
w_lgammaf_r_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_lgammal_compat2.c Move w_lgamma to libm-compat-calls-auto 9 years ago
w_lgammal_main.c Obsolete matherr, _LIB_VERSION, libieee.a. 9 years ago
w_lgammal_r_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_llogb_template.c Update copyright dates with scripts/update-copyrights. 9 years ago
w_log1p_template.c Update copyright dates with scripts/update-copyrights. 9 years ago
w_log2_compat.c Use libm_alias_double in math/. 9 years ago
w_log2_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_log2f_compat.c Use libm_alias_float in math/. 9 years ago
w_log2l_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_log10_compat.c Use libm_alias_double in math/. 9 years ago
w_log10_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_log10f_compat.c Use libm_alias_float in math/. 9 years ago
w_log10l_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_log_compat.c Use libm_alias_double in math/. 9 years ago
w_log_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_logf_compat.c Use libm_alias_float in math/. 9 years ago
w_logl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_pow_compat.c Use libm_alias_double in math/. 9 years ago
w_pow_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_powf_compat.c Use libm_alias_float in math/. 9 years ago
w_powl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_remainder_compat.c Use libm_alias_double in math/. 9 years ago
w_remainder_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_remainderf_compat.c Use libm_alias_float in math/. 9 years ago
w_remainderl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_scalb_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_scalbf_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_scalbl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_scalbln_template.c Clear up log1p, ldexp, scalbn, scalbln compat handling. 9 years ago
w_sinh_compat.c Use libm_alias_double in math/. 9 years ago
w_sinh_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_sinhf_compat.c Use libm_alias_float in math/. 9 years ago
w_sinhl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_sqrt_compat.c Use libm_alias_double in math/. 9 years ago
w_sqrt_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_sqrtf_compat.c Use libm_alias_float in math/. 9 years ago
w_sqrtl_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 years ago
w_tgamma_compat.c Use libm_alias_double in math/. 9 years ago
w_tgamma_template.c Make errno-setting libm templates include errno.h. 9 years ago
w_tgammaf_compat.c Use libm_alias_float in math/. 9 years ago
w_tgammal_compat.c Prefer new libm function wrappers for !LIBM_SVID_COMPAT. 9 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 files are "libm-test-<func>.inc". They are independent of
the target platform and the specific real floating type and format and
contain placeholder test "templates" for math functions defined in
libm. These files, along with generated files named
"auto-libm-test-out-<func>", are preprocessed by the Perl script
"gen-libm-test.pl" to expand the templates and produce a set of test
cases for each math function that are specific to the target platform
but still independent of the real floating type. The results of the
processing are "libm-test-<func>.c" and a file "libm-test-ulps.h" with
platform specific deltas by which the actual math function results may
deviate from the expected results and still be considered correct.

The test drivers "test-double-<func>.c", "test-float-<func>.c", and
"test-ldouble-<func>.c", generated by the Makefile, test the normal
double, float and long double implementation of libm. The test
drivers with an 'i' in their name ("test-idouble-<func>.c",
"test-ifloat-<func>.c", and "test-ildoubl-<func>.c") test the
corresponding inline functions (where available - otherwise they also
test the real functions in libm). Each driver selects the desired
real floating type to exercise the math functions to test with (float,
double, or long double) by defining a small set of macros just before
including the generic "libm-test.c" file. Each driver also either
defines or undefines the __NO_MATH_INLINES macro just before including
"libm-test-<func>.c" to select either the real or inline functions,
respectively. Each driver is compiled into a single executable test
program with the corresponding name.

As mentioned above, the "gen-libm-test.pl" script looks for a file
named "libm-test-ulps" in the platform specific sysdep directory (or
its fpu or nofpu subdirectory) and for each variant (real floating
type and rounding mode) of every tested function reads from it the
maximum difference expressed as Units of Least Precision (ULP) the
actual result of the function may deviate from the expected result
before it's considered incorrect.

The "auto-libm-test-out-<func>" files contain sets of test cases to
exercise, the conditions under which to exercise each, and the
expected results. The files are generated by the
"gen-auto-libm-tests" program from the "auto-libm-test-in" file. See
the comments in gen-auto-libm-tests.c for details about the content
and format of the -in and -out files.

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

To automatically generate a new "libm-test-ulps" run "make regen-ulps".
This generates the file "math/NewUlps" in the build directory. The file
contains the sorted results of all the tests. You can use the "NewUlps"
file as the machine's updated "libm-test-ulps" file. Copy "NewUlps" to
"libm-test-ulps" in the appropriate machine sysdep directory. Verify
the changes, post your patch, and check it in after review.

To manually generate a new "libm-test-ulps" file, first remove "ULPs"
file in the current directory, then you can execute for example:
./testrun.sh math/test-double -u --ignore-max-ulp=yes
This generates a file "ULPs" with all double ULPs in it, ignoring any
previously calculated ULPs, and running with the newly built dynamic
loader and math library (assumes you didn't install your build). 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 NewUlps
Copy "NewUlps" to "libm-test-ulps" in the appropriate machine sysdep
directory.

Note that 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.

Contents of libm-test-ulps
==========================

Since libm-test-ulps can be generated automatically, just a few notes.
The file contains lines for maximal errors of single functions, like:

Function "yn":
idouble: 6

The keywords are float, ifloat, double, idouble, ldouble and ildouble
(the prefix i stands for inline).

Adding tests to libm-test-<func>.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
- "j" for long double.
- "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.
- "u" for unsigned int.
- "M" for intmax_t.
- "U" for uintmax_t.
- "p" for an argument (described in the previous character) passed
through a pointer rather than directly.
- "F" for the address of a FLOAT (only as input parameter)
- "I" for the address of an int (only as input parameter)
- "1" for an additional output (either output through a pointer passed
as an argument, or to a global variable such as signgam).

How to read the test output
===========================

Running each test on its own at the default level of verbosity will
print on stdout a line describing the implementation of math functions
exercised by the test (float, double, or long double), along with
whether the inline set has been selected, regardless of whether or
not any inline functions actually exist. This is then followed by
the details of test failures (if any). The output concludes by
a summary listing the number of test cases exercised and the number
of test failures uncovered.

For each test failure (and for each test case at higher levels of
verbosity), the output contains the name of the function under test
and its arguments or conditions that triggered the failure. Note
that the name of the function in the output need not correspond
exactly to the name of the math function actually invoked. For example,
the output will refer to the "acos" function even if the actual function
under test is acosf (for the float version) or acosl (for the long
double version). Also note that the function arguments may be shown
in either the decimal or the hexadecimal floating point format which
may or may not correspond to the format used in the auto-libm-test-in
file. Besides the name of the function, for each test failure the
output contains the actual and expected results and the difference
between the two, printed in both the decimal and hexadecimal
floating point format, and the ULP and maximum ULP for the test
case.