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 21921-ca7d0c8) Lines: 555 710 78.2 %
Date: 2018-02-20 06:16:13 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 375
truedivis 855
udivuu_rem 896
subis 1128
dvdiu 2142
cgetr_block 2847
dvdiiz 4028
udivui_rem 10745
mpabs_shallow 11522
addss 25046
subss 25046
subuu 25046
mod16 25214
stack_calloc 34244
cmprs 38668
mulrrz 56940
cmpsr 62320
uutoineg 76646
real2n 90040
divrsz 90548
cgetg_block 123645
equalis 137692
equalsi 137811
ceildivuu 147058
affiz 147656
absi_shallow 155960
mpdiv 157487
Mod32 166663
mpaff 173719
Fl_ellj_pre 191557
addri 199013
Mod16 216545
mpexpo 249202
absrnz_equal2n 298671
cmpri 317520
mindd 397930
affsi 406178
mpcmp 544470
cmpir 566030
real_1_bit 572709
absrnz_equal1 589270
modss 656005
modis 710392
dvdis 718338
rdivss 839647
stack_malloc_align 984404
negr 1196988
umodui 1216276
subrrz 1295642
mpround 1300481
Mod8 1307999
Mod4 1329671
addrrz 1396548
dvdii 1458303
subri 1473133
maxdd 1528771
minuu 1846547
evalprecp 1905258
Mod2 2478315
smodis 2623041
addrs 2803108
mpcopy 2919928
subrs 3112487
stack_malloc 4083356
cmpis 4357084
cmpsi 4359268
mulru 4378095
maxuu 4980669
affectsign_safe 5304007
subsi 5482096
umodi2n 5499263
affur 5667251
utor 5667251
umuluu_or_0 5907068
truedivsi 6084672
mpsqr 6356142
itou_or_0 6459151
remlll_pre 7208401
divii 7287712
modsi 7434308
affui 8407641
Fl_div 8618696
itos_or_0 9609206
mulrs 10015584
int_bit 10076971
fractor 11135362
rdivii 11207703
umodsu 11791975
mod4 11982810
udiviu_rem 12480475
Fl_center 12640484
sdivsi_rem 13519225
evalvalp 13676303
Fl_halve 14454777
affrr_fixlg 15133530
mulri 15643006
mpshift 15768254
mpsub 18227930
mod2 19239327
absr 25437063
absequaliu 25497741
absequalui 25603005
mpodd 26391681
real_0 26535956
icopyspec 26816611
truedivii 28042457
real_1 28594112
subiu 29266738
abscmpiu 31032703
abscmpui 31089463
subui 33148771
sdivss_rem 35063070
mpadd 47035526
togglesign_safe 48666424
itou 48903831
Fl_addmulmul_pre 49423680
mod8 50563859
shiftr 52839254
vali 53149558
mpmul 53691167
fixlg 57924561
addiu 64253285
addui 65695047
Fl_sqr 67778195
Fl_neg 72117174
Fl_triple 73844818
addis 74255170
addsi 77498768
shiftr_inplace 78785078
subir 80164666
rtor 81763460
affii 93041066
mod2BIL 96802014
real_0_bit 97929227
addir 112082430
mulis 133038197
stor 142665441
affsr 142736449
varncmp 144797256
itor 162143538
dvmduBIL 174453182
smodss 194170221
utoineg 211790654
cgetineg 211951474
rcopy 214134820
negi 247098110
itos 282554656
absi 324482615
expu 328960992
mpneg 343030041
mpabs 365121130
stoi 382979573
setabssign 398967248
Fl_double 407256646
cgetg_copy 434099691
expi 593686374
muliu 669514258
minss 721797068
togglesign 734047216
addrr 749735428
Fl_mul 850817608
subrr 869490664
remii 1340177951
leafcopy 1439857725
Fl_sqr_pre 1676966844
adduu 1690197694
stackdummy 1784687851
shift_right 2320377758
Fl_add 2485445041
dvmdsBIL 2710856350
Fl_mul_pre 2713056346
shift_left 2820868364
maxss 3070965528
subii 3937962467
uutoi 4418304789
icopy 4466738267
addii 4623029443
Fl_sub 4694560641
Fl_addmul_pre 4808812555
cgetg 5300238972
evalexpo 5375774477
cgetr 5567394775
utoi 6024736419
utoipos 7285342511
cgetipos 8282809698
cgeti 14167617760
new_chunk 40035277738
evallg 42561790830

Generated by: LCOV version 1.11