• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..--

bits/29-Jul-2022-654242

finclude/29-Jul-2022-2018

machine/29-Jul-2022-113

MakefileD29-Jul-202231.1 KiB789606

README.libm-testD29-Jul-20227.3 KiB159135

VersionsD29-Jul-202216.7 KiB635620

atest-exp.cD29-Jul-20225 KiB196147

atest-exp2.cD29-Jul-20225.7 KiB228174

atest-sincos.cD29-Jul-20228.4 KiB283235

auto-libm-test-inD29-Jul-2022225.4 KiB8,4778,197

auto-libm-test-out-acosD29-Jul-2022235.7 KiB3,1423,141

auto-libm-test-out-acoshD29-Jul-2022167.3 KiB2,2162,215

auto-libm-test-out-asinD29-Jul-2022181.5 KiB2,4432,442

auto-libm-test-out-asinhD29-Jul-2022236.4 KiB3,1983,197

auto-libm-test-out-atanD29-Jul-202299.9 KiB1,3801,379

auto-libm-test-out-atan2D29-Jul-20221.3 MiB14,20614,205

auto-libm-test-out-atanhD29-Jul-2022266.6 KiB3,5973,596

auto-libm-test-out-cabsD29-Jul-202252.8 KiB665664

auto-libm-test-out-cacosD29-Jul-20224.9 MiB45,39045,389

auto-libm-test-out-cacoshD29-Jul-20224.9 MiB45,39045,389

auto-libm-test-out-cargD29-Jul-202299.5 KiB1,1271,126

auto-libm-test-out-casinD29-Jul-20224.9 MiB45,39045,389

auto-libm-test-out-casinhD29-Jul-20224.9 MiB45,39045,389

auto-libm-test-out-catanD29-Jul-20224.2 MiB37,75937,758

auto-libm-test-out-catanhD29-Jul-20224.2 MiB37,75937,758

auto-libm-test-out-cbrtD29-Jul-2022111.4 KiB1,4721,471

auto-libm-test-out-ccosD29-Jul-2022118.1 KiB1,1041,103

auto-libm-test-out-ccoshD29-Jul-2022118.8 KiB1,1041,103

auto-libm-test-out-cexpD29-Jul-2022208.4 KiB1,9451,944

auto-libm-test-out-clogD29-Jul-20224 MiB32,64432,643

auto-libm-test-out-clog10D29-Jul-20224.1 MiB32,55432,553

auto-libm-test-out-cosD29-Jul-2022255 KiB3,3923,391

auto-libm-test-out-coshD29-Jul-2022324.4 KiB3,7283,727

auto-libm-test-out-cpowD29-Jul-2022181 KiB1,2011,200

auto-libm-test-out-csinD29-Jul-2022176.2 KiB1,6281,627

auto-libm-test-out-csinhD29-Jul-2022177.8 KiB1,6281,627

auto-libm-test-out-csqrtD29-Jul-20221.1 MiB10,59110,590

auto-libm-test-out-ctanD29-Jul-2022178.9 KiB1,7801,779

auto-libm-test-out-ctanhD29-Jul-2022194.9 KiB1,9251,924

auto-libm-test-out-erfD29-Jul-2022246.2 KiB3,3513,350

auto-libm-test-out-erfcD29-Jul-2022355.9 KiB4,5164,515

auto-libm-test-out-expD29-Jul-2022423.9 KiB4,9414,940

auto-libm-test-out-exp10D29-Jul-2022369.8 KiB4,1944,193

auto-libm-test-out-exp2D29-Jul-2022345.5 KiB4,2634,262

auto-libm-test-out-expm1D29-Jul-2022237.7 KiB3,2043,203

auto-libm-test-out-fmaD29-Jul-20221.8 MiB15,62315,622

auto-libm-test-out-hypotD29-Jul-20221.4 MiB14,76814,767

auto-libm-test-out-j0D29-Jul-2022245.3 KiB2,5372,536

auto-libm-test-out-j1D29-Jul-202297.2 KiB1,3621,361

auto-libm-test-out-jnD29-Jul-2022257.5 KiB3,3693,368

auto-libm-test-out-lgammaD29-Jul-20222.1 MiB24,68924,688

auto-libm-test-out-logD29-Jul-2022123.9 KiB1,6451,644

auto-libm-test-out-log10D29-Jul-2022138.3 KiB1,7661,765

auto-libm-test-out-log1pD29-Jul-2022213.6 KiB2,7142,713

auto-libm-test-out-log2D29-Jul-2022160 KiB2,0992,098

auto-libm-test-out-narrow-addD29-Jul-20222.4 MiB23,48823,487

auto-libm-test-out-narrow-divD29-Jul-20223 MiB24,76424,763

auto-libm-test-out-narrow-fmaD29-Jul-20225.6 MiB35,25535,254

auto-libm-test-out-narrow-mulD29-Jul-20222 MiB17,54017,539

auto-libm-test-out-narrow-sqrtD29-Jul-2022403.2 KiB4,4864,485

auto-libm-test-out-narrow-subD29-Jul-20222.4 MiB23,48823,487

auto-libm-test-out-powD29-Jul-20224.2 MiB44,22444,223

auto-libm-test-out-sinD29-Jul-2022314.9 KiB3,9153,914

auto-libm-test-out-sincosD29-Jul-2022230.3 KiB2,1672,166

auto-libm-test-out-sinhD29-Jul-2022301.4 KiB3,6843,683

auto-libm-test-out-sqrtD29-Jul-2022278.7 KiB4,1224,121

auto-libm-test-out-tanD29-Jul-2022258.1 KiB3,4643,463

auto-libm-test-out-tanhD29-Jul-2022204.4 KiB2,8512,850

auto-libm-test-out-tgammaD29-Jul-20222.3 MiB27,67627,675

auto-libm-test-out-y0D29-Jul-202275.8 KiB1,0311,030

auto-libm-test-out-y1D29-Jul-202277.6 KiB1,0311,030

auto-libm-test-out-ynD29-Jul-2022213.1 KiB2,6262,625

basic-test.cD29-Jul-20228.9 KiB222186

bug-nextafter.cD29-Jul-20227.5 KiB324311

bug-nexttoward.cD29-Jul-20227.7 KiB326313

bug-tgmath1.cD29-Jul-20221.4 KiB4839

cabs_template.cD29-Jul-20221,018 298

carg_template.cD29-Jul-20221,001 298

cimag_template.cD29-Jul-2022961 287

complex.hD29-Jul-20227.9 KiB250178

conj_template.cD29-Jul-2022954 287

creal_template.cD29-Jul-2022956 287

divtc3.cD29-Jul-20222.3 KiB7648

e_exp10.cD29-Jul-20221.2 KiB3413

e_exp10l.cD29-Jul-20221.2 KiB3413

e_exp2_template.cD29-Jul-20221.6 KiB5634

e_scalb_template.cD29-Jul-20221.6 KiB5833

fclrexcpt.cD29-Jul-20221.3 KiB3614

fedisblxcpt.cD29-Jul-2022971 287

feenablxcpt.cD29-Jul-20221 KiB3110

fegetenv.cD29-Jul-20221.2 KiB3715

fegetexcept.cD29-Jul-2022952 287

fegetmode.cD29-Jul-2022953 287

fegetround.cD29-Jul-20221 KiB3414

feholdexcpt.cD29-Jul-20221.1 KiB3110

fenv.hD29-Jul-20225.7 KiB17139

fesetenv.cD29-Jul-20221.3 KiB4119

fesetexcept.cD29-Jul-2022985 287

fesetmode.cD29-Jul-2022959 287

fesetround.cD29-Jul-20221.1 KiB3414

fetestexceptflag.cD29-Jul-20221 KiB286

feupdateenv.cD29-Jul-20221.4 KiB4119

fgetexcptflg.cD29-Jul-20221.2 KiB3614

fpu_control.cD29-Jul-2022990 253

fraiseexcpt.cD29-Jul-20221.4 KiB4017

fromfp.hD29-Jul-20225.7 KiB17596

fsetexcptflg.cD29-Jul-20221.3 KiB3613

ftestexcept.cD29-Jul-2022957 288

gen-auto-libm-tests.cD29-Jul-202271.4 KiB2,3131,843

gen-fromfp-tests-inputsD29-Jul-202213.6 KiB427421

gen-fromfp-tests.pyD29-Jul-20225.3 KiB14499

gen-libm-test.pyD29-Jul-202227.8 KiB687576

gen-tgmath-tests.pyD29-Jul-202236.2 KiB806663

k_casinh_template.cD29-Jul-20225.5 KiB207157

k_sincosl.cD29-Jul-202227 20

lgamma-compat.hD29-Jul-20222.8 KiB7630

libm-test-acos.incD29-Jul-20221.8 KiB5645

libm-test-acosh.incD29-Jul-20222.2 KiB6150

libm-test-asin.incD29-Jul-20221.9 KiB5645

libm-test-asinh.incD29-Jul-20221.5 KiB4940

libm-test-atan.incD29-Jul-20221.5 KiB5040

libm-test-atan2.incD29-Jul-202214.2 KiB212196

libm-test-atanh.incD29-Jul-20222 KiB5847

libm-test-cabs.incD29-Jul-20221.5 KiB5542

libm-test-cacos.incD29-Jul-20223.1 KiB8363

libm-test-cacosh.incD29-Jul-20223.3 KiB8868

libm-test-canonicalize.incD29-Jul-20227.8 KiB9686

libm-test-carg.incD29-Jul-20222 KiB7352

libm-test-casin.incD29-Jul-20223.2 KiB8465

libm-test-casinh.incD29-Jul-20223.3 KiB8465

libm-test-catan.incD29-Jul-20223.7 KiB9371

libm-test-catanh.incD29-Jul-20223.7 KiB9271

libm-test-cbrt.incD29-Jul-20221.5 KiB5040

libm-test-ccos.incD29-Jul-20223.7 KiB8867

libm-test-ccosh.incD29-Jul-20223.7 KiB8867

libm-test-ceil.incD29-Jul-202211.8 KiB178157

libm-test-cexp.incD29-Jul-20223.3 KiB8563

libm-test-cimag.incD29-Jul-20221.9 KiB5344

libm-test-clog.incD29-Jul-20223.7 KiB9271

libm-test-clog10.incD29-Jul-20223.8 KiB9170

libm-test-compat_totalorder.incD29-Jul-20221.5 KiB5745

libm-test-compat_totalordermag.incD29-Jul-20221.6 KiB5745

libm-test-conj.incD29-Jul-20221.9 KiB5243

libm-test-copysign.incD29-Jul-20227.4 KiB12197

libm-test-cos.incD29-Jul-20221.5 KiB5040

libm-test-cosh.incD29-Jul-20221.5 KiB5040

libm-test-cpow.incD29-Jul-20221.2 KiB4535

libm-test-cproj.incD29-Jul-20224.7 KiB9676

libm-test-creal.incD29-Jul-20221.9 KiB5344

libm-test-csin.incD29-Jul-20223.8 KiB8867

libm-test-csinh.incD29-Jul-20223.8 KiB8867

libm-test-csqrt.incD29-Jul-20223.3 KiB8265

libm-test-ctan.incD29-Jul-20226 KiB142125

libm-test-ctanh.incD29-Jul-20226 KiB141125

libm-test-driver.cD29-Jul-202236.3 KiB1,1381,043

libm-test-erf.incD29-Jul-20221.5 KiB5040

libm-test-erfc.incD29-Jul-20221.4 KiB4838

libm-test-exp.incD29-Jul-20221.5 KiB5040

libm-test-exp10.incD29-Jul-20221.5 KiB5040

libm-test-exp2.incD29-Jul-20221.5 KiB5040

libm-test-expm1.incD29-Jul-20221.5 KiB5040

libm-test-fabs.incD29-Jul-20222.4 KiB6049

libm-test-fdim.incD29-Jul-20228.7 KiB130118

libm-test-floor.incD29-Jul-202211.5 KiB175155

libm-test-fma.incD29-Jul-202236.5 KiB362348

libm-test-fmax.incD29-Jul-20228.8 KiB131119

libm-test-fmaximum.incD29-Jul-20229.2 KiB131119

libm-test-fmaximum_mag.incD29-Jul-202211 KiB145133

libm-test-fmaximum_mag_num.incD29-Jul-202211.2 KiB145133

libm-test-fmaximum_num.incD29-Jul-20229.3 KiB131119

libm-test-fmaxmag.incD29-Jul-202210.5 KiB145133

libm-test-fmin.incD29-Jul-20228.8 KiB130119

libm-test-fminimum.incD29-Jul-20229.2 KiB130119

libm-test-fminimum_mag.incD29-Jul-202211 KiB144133

libm-test-fminimum_mag_num.incD29-Jul-202211.2 KiB144133

libm-test-fminimum_num.incD29-Jul-20229.4 KiB130119

libm-test-fminmag.incD29-Jul-202210.4 KiB144133

libm-test-fmod.incD29-Jul-202221.3 KiB278259

libm-test-fpclassify.incD29-Jul-20223 KiB7161

libm-test-frexp.incD29-Jul-20224.8 KiB9784

libm-test-fromfp.incD29-Jul-20221.3 MiB11,94711,930

libm-test-fromfpx.incD29-Jul-20221.3 MiB11,94711,930

libm-test-getpayload.incD29-Jul-20225.8 KiB9081

libm-test-hypot.incD29-Jul-202212.6 KiB187174

libm-test-ilogb.incD29-Jul-20223.2 KiB7361

libm-test-iscanonical.incD29-Jul-20222.3 KiB5748

libm-test-iseqsig.incD29-Jul-20225.9 KiB9182

libm-test-isfinite.incD29-Jul-20222.4 KiB6757

libm-test-isgreater.incD29-Jul-20225.5 KiB9182

libm-test-isgreaterequal.incD29-Jul-20225.8 KiB9182

libm-test-isinf.incD29-Jul-20222.7 KiB7161

libm-test-isless.incD29-Jul-20225.4 KiB9182

libm-test-islessequal.incD29-Jul-20225.7 KiB9182

libm-test-islessgreater.incD29-Jul-20225.8 KiB9182

libm-test-isnan.incD29-Jul-20222.7 KiB7161

libm-test-isnormal.incD29-Jul-20222.2 KiB5748

libm-test-issignaling.incD29-Jul-20223.1 KiB7363

libm-test-issubnormal.incD29-Jul-20222.3 KiB5748

libm-test-isunordered.incD29-Jul-20225.7 KiB9182

libm-test-iszero.incD29-Jul-20222.2 KiB5748

libm-test-j0.incD29-Jul-20221.6 KiB5141

libm-test-j1.incD29-Jul-20221.6 KiB5141

libm-test-jn.incD29-Jul-20223.1 KiB7663

libm-test-lgamma.incD29-Jul-20222.2 KiB6654

libm-test-llogb.incD29-Jul-20223.2 KiB7361

libm-test-llrint.incD29-Jul-202232 KiB266243

libm-test-llround.incD29-Jul-202216.9 KiB301278

libm-test-log.incD29-Jul-20221.9 KiB5746

libm-test-log10.incD29-Jul-20222 KiB5947

libm-test-log1p.incD29-Jul-20221.8 KiB5443

libm-test-log2.incD29-Jul-20222 KiB5846

libm-test-logb.incD29-Jul-20223.7 KiB8671

libm-test-lrint.incD29-Jul-202237.9 KiB361338

libm-test-lround.incD29-Jul-202219.3 KiB372349

libm-test-modf.incD29-Jul-20223 KiB6656

libm-test-narrow-add.incD29-Jul-202214.9 KiB180166

libm-test-narrow-div.incD29-Jul-202216.7 KiB198182

libm-test-narrow-fma.incD29-Jul-202240 KiB362348

libm-test-narrow-mul.incD29-Jul-202214.8 KiB180166

libm-test-narrow-sqrt.incD29-Jul-20222.2 KiB5746

libm-test-narrow-sub.incD29-Jul-202214.9 KiB180166

libm-test-nearbyint.incD29-Jul-202229.6 KiB185166

libm-test-nextafter.incD29-Jul-20229.4 KiB145129

libm-test-nextdown.incD29-Jul-20223.5 KiB8071

libm-test-nexttoward.incD29-Jul-202212.8 KiB178163

libm-test-nextup.incD29-Jul-20223.4 KiB8071

libm-test-pow.incD29-Jul-202222.5 KiB390351

libm-test-remainder.incD29-Jul-202215.6 KiB205188

libm-test-remquo.incD29-Jul-202215.5 KiB193175

libm-test-rint.incD29-Jul-202227.8 KiB185166

libm-test-round.incD29-Jul-202213.3 KiB199177

libm-test-roundeven.incD29-Jul-202256.5 KiB634618

libm-test-scalb.incD29-Jul-202211.8 KiB170150

libm-test-scalbln.incD29-Jul-202214.1 KiB154134

libm-test-scalbn.incD29-Jul-20229.1 KiB11699

libm-test-setpayload.incD29-Jul-20225.9 KiB113103

libm-test-setpayloadsig.incD29-Jul-20225.8 KiB113103

libm-test-signbit.incD29-Jul-20222.4 KiB6151

libm-test-significand.incD29-Jul-20223 KiB7162

libm-test-sin.incD29-Jul-20221.5 KiB5040

libm-test-sincos.incD29-Jul-20221.7 KiB5241

libm-test-sinh.incD29-Jul-20221.5 KiB5040

libm-test-sqrt.incD29-Jul-20222.1 KiB5746

libm-test-support.cD29-Jul-202232.1 KiB1,207879

libm-test-support.hD29-Jul-20226.5 KiB187122

libm-test-tan.incD29-Jul-20221.5 KiB5040

libm-test-tanh.incD29-Jul-20221.5 KiB5040

libm-test-tgamma.incD29-Jul-20221.9 KiB5545

libm-test-totalorder.incD29-Jul-202226 KiB281272

libm-test-totalordermag.incD29-Jul-202226.6 KiB281272

libm-test-trunc.incD29-Jul-202212.6 KiB195169

libm-test-ufromfp.incD29-Jul-2022787.1 KiB6,8466,828

libm-test-ufromfpx.incD29-Jul-2022784.8 KiB6,8466,828

libm-test-y0.incD29-Jul-20222 KiB5747

libm-test-y1.incD29-Jul-20222 KiB5747

libm-test-yn.incD29-Jul-20227.2 KiB135119

math-narrow.hD29-Jul-202213 KiB399270

math-svid-compat.hD29-Jul-20222.9 KiB8946

math-underflow.hD29-Jul-20222.7 KiB8046

math.hD29-Jul-202248.7 KiB1,4271,133

mul_split.hD29-Jul-20223.5 KiB11662

mul_splitl.hD29-Jul-20221.6 KiB5123

multc3.cD29-Jul-20222.2 KiB8051

s_cacos_template.cD29-Jul-20221.5 KiB5529

s_cacosh_template.cD29-Jul-20222.2 KiB9465

s_canonicalize_template.cD29-Jul-20221.3 KiB3814

s_casin_template.cD29-Jul-20221.5 KiB6235

s_casinh_template.cD29-Jul-20221.8 KiB7046

s_catan_template.cD29-Jul-20223.6 KiB142110

s_catanh_template.cD29-Jul-20223.5 KiB136105

s_ccos_template.cD29-Jul-20221 KiB3512

s_ccosh_template.cD29-Jul-20223.3 KiB138104

s_cexp_template.cD29-Jul-20223.6 KiB151112

s_clog10_template.cD29-Jul-20223.5 KiB12388

s_clog_template.cD29-Jul-20223.1 KiB11685

s_cpow_template.cD29-Jul-20221,000 298

s_cproj_template.cD29-Jul-20221.1 KiB4015

s_csin_template.cD29-Jul-20223.7 KiB162123

s_csinh_template.cD29-Jul-20223.6 KiB157118

s_csqrt_template.cD29-Jul-20224 KiB160128

s_ctan_template.cD29-Jul-20223.3 KiB13093

s_ctanh_template.cD29-Jul-20223.3 KiB13093

s_fdim_template.cD29-Jul-20221.1 KiB3614

s_fma.cD29-Jul-20221.2 KiB3717

s_fmaf.cD29-Jul-20221 KiB3111

s_fmal.cD29-Jul-20221.1 KiB3313

s_fmax_template.cD29-Jul-20221.2 KiB4019

s_fmaximum_mag_num_template.cD29-Jul-20221.2 KiB3616

s_fmaximum_mag_template.cD29-Jul-20221.2 KiB3616

s_fmaximum_num_template.cD29-Jul-20221.1 KiB3414

s_fmaximum_template.cD29-Jul-20221.1 KiB3414

s_fmaxmag_template.cD29-Jul-20221.2 KiB3918

s_fmin_template.cD29-Jul-20221.2 KiB4019

s_fminimum_mag_num_template.cD29-Jul-20221.2 KiB3616

s_fminimum_mag_template.cD29-Jul-20221.2 KiB3616

s_fminimum_num_template.cD29-Jul-20221.1 KiB3414

s_fminimum_template.cD29-Jul-20221.1 KiB3414

s_fminmag_template.cD29-Jul-20221.2 KiB3918

s_iscanonicall.cD29-Jul-202230 20

s_iseqsig_template.cD29-Jul-20221.4 KiB4320

s_ldexp_template.cD29-Jul-2022986 3416

s_nan_template.cD29-Jul-20221 KiB3311

s_nextafter.cD29-Jul-20222.5 KiB9771

s_nextdown_template.cD29-Jul-20221 KiB297

s_nexttowardf.cD29-Jul-20222 KiB7751

s_nexttowardl.cD29-Jul-202273 20

s_significand_template.cD29-Jul-20221.2 KiB348

setfpucw.cD29-Jul-20221.2 KiB3711

t_sincosl.cD29-Jul-202266 20

test-arg-double.hD29-Jul-20221 KiB266

test-arg-float128.hD29-Jul-20221.2 KiB3312

test-arg-float32x.hD29-Jul-20221.1 KiB298

test-arg-float64.hD29-Jul-20221.1 KiB298

test-arg-float64x.hD29-Jul-20221.2 KiB3312

test-arg-ldouble.hD29-Jul-20221.1 KiB3211

test-double-vlen2.hD29-Jul-2022949 244

test-double-vlen4.hD29-Jul-2022949 244

test-double-vlen8.hD29-Jul-2022949 244

test-double.hD29-Jul-20221.2 KiB3213

test-fe-snans-always-signal.cD29-Jul-20221.2 KiB3916

test-femode-traps.cD29-Jul-20223.4 KiB150119

test-femode.cD29-Jul-20225.2 KiB232195

test-fenv-clear-main.cD29-Jul-20222.4 KiB9264

test-fenv-clear.cD29-Jul-202268 32

test-fenv-preserve.cD29-Jul-20221.5 KiB5935

test-fenv-return.cD29-Jul-20222.8 KiB12486

test-fenv-tls.cD29-Jul-20224.5 KiB209178

test-fenv.cD29-Jul-202219.3 KiB785674

test-fesetexcept-traps.cD29-Jul-20221.9 KiB6944

test-fesetexcept.cD29-Jul-20223.4 KiB130102

test-fetestexceptflag.cD29-Jul-20223.7 KiB13196

test-fexcept-traps.cD29-Jul-20222.2 KiB8559

test-fexcept.cD29-Jul-20225.9 KiB207169

test-float-vlen16.hD29-Jul-2022950 244

test-float-vlen4.hD29-Jul-2022947 244

test-float-vlen8.hD29-Jul-2022947 244

test-float.hD29-Jul-20221.2 KiB3313

test-float128.hD29-Jul-20221.4 KiB4320

test-float32.hD29-Jul-20221.3 KiB3815

test-float32x.hD29-Jul-20221.3 KiB3815

test-float64.hD29-Jul-20221.3 KiB3815

test-float64x.hD29-Jul-20221.4 KiB4320

test-flt-eval-method.cD29-Jul-20222 KiB6641

test-fp-ilogb-constants.cD29-Jul-20221.3 KiB4116

test-fp-llogb-constants.cD29-Jul-20221.5 KiB4922

test-fpucw-ieee-static.cD29-Jul-202229 21

test-fpucw-ieee.cD29-Jul-20221 KiB285

test-fpucw-static.cD29-Jul-202224 21

test-fpucw.cD29-Jul-20221.4 KiB4922

test-ibm128.hD29-Jul-2022873 201

test-iseqsig-excess-precision.cD29-Jul-20222.3 KiB8155

test-iszero-excess-precision.cD29-Jul-20221.4 KiB5026

test-ldouble.hD29-Jul-20221.6 KiB4421

test-math-cxx11.ccD29-Jul-20223.4 KiB161136

test-math-errno.hD29-Jul-2022877 201

test-math-exceptions.hD29-Jul-2022869 201

test-math-floatn.hD29-Jul-2022921 212

test-math-iscanonical.ccD29-Jul-20221.3 KiB4924

test-math-iseqsig.ccD29-Jul-20223.1 KiB11277

test-math-isinff.ccD29-Jul-20221.5 KiB4925

test-math-issignaling.ccD29-Jul-20222.9 KiB11474

test-math-iszero.ccD29-Jul-20224.4 KiB165121

test-math-narrow.hD29-Jul-20221.2 KiB278

test-math-scalar.hD29-Jul-2022954 223

test-math-vector.hD29-Jul-20223.2 KiB10170

test-matherr-2.cD29-Jul-20221.5 KiB6033

test-matherr-3.cD29-Jul-20221.2 KiB4520

test-matherr.cD29-Jul-20221.4 KiB5025

test-misc.cD29-Jul-202229.3 KiB1,2121,084

test-nan-const.cD29-Jul-20221.1 KiB3312

test-nan-overflow.cD29-Jul-20221.8 KiB6644

test-nan-payload.cD29-Jul-20223.6 KiB12191

test-narrow-macros.cD29-Jul-20221.8 KiB5727

test-nearbyint-except-2.cD29-Jul-20222 KiB6945

test-nearbyint-except.cD29-Jul-20222.5 KiB8761

test-powl.cD29-Jul-20221.4 KiB5229

test-signgam-main.cD29-Jul-20221.8 KiB6945

test-signgam-uchar-init-static.cD29-Jul-202237 21

test-signgam-uchar-init.cD29-Jul-202276 43

test-signgam-uchar-static.cD29-Jul-202232 21

test-signgam-uchar.cD29-Jul-202276 43

test-signgam-uint-init-static.cD29-Jul-202236 21

test-signgam-uint-init.cD29-Jul-202275 43

test-signgam-uint-static.cD29-Jul-202231 21

test-signgam-uint.cD29-Jul-202275 43

test-signgam-ullong-init-static.cD29-Jul-202238 21

test-signgam-ullong-init.cD29-Jul-202285 43

test-signgam-ullong-static.cD29-Jul-202233 21

test-signgam-ullong.cD29-Jul-202285 43

test-snan.cD29-Jul-20225.3 KiB141109

test-tgmath-int.cD29-Jul-20222.2 KiB7042

test-tgmath-ret.cD29-Jul-20222.8 KiB9362

test-tgmath.cD29-Jul-202218.1 KiB1,2261,081

test-tgmath2.cD29-Jul-202215.2 KiB602512

tgmath.hD29-Jul-202243.6 KiB1,086759

tst-CMPLX.cD29-Jul-20221.3 KiB5647

tst-CMPLX2.cD29-Jul-20223.6 KiB144106

tst-definitions.cD29-Jul-20221.3 KiB4925

w_acos_compat.cD29-Jul-20221.2 KiB4219

w_acos_template.cD29-Jul-20221.4 KiB4014

w_acosf_compat.cD29-Jul-20221.2 KiB4219

w_acosh_compat.cD29-Jul-20221.1 KiB3714

w_acosh_template.cD29-Jul-20221.4 KiB4014

w_acoshf_compat.cD29-Jul-20221.1 KiB3714

w_acoshl_compat.cD29-Jul-20221.2 KiB3714

w_acosl_compat.cD29-Jul-20221.2 KiB4219

w_asin_compat.cD29-Jul-20221.2 KiB4219

w_asin_template.cD29-Jul-20221.4 KiB4014

w_asinf_compat.cD29-Jul-20221.2 KiB4219

w_asinl_compat.cD29-Jul-20221.2 KiB4219

w_atan2_compat.cD29-Jul-20221.3 KiB4519

w_atan2_template.cD29-Jul-20221.4 KiB4014

w_atan2f_compat.cD29-Jul-20221.3 KiB4519

w_atan2l_compat.cD29-Jul-20221.3 KiB4519

w_atanh_compat.cD29-Jul-20221.2 KiB4018

w_atanh_template.cD29-Jul-20221.5 KiB4619

w_atanhf_compat.cD29-Jul-20221.2 KiB4018

w_atanhl_compat.cD29-Jul-20221.2 KiB4018

w_cosh_compat.cD29-Jul-2022859 3516

w_cosh_template.cD29-Jul-20221.4 KiB4115

w_coshf_compat.cD29-Jul-2022845 3716

w_coshl_compat.cD29-Jul-2022875 3716

w_exp.cD29-Jul-2022273 98

w_exp10_compat.cD29-Jul-20221.6 KiB5226

w_exp10_template.cD29-Jul-20221.4 KiB4115

w_exp10f.cD29-Jul-202214 20

w_exp10f_compat.cD29-Jul-20221.4 KiB4620

w_exp10l_compat.cD29-Jul-20221.4 KiB4620

w_exp2.cD29-Jul-2022278 98

w_exp2_compat.cD29-Jul-20221,003 3828

w_exp2_template.cD29-Jul-20221.4 KiB4115

w_exp2f.cD29-Jul-2022278 98

w_exp2f_compat.cD29-Jul-2022525 2315

w_exp2l_compat.cD29-Jul-2022500 2416

w_exp_compat.cD29-Jul-20221.7 KiB5128

w_exp_template.cD29-Jul-20221.4 KiB4216

w_expf.cD29-Jul-2022273 98

w_expf_compat.cD29-Jul-20221.2 KiB3615

w_expl_compat.cD29-Jul-20221 KiB4523

w_fmod_compat.cD29-Jul-20221.2 KiB3715

w_fmod_template.cD29-Jul-20221.5 KiB4114

w_fmodf_compat.cD29-Jul-20221.2 KiB3715

w_fmodl_compat.cD29-Jul-20221.2 KiB3715

w_hypot.cD29-Jul-2022281 98

w_hypot_compat.cD29-Jul-20221.1 KiB4323

w_hypot_template.cD29-Jul-20221.4 KiB4115

w_hypotf.cD29-Jul-2022285 98

w_hypotf_compat.cD29-Jul-2022960 3916

w_hypotl_compat.cD29-Jul-2022915 3917

w_ilogb_template.cD29-Jul-20221.3 KiB4019

w_j0_compat.cD29-Jul-20221.8 KiB6838

w_j0_template.cD29-Jul-20221.6 KiB5325

w_j0f_compat.cD29-Jul-20221.8 KiB7040

w_j0l_compat.cD29-Jul-20221.8 KiB6838

w_j1_compat.cD29-Jul-20221.8 KiB6838

w_j1_template.cD29-Jul-20221.6 KiB5325

w_j1f_compat.cD29-Jul-20221.8 KiB7040

w_j1l_compat.cD29-Jul-20221.8 KiB6838

w_jn_compat.cD29-Jul-20221.8 KiB6838

w_jn_template.cD29-Jul-20221.6 KiB5325

w_jnf_compat.cD29-Jul-20221.8 KiB7040

w_jnl_compat.cD29-Jul-20222.5 KiB9448

w_lgamma.cD29-Jul-2022257 1110

w_lgamma_compat.cD29-Jul-202251 32

w_lgamma_compat2.cD29-Jul-202251 32

w_lgamma_compatf.cD29-Jul-202252 32

w_lgamma_compatl.cD29-Jul-202252 32

w_lgamma_main.cD29-Jul-20221.6 KiB6341

w_lgamma_r_compat.cD29-Jul-2022964 3919

w_lgamma_r_template.cD29-Jul-20221.7 KiB4921

w_lgamma_template.cD29-Jul-20221.5 KiB4417

w_lgammaf.cD29-Jul-2022166 76

w_lgammaf_compat2.cD29-Jul-202252 32

w_lgammaf_main.cD29-Jul-20221.2 KiB4729

w_lgammaf_r_compat.cD29-Jul-2022993 4119

w_lgammal.cD29-Jul-2022168 76

w_lgammal_compat2.cD29-Jul-202252 32

w_lgammal_main.cD29-Jul-20221.4 KiB5329

w_lgammal_r_compat.cD29-Jul-20221 KiB4119

w_llogb_template.cD29-Jul-20221.4 KiB4828

w_log.cD29-Jul-2022273 98

w_log10_compat.cD29-Jul-20221.3 KiB4826

w_log10_template.cD29-Jul-20221.5 KiB4619

w_log10f_compat.cD29-Jul-20221.3 KiB4826

w_log10l_compat.cD29-Jul-20221.4 KiB4826

w_log1p_template.cD29-Jul-20221.1 KiB3615

w_log2.cD29-Jul-2022278 98

w_log2_compat.cD29-Jul-20221.8 KiB6238

w_log2_template.cD29-Jul-20221.4 KiB4619

w_log2f.cD29-Jul-2022278 98

w_log2f_compat.cD29-Jul-20221.4 KiB4826

w_log2l_compat.cD29-Jul-20221.4 KiB4826

w_log_compat.cD29-Jul-20221.8 KiB6238

w_log_template.cD29-Jul-20221.4 KiB4619

w_logf.cD29-Jul-2022273 98

w_logf_compat.cD29-Jul-20221.4 KiB4826

w_logl_compat.cD29-Jul-20221.3 KiB4826

w_pow.cD29-Jul-2022273 98

w_pow_compat.cD29-Jul-20222.2 KiB7849

w_pow_template.cD29-Jul-20221.7 KiB5325

w_powf.cD29-Jul-2022273 98

w_powf_compat.cD29-Jul-20221.8 KiB6437

w_powl_compat.cD29-Jul-20221.8 KiB6437

w_remainder.cD29-Jul-2022199 98

w_remainder_compat.cD29-Jul-20221.3 KiB4220

w_remainder_template.cD29-Jul-20221.5 KiB4114

w_remainderf.cD29-Jul-2022137 65

w_remainderf_compat.cD29-Jul-20221.3 KiB3917

w_remainderl.cD29-Jul-2022139 65

w_remainderl_compat.cD29-Jul-20221.3 KiB3917

w_scalb_compat.cD29-Jul-20222 KiB8356

w_scalb_template.cD29-Jul-20221.6 KiB5829

w_scalbf_compat.cD29-Jul-20221.9 KiB7952

w_scalbl_compat.cD29-Jul-20221.9 KiB7952

w_scalbln_template.cD29-Jul-20221.1 KiB3713

w_sinh_compat.cD29-Jul-2022828 3516

w_sinh_template.cD29-Jul-20221.4 KiB4115

w_sinhf_compat.cD29-Jul-2022849 3716

w_sinhl_compat.cD29-Jul-2022876 3716

w_sqrt_compat.cD29-Jul-20221.3 KiB4321

w_sqrt_template.cD29-Jul-20221.6 KiB4923

w_sqrtf_compat.cD29-Jul-20221.2 KiB3715

w_sqrtl_compat.cD29-Jul-20221.3 KiB4119

w_tgamma_compat.cD29-Jul-20221.3 KiB4727

w_tgamma_template.cD29-Jul-20221.8 KiB5626

w_tgammaf_compat.cD29-Jul-20221.2 KiB4827

w_tgammal_compat.cD29-Jul-20221.3 KiB4827

README.libm-test

1README for libm-test math test suite
2====================================
3
4The libm-test math test suite tests a number of function points of
5math functions in the GNU C library.  The following sections contain a
6brief overview.  Please note that the test drivers and the Python
7script "gen-libm-test.py" have some options.  A full list of options
8is available with --help (for the test drivers) and -h for
9"gen-libm-test.py".
10
11
12What is tested?
13===============
14The tests just evaluate the functions at specified points and compare
15the results with precomputed values and the requirements of the ISO
16C99 standard.
17
18Besides testing the special values mandated by IEEE 754 (infinities,
19NaNs and minus zero), some more or less random values are tested.
20
21Files that are part of libm-test
22================================
23
24The main files are "libm-test-<func>.inc".  They are independent of
25the target platform and the specific real floating type and format and
26contain placeholder test "templates" for math functions defined in
27libm.  These files, along with generated files named
28"auto-libm-test-out-<func>", are preprocessed by the Python script
29"gen-libm-test.py" to expand the templates and produce a set of test
30cases for each math function that are specific to the target platform
31but still independent of the real floating type.  The results of the
32processing are "libm-test-<func>.c" and a file "libm-test-ulps.h" with
33platform specific deltas by which the actual math function results may
34deviate from the expected results and still be considered correct.
35
36The test drivers "test-double-<func>.c", "test-float-<func>.c", and
37"test-ldouble-<func>.c", generated by the Makefile, test the normal
38double, float and long double implementation of libm.  Each driver
39selects the desired real floating type to exercise the math functions
40to test with (float, double, or long double) by defining a small set
41of macros just before including the generic "libm-test.c" file. Each
42driver is compiled into a single executable test program with the
43corresponding name.
44
45As mentioned above, the "gen-libm-test.py" script looks for a file
46named "libm-test-ulps" in the platform specific sysdep directory (or
47its fpu or nofpu subdirectory) and for each variant (real floating
48type and rounding mode) of every tested function reads from it the
49maximum difference expressed as Units of Least Precision (ULP) the
50actual result of the function may deviate from the expected result
51before it's considered incorrect.
52
53The "auto-libm-test-out-<func>" files contain sets of test cases to
54exercise, the conditions under which to exercise each, and the
55expected results.  The files are generated by the
56"gen-auto-libm-tests" program from the "auto-libm-test-in" file.  See
57the comments in gen-auto-libm-tests.c for details about the content
58and format of the -in and -out files.
59
60How can I generate "libm-test-ulps"?
61====================================
62
63To automatically generate a new "libm-test-ulps" run "make regen-ulps".
64This generates the file "math/NewUlps" in the build directory.  The file
65contains the sorted results of all the tests.  You can use the "NewUlps"
66file as the machine's updated "libm-test-ulps" file.  Copy "NewUlps" to
67"libm-test-ulps" in the appropriate machine sysdep directory.  Verify
68the changes, post your patch, and check it in after review.
69
70To manually generate a new "libm-test-ulps" file, first remove "ULPs"
71file in the current directory, then you can execute for example:
72    ./testrun.sh math/test-double -u --ignore-max-ulp=yes
73This generates a file "ULPs" with all double ULPs in it, ignoring any
74previously calculated ULPs, and running with the newly built dynamic
75loader and math library (assumes you didn't install your build).  Now
76generate the ULPs for all other formats, the tests will be appending the
77data to the "ULPs" file.  As final step run "gen-libm-test.py" with the
78file as input and ask to generate a pretty printed output in the file
79"NewUlps":
80  gen-libm-test.py -u ULPs -n NewUlps
81Copy "NewUlps" to "libm-test-ulps" in the appropriate machine sysdep
82directory.
83
84Note that the test drivers have an option "-u" to output an unsorted
85list of all epsilons that the functions have.  The output can be read
86in directly but it's better to pretty print it first.
87"gen-libm-test.py" has an option to generate a pretty-printed and
88sorted new ULPs file from the output of the test drivers.
89
90Contents of libm-test-ulps
91==========================
92
93Since libm-test-ulps can be generated automatically, just a few notes.
94The file contains lines for maximal errors of single functions, like:
95
96Function "yn":
97double: 6
98
99The keywords are float, double, and ldouble.
100
101Adding tests to libm-test-<func>.inc
102====================================
103
104The tests are evaluated by a set of special test macros.  The macros
105start with "TEST_" followed by a specification the input values, an
106underscore and a specification of the output values.  As an example,
107the test macro for a function with input of type FLOAT (FLOAT is
108either float, double, long double) and output of type FLOAT is
109"TEST_f_f".  The macro's parameter are the name of the function, the
110input parameter, output parameter and optionally one exception
111parameter.
112
113The accepted parameter types are:
114- "f" for FLOAT
115- "j" for long double.
116- "a" for ARG_FLOAT, the argument type for narrowing functions.
117- "b" for boolean - just tests if the output parameter evaluates to 0
118  or 1 (only for output).
119- "c" for complex.  This parameter needs two values, first the real,
120  then the imaginary part.
121- "i" for int.
122- "l" for long int.
123- "L" for long long int.
124- "u" for unsigned int.
125- "M" for intmax_t.
126- "U" for uintmax_t.
127- "p" for an argument (described in the previous character) passed
128  through a pointer rather than directly.
129- "F" for the address of a FLOAT (only as input parameter)
130- "I" for the address of an int (only as input parameter)
131- "1" for an additional output (either output through a pointer passed
132  as an argument, or to a global variable such as signgam).
133
134How to read the test output
135===========================
136
137Running each test on its own at the default level of verbosity will
138print on stdout a line describing the implementation of math functions
139exercised by the test (float, double, or long double).  This is then
140followed by the details of test failures (if any).  The output concludes
141by a summary listing the number of test cases exercised and the number
142of test failures uncovered.
143
144For each test failure (and for each test case at higher levels of
145verbosity), the output contains the name of the function under test
146and its arguments or conditions that triggered the failure.  Note
147that the name of the function in the output need not correspond
148exactly to the name of the math function actually invoked. For example,
149the output will refer to the "acos" function even if the actual function
150under test is acosf (for the float version) or acosl (for the long
151double version).  Also note that the function arguments may be shown
152in either the decimal or the  hexadecimal floating point format which
153may or may not correspond to the format used in the auto-libm-test-in
154file. Besides the name of the function, for each test failure the
155output contains the actual and expected results and the difference
156between the two, printed in both the decimal and hexadecimal
157floating point format, and the ULP and maximum ULP for the test
158case.
159