| line |
true |
false |
branch |
|
107
|
83 |
22 |
for (i = startingblock; i >= 0; i--) { |
|
109
|
49 |
34 |
switch (CxTYPE(cx)) { |
|
141
|
34 |
0 |
if (cxix_from_p) *cxix_from_p = cxstack_ix+1; |
|
142
|
34 |
0 |
if (cxix_to_p) *cxix_to_p = cxix; |
|
145
|
22 |
34 |
while (cxix < 0 && top_si->si_type != PERLSI_MAIN) { |
|
|
2 |
20 |
while (cxix < 0 && top_si->si_type != PERLSI_MAIN) { |
|
149
|
2 |
0 |
if (cxix_to_p && cxix_from_p) *cxix_from_p = *cxix_to_p; |
|
|
2 |
0 |
if (cxix_to_p && cxix_from_p) *cxix_from_p = *cxix_to_p; |
|
150
|
2 |
0 |
if (cxix_to_p) *cxix_to_p = cxix; |
|
152
|
20 |
34 |
if (cxix < 0 && count == 0) { |
|
|
19 |
1 |
if (cxix < 0 && count == 0) { |
|
153
|
19 |
0 |
if (ccstack_p) *ccstack_p = ccstack; |
|
156
|
1 |
34 |
else if (cxix < 0) |
|
158
|
34 |
0 |
if (PL_DBsub && cxix >= 0 && |
|
|
34 |
0 |
if (PL_DBsub && cxix >= 0 && |
|
|
0 |
34 |
if (PL_DBsub && cxix >= 0 && |
|
161
|
14 |
20 |
if (!count--) |
|
164
|
19 |
1 |
if (cop_p) *cop_p = ccstack[cxix].blk_oldcop; |
|
166
|
20 |
0 |
if (cxix_to_p && cxix_from_p) *cxix_from_p = *cxix_to_p; |
|
|
20 |
0 |
if (cxix_to_p && cxix_from_p) *cxix_from_p = *cxix_to_p; |
|
167
|
20 |
0 |
if (cxix_to_p) *cxix_to_p = cxix; |
|
169
|
14 |
0 |
if (ccstack_p) *ccstack_p = ccstack; |
|
180
|
17 |
0 |
char *package_name = HvNAME(stash); |
|
|
17 |
0 |
char *package_name = HvNAME(stash); |
|
|
0 |
17 |
char *package_name = HvNAME(stash); |
|
|
0 |
0 |
char *package_name = HvNAME(stash); |
|
|
17 |
0 |
char *package_name = HvNAME(stash); |
|
|
0 |
17 |
char *package_name = HvNAME(stash); |
|
216
|
696 |
68 |
for (i=PadnamelistMAX(pad_namelist); i>=0; --i) { |
|
219
|
530 |
166 |
if (name_sv) { |
|
221
|
346 |
184 |
if (name_str) { |
|
238
|
334 |
12 |
if ((PadnameOUTER(name_sv) || 0 == valid_at_seq || |
|
|
324 |
10 |
if ((PadnameOUTER(name_sv) || 0 == valid_at_seq || |
|
|
211 |
113 |
if ((PadnameOUTER(name_sv) || 0 == valid_at_seq || |
|
239
|
101 |
110 |
(valid_at_seq <= COP_SEQ_RANGE_HIGH(name_sv) && |
|
240
|
123 |
0 |
valid_at_seq > COP_SEQ_RANGE_LOW(name_sv))) && |
|
251
|
116 |
7 |
if ( hv_exists(my_hash, name_str, name_len) |
|
252
|
109 |
7 |
|| hv_exists(our_hash, name_str, name_len)) |
|
257
|
17 |
92 |
if (is_our) { |
|
260
|
0 |
17 |
if (!val_sv) { |
|
268
|
92 |
0 |
pad_vallist ? PadARRAY(pad_vallist)[i] : &PL_sv_undef; |
|
269
|
0 |
92 |
if (!val_sv) val_sv = &PL_sv_undef; |
|
272
|
109 |
0 |
hv_store((is_our ? our_hash : my_hash), name_str, name_len, |
|
|
17 |
92 |
hv_store((is_our ? our_hash : my_hash), name_str, name_len, |
|
288
|
6 |
62 |
if (depth == 0) depth = 1; |
|
290
|
0 |
68 |
if (!padlist) { |
|
309
|
1 |
36 |
if (cx == (PERL_CONTEXT*)-1) |
|
313
|
14 |
22 |
CV* cur_cv = cx ? cx->blk_sub.cv : cv; |
|
314
|
14 |
22 |
long depth = cx ? cx->blk_sub.olddepth + 1 : 1; |
|
316
|
0 |
36 |
if (!cur_cv) |
|
319
|
65 |
36 |
while (cur_cv) { |
|
322
|
64 |
1 |
if (CvPADLIST(cur_cv)) |
|
325
|
29 |
36 |
if (cur_cv) depth = CvDEPTH(cur_cv); |
|
344
|
14 |
13 |
if (cop == 0) { |
|
352
|
25 |
24 |
for (i = cxix_from-1; i > cxix_to; --i) { |
|
360
|
3 |
2 |
if (first_eval) { |
|
370
|
2 |
0 |
if (first_eval) |
|
396
|
6 |
1 |
if (CvISXSUB(cv) || !CvPADLIST(cv)) { |
|
|
0 |
6 |
if (CvISXSUB(cv) || !CvPADLIST(cv)) { |
|
400
|
2 |
4 |
val_depth = CvDEPTH(cv) ? CvDEPTH(cv) : 1; |
|
407
|
66 |
6 |
for (i=PadnamelistMAX(pad_namelist); i>=0; --i) { |
|
410
|
66 |
0 |
if (name_sv && PadnamePV(name_sv)) { |
|
|
15 |
51 |
if (name_sv && PadnamePV(name_sv)) { |
|
414
|
9 |
6 |
if (PadnameOUTER(name_sv) && !PadnameIsOUR(name_sv)) { |
|
|
8 |
1 |
if (PadnameOUTER(name_sv) && !PadnameIsOUR(name_sv)) { |
|
416
|
0 |
8 |
if (!val_sv) val_sv = &PL_sv_undef; |
|
425
|
0 |
8 |
if (indices) { |
|
441
|
7 |
1 |
U32 val_depth = CvDEPTH(cv) ? CvDEPTH(cv) : 1; |
|
445
|
40 |
0 |
for (i=PadnamelistMAX(pad_namelist); i>=0; --i) { |
|
449
|
19 |
21 |
if ( name && (name_str = PadnamePV(name)) |
|
|
19 |
0 |
if ( name && (name_str = PadnamePV(name)) |
|
450
|
8 |
11 |
&& PadARRAY(pad_vallist)[i] == var) { |
|
463
|
0 |
7 |
if (uplevel < 0) |
|
467
|
0 |
7 |
if (cx == (PERL_CONTEXT *)-1) { |
|
471
|
0 |
7 |
else if (cx) |
|
476
|
9 |
3 |
for (i = cxix_from-1; i > cxix_to; --i) |
|
477
|
6 |
3 |
if (CxTYPE(&ccstack[i]) == CXt_EVAL) { |
|
479
|
5 |
1 |
if (old_op_type == OP_REQUIRE || old_op_type == OP_DOFILE) |
|
|
3 |
2 |
if (old_op_type == OP_REQUIRE || old_op_type == OP_DOFILE) |
|
489
|
2 |
1 |
return !( |
|
|
2 |
0 |
return !( |
|
491
|
2 |
0 |
|| SvTYPE(sv) == SVt_PVHV |
|
492
|
2 |
0 |
|| SvTYPE(sv) == SVt_PVCV |
|
493
|
0 |
2 |
|| isGV_with_GP(sv) |
|
|
0 |
0 |
|| isGV_with_GP(sv) |
|
|
0 |
0 |
|| isGV_with_GP(sv) |
|
503
|
1 |
0 |
( is_scalar_type(orig) && is_scalar_type(restore) ) |
|
520
|
0 |
25 |
EXTEND(SP, 1); |
|
532
|
0 |
1 |
EXTEND(SP, 1); |
|
543
|
1 |
4 |
if (CvISXSUB(cv)) |
|
547
|
0 |
4 |
EXTEND(SP, 1); |
|
557
|
0 |
4 |
U32 val_depth = CvDEPTH(cv) ? CvDEPTH(cv) : 1; |
|
561
|
20 |
3 |
for (i=PadnamelistMAX(pad_namelist); i>=0; --i) { |
|
565
|
20 |
0 |
if (name && (name_str = PadnamePV(name))) { |
|
|
10 |
10 |
if (name && (name_str = PadnamePV(name))) { |
|
568
|
7 |
3 |
if (PadnameOUTER(name) && !PadnameIsOUR(name)) { |
|
|
7 |
0 |
if (PadnameOUTER(name) && !PadnameIsOUR(name)) { |
|
570
|
4 |
3 |
if ( restore_ref ) { |
|
571
|
4 |
0 |
if ( SvROK(*restore_ref) ) { |
|
576
|
4 |
0 |
if ( !orig || is_correct_type(orig, restore) ) { |
|
|
3 |
1 |
if ( !orig || is_correct_type(orig, restore) ) { |
|
600
|
7 |
0 |
if (GIMME_V == G_ARRAY) { |
|
|
1 |
6 |
if (GIMME_V == G_ARRAY) { |
|
604
|
0 |
1 |
EXTEND(SP, 2); |
|
611
|
0 |
6 |
EXTEND(SP, 1); |
|
622
|
0 |
8 |
if (!SvROK(var_ref)) |
|
625
|
1 |
7 |
if (SvROK(sub)) { |
|
627
|
0 |
1 |
if (SvTYPE(cv) != SVt_PVCV) |
|
630
|
7 |
0 |
cv = (SV *) up_cv(aTHX_ SvIV(sub), "PadWalker::upcontext"); |
|
641
|
0 |
0 |
XPUSHs(sv_2mortal(newSViv((IV)upcontext(aTHX_ uplevel, 0, 0, 0, 0)))); |