Branch Coverage

lib/PDL/Bad.xs
Criterion Covered Total %
branch 217 518 41.8


line true false branch
58 4 110 if ( val.type != -1 ) {
71 0 114 if (!p) PDL->pdl_barf("Error making new pdl");
86 42 66 if ( val.type != -1) {
89 0 42 if (typedval.type < 0) PDL->pdl_barf("Error making typedval");
100 0 108 if (!p) PDL->pdl_barf("Error making new pdl");
101 57 51 if (pdl_val->has_badvalue == 0) {
127 0 33 if (!p) PDL->pdl_barf("Error making new pdl");
143 704 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 704 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
704 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
704 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
704 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 704 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
704 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 704 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
149 704 0 PDL_XS_RETURN(ST(0) = b_SV)
704 0 PDL_XS_RETURN(ST(0) = b_SV)
704 0 PDL_XS_RETURN(ST(0) = b_SV)
0 704 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
155 1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
161 1 0 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
0 1 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
167 4 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 4 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
4 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
4 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
4 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 4 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
4 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 4 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
173 1 3 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
0 1 PDL_XS_RETURN(ST(0) = b_SV)
0 3 PDL_XS_RETURN(ST(0) = b_SV)
179 24 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 24 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
24 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
24 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
24 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 24 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
24 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 24 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
185 19 5 PDL_XS_RETURN(ST(0) = b_SV)
19 0 PDL_XS_RETURN(ST(0) = b_SV)
19 0 PDL_XS_RETURN(ST(0) = b_SV)
0 19 PDL_XS_RETURN(ST(0) = b_SV)
0 5 PDL_XS_RETURN(ST(0) = b_SV)
191 40 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 40 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
40 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
40 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
40 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 40 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
40 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 40 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
198 40 0 PDL_XS_RETURN(ST(0) = b_SV)
40 0 PDL_XS_RETURN(ST(0) = b_SV)
40 0 PDL_XS_RETURN(ST(0) = b_SV)
0 40 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
205 121 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 121 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
121 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
121 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
121 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 121 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
121 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 121 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
206 0 121 if (!((items == 2) || (items == 3)))
0 0 if (!((items == 2) || (items == 3)))
213 97 24 PDL_XS_INPLACE(a, b)
0 97 PDL_XS_INPLACE(a, b)
0 24 PDL_XS_INPLACE(a, b)
0 24 PDL_XS_INPLACE(a, b)
215 121 0 PDL_XS_RETURN(ST(0) = b_SV)
121 0 PDL_XS_RETURN(ST(0) = b_SV)
121 0 PDL_XS_RETURN(ST(0) = b_SV)
0 121 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
221 59 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 59 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
59 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
59 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
59 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 59 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
59 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 59 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
226 35 24 PDL_XS_INPLACE(a, b)
0 35 PDL_XS_INPLACE(a, b)
0 24 PDL_XS_INPLACE(a, b)
0 24 PDL_XS_INPLACE(a, b)
228 59 0 PDL_XS_RETURN(ST(0) = b_SV)
59 0 PDL_XS_RETURN(ST(0) = b_SV)
59 0 PDL_XS_RETURN(ST(0) = b_SV)
0 59 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
234 1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
239 1 0 PDL_XS_INPLACE(a, b)
0 1 PDL_XS_INPLACE(a, b)
0 0 PDL_XS_INPLACE(a, b)
0 0 PDL_XS_INPLACE(a, b)
241 1 0 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
0 1 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
247 1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
252 1 0 PDL_XS_INPLACE(a, b)
0 1 PDL_XS_INPLACE(a, b)
0 0 PDL_XS_INPLACE(a, b)
0 0 PDL_XS_INPLACE(a, b)
254 1 0 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
0 1 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
260 3 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 3 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
3 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
3 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
3 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 3 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
3 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 3 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
265 3 0 PDL_XS_INPLACE(a, b)
0 3 PDL_XS_INPLACE(a, b)
0 0 PDL_XS_INPLACE(a, b)
0 0 PDL_XS_INPLACE(a, b)
267 3 0 PDL_XS_RETURN(ST(0) = b_SV)
3 0 PDL_XS_RETURN(ST(0) = b_SV)
3 0 PDL_XS_RETURN(ST(0) = b_SV)
0 3 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
274 54 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 54 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
54 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
54 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
54 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 54 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
54 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 54 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
275 0 54 if (!((items == 2) || (items == 3)))
0 0 if (!((items == 2) || (items == 3)))
282 28 26 PDL_XS_INPLACE(a, b)
0 28 PDL_XS_INPLACE(a, b)
0 26 PDL_XS_INPLACE(a, b)
0 26 PDL_XS_INPLACE(a, b)
284 54 0 PDL_XS_RETURN(ST(0) = b_SV)
54 0 PDL_XS_RETURN(ST(0) = b_SV)
54 0 PDL_XS_RETURN(ST(0) = b_SV)
0 54 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
290 1 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
296 1 0 PDL_XS_INPLACE(a, c)
0 1 PDL_XS_INPLACE(a, c)
0 0 PDL_XS_INPLACE(a, c)
0 0 PDL_XS_INPLACE(a, c)
298 1 0 PDL_XS_RETURN(ST(0) = c_SV)
1 0 PDL_XS_RETURN(ST(0) = c_SV)
1 0 PDL_XS_RETURN(ST(0) = c_SV)
0 1 PDL_XS_RETURN(ST(0) = c_SV)
0 0 PDL_XS_RETURN(ST(0) = c_SV)
304 3 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 3 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
3 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
3 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
3 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 3 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
3 0 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
0 3 PDL_XS_PREAMBLE((items == 3) ? 0 : 1);
310 2 1 PDL_XS_INPLACE(a, b)
0 2 PDL_XS_INPLACE(a, b)
0 1 PDL_XS_INPLACE(a, b)
0 1 PDL_XS_INPLACE(a, b)
312 3 0 PDL_XS_RETURN(ST(0) = b_SV)
3 0 PDL_XS_RETURN(ST(0) = b_SV)
3 0 PDL_XS_RETURN(ST(0) = b_SV)
0 3 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
318 1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
1 0 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
0 1 PDL_XS_PREAMBLE((items == 2) ? 0 : 1);
324 1 0 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
1 0 PDL_XS_RETURN(ST(0) = b_SV)
0 1 PDL_XS_RETURN(ST(0) = b_SV)
0 0 PDL_XS_RETURN(ST(0) = b_SV)
336 71 0 if (SvTRUE (ERRSV)) Perl_croak(aTHX_ "%s",SvPV_nolen (ERRSV));
0 71 if (SvTRUE (ERRSV)) Perl_croak(aTHX_ "%s",SvPV_nolen (ERRSV));
0 0 if (SvTRUE (ERRSV)) Perl_croak(aTHX_ "%s",SvPV_nolen (ERRSV));
338 0 71 if (!CoreSV)
340 0 71 if (!(PDL = INT2PTR(Core*,SvIV( CoreSV )))) /* Core* value */
342 0 71 if (PDL->Version != PDL_CORE_VERSION)