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) Coverage Total Hit
Test: PARI/GP v2.19.0 lcov report (development 31092-e6893b0017) Lines: 95.0 % 718 682
Test Date: 2026-08-24 17:04:50 Functions: 96.4 % 56 54
Legend: Lines:     hit not hit

Function Name Sort by function name Hit count Sort by function hit count
GEN2mpz 117013740
absdiviu_rem 52882233
addiispec 3497972616
adduispec 2910531276
adduispec_offset 775225829
addumului 0
affir 422173001
cmpiispec 4256825474
convi 447824
diviiexact 561386956
divis 336637
divis_rem 94381157
diviuexact 34276035
diviuexact_i 441849658
diviuuexact 200898
divri 161200939
divri_with_gmp 35425370
divrr 151749141
divrr_with_gmp 78685598
dvmdii 2315394009
equaliispec 310394581
floorr 6429922
icopy_ef 42973228
incloop 64221205
incneg 66684
incpos 63817869
int_normalize 322834091
mantissa2nr 142731515
mpz2GEN 58506870
muliispec 6212980737
muliispec_mirror 86836573
muluispec 5943132200
muluui 223122
pari_gmp_free 1632816
pari_gmp_realloc 0
pari_kernel_close 1092
pari_kernel_init 1100
pari_kernel_version 4
red_montgomery 34729476
remi2n 38604840
resetloop 174380
roundr_up_ip 562368836
setloop 2999288
shiftispec 763878770
sqrispec 1083061834
sqrispec_mirror 42195509
sqrtr_abs 131572209
sqrtremi 5137820
subiispec 3277707301
subiuspec 1873877576
truncr 2530509
umodiu 1374024813
xmpn_copy 7066396
xmpn_mirror 609310393
xmpn_mirrorcopy 742274596
xmpn_zero 245683177

Generated by: LCOV version 2.0-1