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 22303-eb3e11d) Lines: 765 839 91.2 %
Date: 2018-04-21 06:16:28 Functions: 116 122 95.1 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Flc_lincomb1_inplace 8578274
QM_QC_mul 77
QM_mul 336381
RgM_check_ZM 360705
RgV_check_ZV 505934
ZC_Q_mul 1288987
ZC_ZV_mul 0
ZC_Z_add 103171
ZC_Z_div 1110724
ZC_Z_divexact 1939746
ZC_Z_mul 10612615
ZC_Z_sub 0
ZC_add 6898951
ZC_add_i 13104059
ZC_copy 4084764
ZC_hnfremdiv 853673
ZC_is_ei 94108
ZC_lincomb 6157824
ZC_lincomb1 1805417
ZC_lincomb1_inplace 33946757
ZC_lincomb1_inplace_i 39553327
ZC_lincomb_1 198513
ZC_neg 1738917
ZC_reducemodlll 9858
ZC_reducemodmatrix 18762
ZC_reducemodmatrix_i 18762
ZC_sub 1242479
ZC_sub_i 1764488
ZC_z_mul 15119
ZMV_to_zmV 35
ZM_Q_mul 387749
ZM_ZC_mul 5526875
ZM_ZC_mul_i 22897333
ZM_Z_div 12271
ZM_Z_divexact 586717
ZM_Z_mul 812755
ZM_add 939143
ZM_copy 248799
ZM_det_triangular 984702
ZM_diag_mul 86854
ZM_equal 408470
ZM_equal0 56
ZM_hnfdivrem 51668
ZM_isdiagonal 60296
ZM_ishnf 115103
ZM_isidentity 116417
ZM_isscalar 101741
ZM_max_lg 3755
ZM_max_lg_i 10545711
ZM_mul 5242096
ZM_mul_classical 5260373
ZM_mul_diag 14
ZM_mul_i 5269172
ZM_mul_sw 12411
ZM_multosym 0
ZM_nc_mul_i 450333
ZM_neg 277025
ZM_nm_mul 433889
ZM_pow 0
ZM_powu 2184
ZM_reducemodlll 0
ZM_reducemodmatrix 21308
ZM_reducemodmatrix_i 21308
ZM_sqr 3612
ZM_sqr_i 3612
ZM_sub 451724
ZM_supnorm 3164
ZM_to_zm 1120
ZM_togglesign 0
ZM_transmul 497
ZM_transmultosym 161595
ZM_zc_mul 1672631
ZM_zc_mul_i 3056506
ZM_zm_mul 675338
ZMrow_ZC_mul 26495396
ZMrow_ZC_mul_i 149767001
ZRED 114678
ZV_ZM_mul 145348
ZV_abscmp 3312
ZV_cmp 666232
ZV_content 157402
ZV_dotproduct 8743953
ZV_dotproduct_i 11820170
ZV_dotsquare 3528435
ZV_equal 7961930
ZV_equal0 862073
ZV_equal_lg 9230778
ZV_max_lg 10612
ZV_max_lg_i 37302278
ZV_neg_inplace 70263
ZV_prod 7480415
ZV_sum 56
ZV_to_nv 50148
ZV_togglesign 1288504
ZV_zc_mul 1981
Z_ZC_sub 94992
ZincrementalGS 137059
Zupdate_row 52086
_ZM_mul 273
_ZM_sqr 2625
_mulii 279063310
add_slices 99288
check_ZV 1330385
nm_Z_mul 433889
subtract_slices 86877
vecsmall_prod 14694393
zmV_to_ZMV 112
zm_to_Flm 19894
zm_to_ZM 38611
zvV_equal 1337
zv_ZM_mul 1309
zv_content 1045533
zv_dotproduct 182130564
zv_equal 21632357
zv_equal0 21181358
zv_neg 28052
zv_neg_inplace 310
zv_prod 364253
zv_prod_Z 364975
zv_sum 1596
zv_to_Flv 284480
zv_z_mul 11373

Generated by: LCOV version 1.11