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.8.0 lcov report (development 19608-b7b365e) Lines: 732 813 90.0 %
Date: 2016-09-26 05:54:43 Functions: 105 112 93.8 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Flc_lincomb1_inplace 7212116
RgM_check_ZM 114181
RgV_check_ZV 458696
ZC_ZV_mul 0
ZC_Z_add 101518
ZC_Z_div 28252
ZC_Z_divexact 2429908
ZC_Z_mul 2999050
ZC_Z_sub 0
ZC_add 1122719
ZC_add_i 2561005
ZC_copy 964992
ZC_hnfremdiv 832018
ZC_is_ei 37569
ZC_lincomb 10188840
ZC_lincomb1 2516559
ZC_lincomb1_inplace 47492768
ZC_lincomb_1 452968
ZC_neg 2113138
ZC_reducemodlll 320268
ZC_reducemodmatrix 321843
ZC_reducemodmatrix_i 321843
ZC_sub 1223352
ZC_sub_i 1943335
ZC_z_mul 13601
ZMV_to_zmV 21
ZM_ZC_mul 5066999
ZM_ZC_mul_i 19838725
ZM_Z_div 1904
ZM_Z_divexact 785697
ZM_Z_mul 56722
ZM_add 652921
ZM_copy 87859
ZM_det_triangular 749764
ZM_diag_mul 945
ZM_equal 500522
ZM_hnfdivrem 62358
ZM_ishnf 78407
ZM_isidentity 253689
ZM_isscalar 15325
ZM_max_lg 1738
ZM_mul 4323101
ZM_mul_classical 4409978
ZM_mul_diag 14
ZM_mul_i 4395068
ZM_mul_sw 10696
ZM_multosym 0
ZM_nc_mul_i 644522
ZM_neg 228445
ZM_nm_mul 615005
ZM_pow 0
ZM_powu 23786
ZM_reducemodlll 0
ZM_reducemodmatrix 5460
ZM_reducemodmatrix_i 5460
ZM_sqr 25606
ZM_sqr_i 25606
ZM_sub 633002
ZM_supnorm 1274
ZM_to_zm 777
ZM_togglesign 0
ZM_transmul 497
ZM_transmultosym 160265
ZM_zc_mul 1544141
ZM_zc_mul_i 2754764
ZM_zm_mul 587790
ZMrow_ZC_mul 23911046
ZMrow_ZC_mul_i 146646806
ZRED 855324
ZV_ZM_mul 6272
ZV_abscmp 3480
ZV_cmp 608198
ZV_content 9403
ZV_dotproduct 12235578
ZV_dotproduct_i 13360265
ZV_dotsquare 5154277
ZV_equal 7762617
ZV_equal0 477245
ZV_equal_lg 9340330
ZV_max_lg 10612
ZV_neg_inplace 59239
ZV_prod 43678
ZV_sum 56
ZV_to_nv 6167
ZV_togglesign 1857898
ZV_zc_mul 0
Z_ZC_sub 307180
ZincrementalGS 1173457
Zupdate_row 350262
_ZM_mul 217
_ZM_sqr 25144
_mulii 905120
add_slices 85568
check_ZV 372207
nm_Z_mul 615005
subtract_slices 74872
zmV_to_ZMV 98
zm_to_Flm 15792
zm_to_ZM 365834
zvV_equal 343
zv_ZM_mul 1204
zv_content 975290
zv_dotproduct 151007458
zv_equal 22474470
zv_equal0 17346924
zv_neg 212717
zv_neg_inplace 231
zv_prod 290668
zv_prod_Z 365177
zv_sum 1582
zv_to_Flv 223314
zv_z_mul 4361

Generated by: LCOV version 1.11