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-bordeaux1.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 16746-c2cb716) Lines: 1108 1148 96.5 %
Date: 2014-08-31 Functions: 69 69 100.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 924 1110 83.2 %

Function Name Sort by function name Hit count Sort by hit count
Zf_add 5954496
Zf_mul 446592
Zf_mulsqrt2 5954496
Zf_red_destroy 10683852
Zf_shift 5615742
Zf_sqr 83712
Zf_sub 6093231
addiispec 1109436027
addshiftw 66968466
adduispec 719356827
adduispec_offset 183910515
addumului 542115
affir 76691925
catii 49596888
cmpiispec 1197922587
convi 261708
convi_dac 1223598
diviiexact 163832727
divis 18168
divis_rem 27271746
diviu_rem 76420104
diviuexact 3517665
diviuexact_i 10681032
diviuuexact 39897
divri 10771665
divrr 58650198
dvmdii 373368441
equaliispec 17662068
floorr 348228
incloop 10412730
incneg 4056
incpos 10402101
int_normalize 149581212
mantissa2nr 7778949
muliifft_dis 527772
muliifft_dit 972147
muliifft_spliti 4749
muliifft_unspliti 2532
muliispec 948490566
muliispec_basecase 928193850
muliispec_fft 2217
mulliifft_params 2532
muluispec 888114567
muluui 56553
p_sqrtu1 10356480
p_sqrtu2 9313734
pari_kernel_close 498
pari_kernel_init 498
red_montgomery 6207447
remi2n 5384187
resetloop 109113
roundr_up_ip 73849439
setloop 1098567
shiftispec 213946032
sqrispec 454145268
sqrispec_basecase 452824644
sqrispec_fft 315
sqrtispec 34109181
sqrtispec1_sh 1042746
sqrtispec2 9310737
sqrtispec2_sh 2997
sqrtr_abs 9303204
sqrtremi 1053276
subiispec 1036302180
subiuspec 704436831
truncr 338802
umodiu 548013390
xmpn_copy 113353290
xmpn_zero 9303204

Generated by: LCOV version 1.9