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 - level1.h (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 21355-49ee849) Lines: 555 710 78.2 %
Date: 2017-11-25 06:21:19 Functions: 197 260 75.8 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Mod64 0
addiiz 0
addirz 0
addriz 0
addsiz 0
addsrz 0
addssz 0
affectsign 0
affsz 0
divirz 0
divisz 0
divriz 0
divsi_rem 0
divsiz 0
divsrz 0
divss 0
divss_rem 0
divssz 0
dvdisz 0
dvdiuz 0
dvmdiiz 0
dvmdis 0
dvmdisz 0
dvmdsi 0
dvmdsiz 0
dvmdss 0
dvmdssz 0
mod64 0
modisz 0
modsiz 0
modssz 0
mpaddz 0
mpceil 0
mpfloor 0
mpmulz 0
mpsubz 0
muliiz 0
mulirz 0
mulriz 0
mulsiz 0
mulsrz 0
mulssz 0
rdivis 0
rdivsi 0
real_m2n 0
remiiz 0
remis 0
remisz 0
remsi 0
remsiz 0
remss 0
remssz 0
shiftl 0
shiftlr 0
subiiz 0
subirz 0
subisz 0
subriz 0
subrsz 0
subsiz 0
subsrz 0
subssz 0
varnmin 0
rdiviiz 14
diviiz 21
mptrunc 21
dvdsi 84
real_m1 91
sdivsi 140
dvdui 147
varnmax 196
mod32 252
divrrz 368
truedivis 715
udivuu_rem 896
subis 1142
dvdiu 2331
cgetr_block 2735
dvdiiz 3783
udivui_rem 10731
mpabs_shallow 11522
mod16 24843
addss 25046
subss 25046
subuu 25046
stack_calloc 31136
cmprs 38668
mulrrz 56940
uutoineg 60418
cmpsr 61207
real2n 83588
divrsz 90548
affiz 109099
cgetg_block 125469
mpaff 136407
equalis 137598
equalsi 137717
ceildivuu 148731
mpdiv 151957
absi_shallow 156016
Mod32 166586
addri 182353
Mod16 216468
mpexpo 246835
cmpri 317280
affsi 367590
mindd 395978
real_1_bit 531488
mpcmp 537049
cmpir 564318
absrnz_equal2n 606560
modss 655859
dvdis 675379
modis 710236
rdivss 839647
stack_malloc_align 937546
maxdd 1119395
umodui 1201974
subri 1210723
negr 1213454
mpround 1257996
subrrz 1295642
Mod8 1307992
Mod4 1326731
absrnz_equal1 1330403
addrrz 1396548
dvdii 1472621
minuu 1830585
evalprecp 1892955
Mod2 2478448
smodis 2529148
addrs 2703449
subrs 3005983
Fl_ellj_pre 3392915
stack_malloc 3939750
mulru 4244556
cmpis 4353417
cmpsi 4355377
maxuu 4949829
subsi 5204890
affectsign_safe 5306674
umodi2n 5496295
affur 5698572
utor 5698572
truedivsi 6084679
itou_or_0 6327539
mpsqr 6340661
divii 7246374
modsi 7431914
remlll_pre 8351998
affui 8407697
mpcopy 9119049
itos_or_0 9491196
mulrs 10015584
fractor 11066462
rdivii 11138803
Fl_div 11713673
mod4 11882011
umuluu_or_0 12194780
udiviu_rem 12480475
int_bit 12515221
evalvalp 12873695
Fl_center 12879429
umodsu 13211418
sdivsi_rem 13516837
Fl_halve 13583538
mpshift 14438120
affrr_fixlg 14999540
mpsub 17928421
mod2 18927231
mulri 20160870
absr 25615806
absequaliu 25726529
absequalui 25831062
mpodd 26241504
real_0 26770704
real_1 28034430
icopyspec 28447641
subiu 28535856
truedivii 28970861
abscmpiu 29856962
abscmpui 29913297
subui 32304273
sdivss_rem 44706361
mpadd 46385195
Fl_addmulmul_pre 47262824
mod8 48453414
fixlg 50771570
togglesign_safe 51255444
shiftr 52937867
mpmul 53321611
addiu 54565024
vali 55764439
addui 56010240
itou 63979177
Fl_sqr 64911267
addis 72774262
addsi 75775859
shiftr_inplace 78030021
subir 79295982
rtor 79592976
Fl_neg 81025686
affii 88085608
mod2BIL 94127777
Fl_triple 101934003
real_0_bit 106036401
addir 117603675
mulis 126303529
stor 144714017
affsr 144785025
varncmp 145905291
itor 159140072
dvmduBIL 174221851
smodss 179003188
utoineg 199380859
cgetineg 199541672
rcopy 236543056
negi 241735596
itos 253732294
absi 316402573
expu 329160120
mpneg 340842775
mpabs 357125378
stoi 373475391
setabssign 392725800
cgetg_copy 433450380
expi 586561259
muliu 662225612
minss 669985750
togglesign 734290600
Fl_double 767776603
addrr 804321180
subrr 885422873
Fl_mul 926845394
remii 1345269878
leafcopy 1442947361
adduu 1655732984
stackdummy 1730363007
Fl_sqr_pre 2259626914
shift_right 2478389146
Fl_add 2692163609
dvmdsBIL 2753824333
Fl_mul_pre 2781987148
shift_left 2858983635
maxss 2963201957
subii 3933498849
uutoi 4330036932
icopy 4423893742
addii 4593463807
Fl_addmul_pre 4862960296
Fl_sub 4929354606
cgetg 5363730036
evalexpo 5476507096
cgetr 5669173726
utoi 5902931772
utoipos 7113098075
cgetipos 8105621849
cgeti 14019698569
new_chunk 40168806612
evallg 42493797919

Generated by: LCOV version 1.11