| line |
true |
false |
branch |
|
75
|
70 |
0 |
OP *blockstart = LINKLIST(block); |
|
83
|
70 |
0 |
if(startop->op_type != OP_LIST) |
|
101
|
70 |
0 |
OP *whilestart = LINKLIST(startop); |
|
136
|
9 |
200029 |
if(PL_stack_base + TOPMARK == SP) { |
|
140
|
0 |
9 |
XPUSHs((mode & FIRST_EMPTY_NO ) ? &PL_sv_no : |
|
|
5 |
4 |
XPUSHs((mode & FIRST_EMPTY_NO ) ? &PL_sv_no : |
|
|
1 |
4 |
XPUSHs((mode & FIRST_EMPTY_NO ) ? &PL_sv_no : |
|
147
|
0 |
200029 |
PUSHMARK(PL_stack_sp); /* current src item */ |
|
153
|
17 |
200012 |
if(SvPADTMP(src)) { |
|
159
|
6 |
200023 |
if(targ) { |
|
182
|
35 |
10200132 |
SV *targsv = targ ? PAD_SVl(targ) : DEFSV; |
|
|
10200132 |
0 |
SV *targsv = targ ? PAD_SVl(targ) : DEFSV; |
|
184
|
0 |
10200167 |
bool ret = SvTRUE_NN(sv); |
|
|
0 |
10200167 |
bool ret = SvTRUE_NN(sv); |
|
|
0 |
0 |
bool ret = SvTRUE_NN(sv); |
|
|
0 |
0 |
bool ret = SvTRUE_NN(sv); |
|
|
10200163 |
4 |
bool ret = SvTRUE_NN(sv); |
|
|
10200163 |
0 |
bool ret = SvTRUE_NN(sv); |
|
|
10200163 |
0 |
bool ret = SvTRUE_NN(sv); |
|
|
200059 |
10000104 |
bool ret = SvTRUE_NN(sv); |
|
|
0 |
200059 |
bool ret = SvTRUE_NN(sv); |
|
|
4 |
0 |
bool ret = SvTRUE_NN(sv); |
|
|
4 |
0 |
bool ret = SvTRUE_NN(sv); |
|
|
0 |
4 |
bool ret = SvTRUE_NN(sv); |
|
|
0 |
0 |
bool ret = SvTRUE_NN(sv); |
|
|
0 |
0 |
bool ret = SvTRUE_NN(sv); |
|
188
|
53 |
10200114 |
if((mode & FIRST_STOP_ON_FALSE) ? !ret : ret) { |
|
|
200020 |
10000147 |
if((mode & FIRST_STOP_ON_FALSE) ? !ret : ret) { |
|
197
|
200016 |
4 |
SV *ret = (mode & FIRST_RET_NO ) ? &PL_sv_no : |
|
198
|
200010 |
6 |
(mode & FIRST_RET_YES) ? &PL_sv_yes : |
|
200
|
5 |
200015 |
if(targ) |
|
210
|
9 |
10000138 |
if(UNLIKELY(PL_stack_base + *PL_markstack_ptr > SP)) { |
|
215
|
6 |
3 |
PUSHs((mode & FIRST_EMPTY_NO ) ? &PL_sv_no : |
|
|
1 |
5 |
PUSHs((mode & FIRST_EMPTY_NO ) ? &PL_sv_no : |
|
223
|
132 |
10000006 |
if(SvPADTMP(src)) { |
|
229
|
29 |
10000109 |
if(targ) { |
|
248
|
7 |
38 |
if(has_optvar) { |
|
255
|
45 |
0 |
*out = build_blocklist(aTHX_ varix, block, list, |
|
312
|
2 |
7 |
if(PL_stack_base + TOPMARK == SP) { |
|
315
|
2 |
0 |
if(GIMME_V == G_SCALAR) |
|
|
1 |
1 |
if(GIMME_V == G_SCALAR) |
|
316
|
0 |
1 |
XPUSHs(&PL_sv_undef); |
|
320
|
2 |
5 |
if(PL_stack_base + TOPMARK + 1 == SP) { |
|
328
|
3 |
2 |
if(mode == REDUCE_REDUCTIONS) |
|
329
|
0 |
3 |
PUSHMARK(PL_stack_sp); |
|
330
|
0 |
5 |
PUSHMARK(PL_stack_sp); |
|
345
|
3 |
2 |
if(mode == REDUCE_REDUCTIONS) |
|
348
|
5 |
0 |
if(SvPADTMP(sv)) { |
|
360
|
5 |
0 |
if(SvPADTMP(sv)) { |
|
379
|
11 |
7 |
if(mode == REDUCE_REDUCTIONS) |
|
380
|
6 |
5 |
PL_stack_base[PL_markstack_ptr[-1]++] = SvPADTMP(sv) ? sv_mortalcopy(sv) : sv; |
|
384
|
5 |
13 |
if(UNLIKELY(PL_stack_base + *PL_markstack_ptr > SP)) { |
|
385
|
0 |
5 |
U8 gimme = GIMME_V; |
|
388
|
3 |
2 |
if(mode == REDUCE_REDUCTIONS) { |
|
393
|
1 |
2 |
if(gimme == G_SCALAR) { |
|
397
|
2 |
0 |
else if(gimme == G_ARRAY) |
|
417
|
13 |
0 |
if(SvPADTMP(sv)) { |
|
439
|
10 |
0 |
*out = build_blocklist(aTHX_ 0, args[0]->op, args[1]->op, |
|
479
|
2 |
4 |
if(PL_stack_base + TOPMARK == SP) { |
|
482
|
2 |
0 |
if(GIMME_V == G_SCALAR) |
|
|
1 |
1 |
if(GIMME_V == G_SCALAR) |
|
483
|
0 |
1 |
XPUSHzero; |
|
488
|
0 |
4 |
PUSHMARK(PL_stack_sp); |
|
489
|
0 |
4 |
PUSHMARK(PL_stack_sp); |
|
493
|
7 |
4 |
for(U8 targi = 0; targi < targcount; targi++) { |
|
495
|
7 |
0 |
SV *sv = svp <= SP ? *svp : &PL_sv_undef; |
|
496
|
0 |
7 |
if(SvPADTMP(sv)) { |
|
522
|
0 |
9 |
if(SvTRUE_NN(sv)) { |
|
|
0 |
9 |
if(SvTRUE_NN(sv)) { |
|
|
0 |
0 |
if(SvTRUE_NN(sv)) { |
|
|
0 |
0 |
if(SvTRUE_NN(sv)) { |
|
|
6 |
3 |
if(SvTRUE_NN(sv)) { |
|
|
6 |
0 |
if(SvTRUE_NN(sv)) { |
|
|
6 |
0 |
if(SvTRUE_NN(sv)) { |
|
|
4 |
2 |
if(SvTRUE_NN(sv)) { |
|
|
0 |
4 |
if(SvTRUE_NN(sv)) { |
|
|
3 |
0 |
if(SvTRUE_NN(sv)) { |
|
|
3 |
0 |
if(SvTRUE_NN(sv)) { |
|
|
0 |
3 |
if(SvTRUE_NN(sv)) { |
|
|
0 |
0 |
if(SvTRUE_NN(sv)) { |
|
|
0 |
0 |
if(SvTRUE_NN(sv)) { |
|
|
7 |
2 |
if(SvTRUE_NN(sv)) { |
|
527
|
13 |
6 |
for(U8 targi = 0; targi < targcount; targi++) { |
|
528
|
12 |
1 |
if(chunksvs + targi > SP) |
|
535
|
5 |
4 |
if(UNLIKELY(PL_stack_base + VALMARK > SP)) { |
|
536
|
0 |
4 |
U8 gimme = GIMME_V; |
|
545
|
1 |
3 |
if(gimme == G_SCALAR) { |
|
549
|
3 |
0 |
else if(gimme == G_LIST) |
|
557
|
10 |
5 |
for(U8 targi = 0; targi < targcount; targi++) { |
|
559
|
9 |
1 |
SV *sv = svp <= SP ? *svp : &PL_sv_undef; |
|
560
|
0 |
10 |
if(SvPADTMP(sv)) { |
|
591
|
2 |
5 |
if(PL_stack_base + TOPMARK == SP) { |
|
594
|
2 |
0 |
if(GIMME_V == G_SCALAR) |
|
|
1 |
1 |
if(GIMME_V == G_SCALAR) |
|
595
|
0 |
1 |
XPUSHzero; |
|
600
|
0 |
5 |
PUSHMARK(PL_stack_sp); |
|
601
|
0 |
5 |
PUSHMARK(PL_stack_sp); |
|
609
|
10 |
5 |
for(U8 targi = 0; targi < targcount; targi++) { |
|
611
|
10 |
0 |
SV *sv = svp <= SP ? *svp : &PL_sv_undef; |
|
612
|
0 |
10 |
if(SvPADTMP(sv)) { |
|
627
|
0 |
5 |
PUSHMARK(PL_stack_sp); |
|
644
|
0 |
11 |
U8 gimme = GIMME_V; |
|
650
|
11 |
0 |
if(items && gimme != G_VOID) { |
|
651
|
1 |
10 |
if(items > (VALMARK - RETMARK)) { |
|
656
|
1 |
0 |
if(shift < count) |
|
660
|
1 |
0 |
EXTEND(SP, shift); |
|
|
0 |
1 |
EXTEND(SP, shift); |
|
667
|
6 |
1 |
while(count--) |
|
673
|
3 |
8 |
if(gimme == G_LIST) { |
|
674
|
0 |
8 |
EXTEND_MORTAL(items); |
|
676
|
0 |
8 |
Move(PL_tmps_stack + tmpsbase, PL_tmps_stack + tmpsbase + items, PL_tmps_ix - PL_tmps_floor, SV *); |
|
680
|
15 |
8 |
while(i-- > 0) { |
|
682
|
10 |
5 |
if(!SvTEMP(sv)) |
|
688
|
8 |
0 |
FREETMPS; |
|
690
|
15 |
8 |
while(i-- > 0) |
|
696
|
6 |
3 |
while(i-- > 0) { |
|
700
|
3 |
0 |
FREETMPS; |
|
704
|
0 |
0 |
FREETMPS; |
|
709
|
5 |
6 |
if(UNLIKELY(PL_stack_base + VALMARK > SP)) { |
|
718
|
1 |
4 |
if(gimme == G_SCALAR) { |
|
722
|
4 |
0 |
else if(gimme == G_LIST) |
|
732
|
13 |
6 |
for(U8 targi = 0; targi < targcount; targi++) { |
|
734
|
13 |
0 |
SV *sv = svp <= SP ? *svp : &PL_sv_undef; |
|
735
|
0 |
13 |
if(SvPADTMP(sv)) { |
|
768
|
0 |
15 |
if(varcount > 255) |
|
775
|
14 |
15 |
for(int vari = 1; vari < varcount; vari++) |
|
776
|
0 |
14 |
if(args[argi++]->padix != varix + vari) |
|
782
|
15 |
0 |
switch(SvIV((SV *)hookdata)) { |