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/gmp - mp.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 16937-4bd9b4e) Lines: 641 716 89.5 %
Date: 2014-10-24 Functions: 53 54 98.1 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 421 533 79.0 %

Function Name Sort by function name Hit count Sort by hit count
GEN2mpz 98888555
addiispec 1079479034
adduispec 926572836
adduispec_offset 286500965
addumului 989676
affir 100243442
cmpiispec 1475033181
convi 327281
diviiexact 312993339
divis 24061
divis_rem 35299192
diviu_rem 108521415
diviuexact 304510430
diviuuexact 52920
divri 13529616
divri_with_gmp 3032310
divrr 74167984
divrr_with_gmp 14414368
dvmdii 530925320
equaliispec 22207496
floorr 371224
icopy_ef 7551644
incloop 17255462
incneg 5384
incpos 17241338
int_normalize 130080597
mantissa2nr 15340802
mpz2GEN 90256213
muliispec 1059168356
muliispec_mirror 54133601
muluispec 1174383882
muluui 75128
pari_gmp_free 3002
pari_gmp_realloc 0
pari_kernel_close 688
pari_kernel_init 700
red_montgomery 5321787
remi2n 7167581
resetloop 145468
roundr_up_ip 82397267
setloop 1464719
shiftispec 201960986
sqrispec 569790079
sqrispec_mirror 6678543
sqrtr_abs 11882747
sqrtremi 1396042
subiispec 1304265136
subiuspec 833200950
truncr 383169
umodiu 416864130
xmpn_copy 1657872
xmpn_mirror 166653730
xmpn_mirrorcopy 189984413
xmpn_zero 29329425

Generated by: LCOV version 1.9