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 - basemath - ZV.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 20277-2bd9113) Lines: 761 837 90.9 %
Date: 2017-02-21 05:49:51 Functions: 108 114 94.7 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Flc_lincomb1_inplace 8702134
RgM_check_ZM 121746
RgV_check_ZV 478787
ZC_ZV_mul 0
ZC_Z_add 196193
ZC_Z_div 184226
ZC_Z_divexact 2468469
ZC_Z_mul 2591473
ZC_Z_sub 0
ZC_add 1016778
ZC_add_i 12845588
ZC_copy 3089908
ZC_hnfremdiv 788308
ZC_is_ei 79177
ZC_lincomb 9499981
ZC_lincomb1 2379653
ZC_lincomb1_inplace 38963696
ZC_lincomb_1 436601
ZC_neg 2493221
ZC_reducemodlll 144949
ZC_reducemodmatrix 160237
ZC_reducemodmatrix_i 160237
ZC_sub 1137504
ZC_sub_i 1861493
ZC_z_mul 13657
ZMV_to_zmV 21
ZM_ZC_mul 5235882
ZM_ZC_mul_i 20217328
ZM_Z_div 10675
ZM_Z_divexact 787913
ZM_Z_mul 600418
ZM_add 1098820
ZM_copy 186243
ZM_det_triangular 790931
ZM_diag_mul 36520
ZM_equal 419552
ZM_hnfdivrem 27336
ZM_isdiagonal 54360
ZM_ishnf 61376
ZM_isidentity 272016
ZM_isscalar 15416
ZM_max_lg 1563
ZM_mul 4350534
ZM_mul_classical 4415312
ZM_mul_diag 14
ZM_mul_i 4425525
ZM_mul_sw 11249
ZM_multosym 0
ZM_nc_mul_i 650987
ZM_neg 277816
ZM_nm_mul 621073
ZM_pow 0
ZM_powu 420
ZM_reducemodlll 0
ZM_reducemodmatrix 4396
ZM_reducemodmatrix_i 4396
ZM_sqr 1036
ZM_sqr_i 1036
ZM_sub 638916
ZM_supnorm 2247
ZM_to_zm 868
ZM_togglesign 0
ZM_transmul 497
ZM_transmultosym 160265
ZM_zc_mul 1486022
ZM_zc_mul_i 2697462
ZM_zm_mul 588168
ZMrow_ZC_mul 23956161
ZMrow_ZC_mul_i 150103857
ZRED 391230
ZV_ZM_mul 6342
ZV_abscmp 3480
ZV_cmp 601702
ZV_content 9912
ZV_dotproduct 9914796
ZV_dotproduct_i 11886095
ZV_dotsquare 4187453
ZV_equal 7762023
ZV_equal0 514594
ZV_equal_lg 9119628
ZV_max_lg 10612
ZV_neg_inplace 55054
ZV_prod 7380312
ZV_sum 56
ZV_to_nv 6699
ZV_togglesign 1834680
ZV_zc_mul 1645
Z_ZC_sub 135963
ZincrementalGS 547120
Zupdate_row 211908
_ZM_mul 56
_ZM_sqr 560
_mulii 272800240
add_slices 89992
check_ZV 386782
nm_Z_mul 621073
subtract_slices 78743
vecsmall_prod 14694393
zmV_to_ZMV 98
zm_to_Flm 15792
zm_to_ZM 368844
zvV_equal 385
zv_ZM_mul 1295
zv_content 978957
zv_dotproduct 151007458
zv_equal 22425100
zv_equal0 17347680
zv_neg 240616
zv_neg_inplace 252
zv_prod 288350
zv_prod_Z 364890
zv_sum 1582
zv_to_Flv 223314
zv_z_mul 8248

Generated by: LCOV version 1.11