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:
x86_32
architecture at
Configure time via setarch
The target is to exceed 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 | |||||||||||||||||||||||||
![]() | |||||||||||||||||||||||||
|
|||||||||||||||||||||||||
![]() |
Function Name ![]() |
Hit count ![]() |
Mod64 | 0 |
addiiz | 0 |
addirz | 0 |
addriz | 0 |
addsiz | 0 |
addsrz | 0 |
addssz | 0 |
affectsign | 0 |
affsz | 0 |
diviiz | 0 |
divirz | 0 |
divisz | 0 |
divriz | 0 |
divrsz | 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 |
get_avma | 0 |
mod64 | 0 |
modisz | 0 |
modsiz | 0 |
modss | 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 |
sdivss_rem | 0 |
shiftl | 0 |
shiftlr | 0 |
subirz | 0 |
subisz | 0 |
subriz | 0 |
subrsz | 0 |
subsiz | 0 |
subsrz | 0 |
subssz | 0 |
varnmin | 0 |
subiiz | 28 |
mptrunc | 42 |
dvdui | 168 |
varnmax | 203 |
mod32 | 259 |
mpcopy | 294 |
real_m1 | 322 |
dvdsi | 371 |
divrrz | 505 |
stack_calloc_align | 1087 |
ugcdui | 3465 |
dvdis | 5677 |
dvdiiz | 5812 |
smodss | 6423 |
uabsdivui_rem | 13269 |
addss | 25046 |
subss | 25046 |
subuu | 25046 |
cgetr_block | 38943 |
absr | 39795 |
cmprs | 40954 |
stack_calloc | 84931 |
sdivsi | 100924 |
subis | 103375 |
Mod32 | 167643 |
mulrrz | 188090 |
Fl_ellj_pre | 196203 |
ugcdiu | 211164 |
mod16 | 235213 |
truedivis | 235663 |
Mod16 | 244027 |
uutoineg | 244103 |
cgetg_block | 263076 |
affiz | 267379 |
cmpri | 410007 |
dvdiu | 420477 |
mindd | 476975 |
equalis | 490916 |
equalsi | 491098 |
real_0 | 547122 |
cmpsr | 578239 |
real2n | 595957 |
mpdiv | 623093 |
mpexpo | 636331 |
mpaff | 678199 |
rdivss | 839650 |
cmpir | 1006263 |
umodui | 1029345 |
addri | 1095074 |
absrnz_equal2n | 1138780 |
cmpss | 1160311 |
subrrz | 1296708 |
addrrz | 1307080 |
mpround | 1389800 |
mpcmp | 1498136 |
Mod2 | 1689170 |
gc_int | 1745653 |
ceildivuu | 1776649 |
Mod8 | 1780870 |
negr | 2063472 |
mpabs_shallow | 2612097 |
itou_or_0 | 2655361 |
mulru | 2676835 |
real_1_bit | 2688306 |
maxdd | 2766623 |
equaliu | 2785364 |
equalui | 2785364 |
subir | 2825377 |
absrnz_equal1 | 3628555 |
cmpis | 3817429 |
cmpsi | 3839135 |
umuluu_le | 3857752 |
Fl_center | 3894138 |
affsi | 3981479 |
mod4 | 4068255 |
cmpiu | 4630893 |
cmpui | 4630893 |
subsi | 5508267 |
truedivsi | 6196889 |
gc_NULL | 6234968 |
subri | 6595021 |
umuluu_or_0 | 7278828 |
fractor | 7345380 |
addrs | 7643740 |
stack_malloc | 7656982 |
rdivii | 7749483 |
rdiviiz | 7789232 |
affui | 7964645 |
maxuu | 9318395 |
affectsign_safe | 9990672 |
subrs | 10049919 |
uabsdiviu_rem | 10187366 |
mulrs | 10271232 |
divii | 12289485 |
mod8 | 12300129 |
utor | 12423708 |
affur | 12425741 |
minuu | 13273226 |
dvdii | 15385028 |
int_bit | 15574344 |
Fl_halve | 15656236 |
mpsqr | 17418848 |
Mod4 | 18389365 |
modis | 19602315 |
smodis | 20928152 |
gc_ulong | 21436565 |
umodi2n | 22272042 |
evalprecp | 25012031 |
Fl_div | 30364934 |
modsi | 34822068 |
mulri | 35277713 |
absequaliu | 35638850 |
affrr_fixlg | 37021003 |
absequalui | 37325715 |
abscmpiu | 38272743 |
abscmpui | 38274240 |
gc_bool | 39825023 |
sdivsi_rem | 41019201 |
mod2 | 50852908 |
absi_shallow | 51025912 |
Fl_addmulmul_pre | 52613355 |
mpsub | 53004515 |
truedivii | 55548523 |
stack_malloc_align | 61443051 |
evalvalp | 66509281 |
itos_or_0 | 73178152 |
Fl_triple | 74328992 |
real_1 | 79474332 |
fixlg | 83224697 |
remlll_pre | 84291774 |
mod2BIL | 84684420 |
mpodd | 86041709 |
icopyspec | 89636671 |
addiu | 91075816 |
addui | 92832165 |
mpadd | 96329019 |
subiu | 103956922 |
real_0_bit | 106350520 |
mpshift | 106601378 |
subui | 109035815 |
Fl_sqr | 111161404 |
togglesign_safe | 113592863 |
itou | 129190772 |
shiftr | 129868828 |
vali | 143324508 |
addis | 144900546 |
mpmul | 152434994 |
udivuu_rem | 158377410 |
muliu | 161155369 |
varncmp | 161728627 |
dvmduBIL | 162842258 |
gc_long | 201355589 |
rtor | 206062520 |
utoineg | 269936666 |
cgetineg | 273426371 |
addsi | 278242802 |
shiftr_inplace | 283209346 |
gc_double | 288453089 |
affsr | 379620587 |
stor | 379932828 |
Fl_double | 381278078 |
mulis | 412031168 |
affii | 422132564 |
itos | 428700120 |
addir | 441532544 |
negi | 573304820 |
absi | 631883999 |
Fl_neg | 640612200 |
mpabs | 663766692 |
expu | 663939947 |
itor | 667118975 |
subrr | 708681668 |
umodsu | 712304519 |
setabssign | 714489209 |
rcopy | 750325853 |
stoi | 751568319 |
mpneg | 818526245 |
cgetg_copy | 989568675 |
expi | 1212338607 |
minss | 1315311203 |
cmpuu | 1385762886 |
togglesign | 1645530229 |
Fl_sqr_pre | 1920335569 |
addrr | 2019542018 |
remii | 2181038096 |
Fl_mul | 2191151019 |
stackdummy | 2893324423 |
leafcopy | 3101066856 |
adduu | 3182871997 |
Fl_mul_pre | 3255973738 |
Fl_add | 3859576343 |
shift_right | 4607929513 |
dvmdsBIL | 5100865273 |
shift_left | 5389339076 |
Fl_addmul_pre | 6268205698 |
Fl_sub | 6720850296 |
icopy | 6799441626 |
subii | 7162018393 |
uutoi | 7460449611 |
maxss | 8460984237 |
addii | 9442448050 |
evalexpo | 9551796635 |
cgetr | 9575488615 |
utoi | 10551202095 |
cgetg | 10658962969 |
gc_const | 11590053225 |
utoipos | 12358794508 |
cgetipos | 14167818031 |
cgeti | 23452312921 |
new_chunk | 72940560297 |
evallg | 75944980339 |
set_avma | 101388123754 |
![]() |
Generated by: LCOV version 1.13 |