Code coverage tests

This page documents the degree to which the PARI/GP source code is tested by our public test suite, distributed with the source distribution in directory src/test/. This is measured by the gcov utility; we then process gcov output using the lcov frond-end.

We test a few variants depending on Configure flags on the pari.math.u-bordeaux.fr machine (x86_64 architecture), and agregate them in the final report:

The target is 90% coverage for all mathematical modules (given that branches depending on DEBUGLEVEL or DEBUGMEM are not covered). This script is run to produce the results below.

LCOV - code coverage report
Current view: top level - kernel/none - mp.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 20076-e66e249) Lines: 1106 1148 96.3 %
Date: 2017-01-17 05:50:07 Functions: 69 69 100.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Zf_add 10032576
Zf_mul 767616
Zf_mulsqrt2 10032576
Zf_red_destroy 19756596
Zf_shift 10257147
Zf_sqr 157056
Zf_sub 10190184
addiispec 1718310627
addshiftw 103938546
adduispec 868087030
adduispec_offset 212506551
addumului 428214
affir 80798724
catii 68429610
cmpiispec 1876644092
convi 242605
convi_dac 1076775
diviiexact 182176194
divis 350931
divis_rem 22239465
diviu_rem 119142693
diviuexact 19747575
diviuexact_i 15755529
diviuuexact 425109
divri 13472880
divrr 64800888
dvmdii 546347119
equaliispec 42245174
floorr 339927
incloop 19097838
incneg 4641
incpos 19077648
int_normalize 191502597
mantissa2nr 8425623
muliifft_dis 919380
muliifft_dit 1682688
muliifft_spliti 9600
muliifft_unspliti 5292
muliispec 1679024895
muliispec_basecase 1647079314
muliispec_fft 4308
mulliifft_params 5292
muluispec 1558422486
muluui 441765
p_sqrtu1 17501515
p_sqrtu2 15588357
pari_kernel_close 594
pari_kernel_init 595
red_montgomery 6834819
remi2n 6119481
resetloop 117531
roundr_up_ip 208153568
setloop 1812645
shiftispec 329278767
sqrispec 546951258
sqrispec_basecase 543409449
sqrispec_fft 984
sqrtispec 49758978
sqrtispec1_sh 1913158
sqrtispec2 15544173
sqrtispec2_sh 44184
sqrtr_abs 15503118
sqrtremi 1998397
subiispec 1340832389
subiuspec 655410901
truncr 1111074
umodiu 897940881
xmpn_copy 159879198
xmpn_zero 15503118

Generated by: LCOV version 1.11