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.8.0 lcov report (development 19611-73a567d) Lines: 1106 1148 96.3 %
Date: 2016-09-27 05:54:40 Functions: 69 69 100.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Zf_add 11024448
Zf_mul 847488
Zf_mulsqrt2 11024448
Zf_red_destroy 21933996
Zf_shift 11387685
Zf_sqr 157056
Zf_sub 11222976
addiispec 1734156957
addshiftw 107637660
adduispec 859667309
adduispec_offset 214899471
addumului 428220
affir 85839207
catii 65883228
cmpiispec 1946050813
convi 239025
convi_dac 1072518
diviiexact 246634506
divis 349806
divis_rem 24404236
diviu_rem 105157668
diviuexact 19766589
diviuexact_i 17425086
diviuuexact 394155
divri 13331670
divrr 70942926
dvmdii 556243875
equaliispec 41688141
floorr 319698
incloop 19104474
incneg 4638
incpos 19084305
int_normalize 190973727
mantissa2nr 8696466
muliifft_dis 998982
muliifft_dit 1841892
muliifft_spliti 10140
muliifft_unspliti 5562
muliispec 1573468004
muliispec_basecase 1538855210
muliispec_fft 4578
mulliifft_params 5562
muluispec 1478185811
muluui 410811
p_sqrtu1 16975688
p_sqrtu2 15070239
pari_kernel_close 573
pari_kernel_init 574
red_montgomery 6755511
remi2n 6133479
resetloop 117531
roundr_up_ip 210482576
setloop 1809243
shiftispec 347606054
sqrispec 522888471
sqrispec_basecase 519295851
sqrispec_fft 984
sqrtispec 47971026
sqrtispec1_sh 1905449
sqrtispec2 15029412
sqrtispec2_sh 40827
sqrtr_abs 14988069
sqrtremi 1987619
subiispec 1416048212
subiuspec 697884874
truncr 1107345
umodiu 924512456
xmpn_copy 154090941
xmpn_zero 14988069

Generated by: LCOV version 1.11