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 to exceed 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.16.2 lcov report (development 29420-55f63b8cfe) Lines: 683 719 95.0 %
Date: 2024-07-03 09:03:24 Functions: 54 56 96.4 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
GEN2mpz 109825318
absdiviu_rem 109520625
addiispec 3156818558
adduispec 2509850347
adduispec_offset 575183157
addumului 0
affir 396763793
cmpiispec 3716742185
convi 427404
diviiexact 472016766
divis 965801
divis_rem 83913374
diviuexact 30747146
diviuexact_i 370356158
diviuuexact 199468
divri 150754931
divri_with_gmp 35069765
divrr 140146986
divrr_with_gmp 74631357
dvmdii 1888641421
equaliispec 269938016
floorr 6945741
icopy_ef 40502156
incloop 99564735
incneg 66652
incpos 99156701
int_normalize 292382748
mantissa2nr 137154743
mpz2GEN 54913946
muliispec 5660755910
muliispec_mirror 83949712
muluispec 5320598380
muluui 221681
pari_gmp_free 1733454
pari_gmp_realloc 0
pari_kernel_close 1076
pari_kernel_init 1084
pari_kernel_version 4
red_montgomery 37328838
remi2n 36336281
resetloop 174328
roundr_up_ip 520687286
setloop 2996966
shiftispec 690076948
sqrispec 986213845
sqrispec_mirror 41330661
sqrtr_abs 124955747
sqrtremi 5099918
subiispec 2860877164
subiuspec 1659356290
truncr 3472694
umodiu 1188653018
xmpn_copy 6679452
xmpn_mirror 579600724
xmpn_mirrorcopy 709199860
xmpn_zero 234435603

Generated by: LCOV version 1.16