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-bordeaux1.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 - FF.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 16791-0d1274a) Lines: 819 907 90.3 %
Date: 2014-09-16 Functions: 98 105 93.3 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 328 419 78.3 %

Function Name Sort by function name Hit count Sort by hit count
_getFF 1966415
_initFF 1768016
_mkFF 1746450
Rg_is_FF 1510192
RgC_is_FFC 1509607
RgM_is_FFM 1509452
FF_samefield 1210215
_checkFF 1122525
_mkFF_i 561750
FF_mul 545460
mkFF_i 540105
FF_add 410749
FF_to_Flxq 374943
FF_equal0 274004
FF_Z_mul 208945
FF_sqr 204620
to_FFE 135790
FF_sub 130516
FF_Z_add 82649
FF_ellrandom 66840
FF_mul2n 65055
FF_ellmul 55175
FF_to_F2xq 52145
FF_p_i 36744
FF_div 35710
FF_ellinit 29100
Flxq_ell_to_a4a6 25209
FF_1 23475
FF_neg_i 21041
FF_ellcard 20485
FF_neg 18785
FF_to_FpXQ 17517
FF_ellgroup 12880
FF_ellgens 11955
to_FFE_vec 11955
F3xq_ell_to_a4a6 11145
FF_equal1 8840
ffrandom 8627
FF_Z_Z_muldiv 4710
FF_equal 3570
FF_inv 3170
F2xq_ell_to_a4a6 2755
Fq_to_FpXQ 2550
FF_zero 2315
FF_to_FpXQ_i 1975
p_to_FF 1765
FqV_to_FpXQV 1235
FpXQ_ell_to_a4a6 1221
FF_ellorder 1220
FF_Q_add 1030
ffgen 830
to_FF 604
FFC_to_raw 375
to_FFX 230
Z_FF_div 215
FF_primroot 170
ffprimroot 170
raw_to_FFC 150
FF_ispower 139
FF_issquareall 134
FFX_init_fix_varn 130
FFX_to_FqX 130
FFM_to_raw 120
fflog 90
FF_log 90
FF_f 90
FF_elldata 85
to_FFC 80
FFX_roots 80
FF_sqrtn 70
FF_elllog 60
raw_to_FFM 60
FF_sqrt 55
FFX_factor 50
to_FF_fact 50
FFM_wrap 45
FF_p 40
FF_mod 35
FF_pow 35
FqC_to_FpXQC 30
FF_norm 20
FF_conjvec 20
FF_order 20
FF_charpoly 20
fforder 20
FF_minpoly 20
FF_trace 20
FFM_rank 15
FFM_ker 15
FFM_mul 15
FFM_inv 15
FFM_det 15
FFM_FFC_mul 15
FFM_image 15
FF_issquare 15
FqM_to_FpXQM 15
FF_elltatepairing 5
FF_ellweilpairing 5
Fp_cmp_1 0
FF_equalm1 0
F3x_equalm1 0
FF_to_Flxq_i 0
FF_q 0
Tp_to_FF 0
FF_to_F2xq_i 0

Generated by: LCOV version 1.9