Branch Coverage

FastCalc.xs
Criterion Covered Total %
branch 55 62 88.7


line true false branch
46 0 10 if (items < 4)
65 0 83022 if (SvUOK(x) && SvUV(x) < XS_BASE)
0 0 if (SvUOK(x) && SvUV(x) < XS_BASE)
79 195965 83022 # process the string from the back
83 80983 114982 part_len = (STRLEN) XS_BASE_LEN;
91 195965 0 /* printf ("part '%s' (part_len: %i, len: %i, BASE_LEN: %i)\n", cur, part_len, len, XS_BASE_LEN); */
118 141517 41793 while (elems >= 0)
154 1 8 if (elems == -1)
159 2 6 if (elems == 0)
164 14 1 while (index > 0)
167 5 9 if (SvNV(temp) != 0)
173 4 2 if (index < elems)
176 9 4 while (index-- > 0)
203 288 0 while (index <= elems)
207 272 16 if (SvNV(temp) >= 0)
216 135 137 if (elems > 0)
219 3 132 if (SvIV(temp) == 0) /* did last elem overflow? */
247 2478 3 while (index <= elems)
251 2462 16 if (SvNV(temp) < BASE)
259 3 0 if (SvIV(temp) == 0) /* did last elem overflow? */
295 108 122 ST(0) = sv_2mortal(boolSV((SvIV(temp) & 1) == ix));
311 81356 86099 if ( av_len(a) != 0)
318 8827 77272 ST(0) = boolSV(SvIV(temp) == ix);
365 521 46152 if (diff > 0)
369 52 46100 else if (diff < 0)
380 10976 35124 if (diff_str > 0)
384 1459 33665 if (diff_str < 0)
390 40592 18974 while (elemsx >= 0)
395 14691 25901 if (diff_nv != 0)
401 12921 20744 if (diff_nv > 0)
405 1770 18974 if (diff_nv < 0)