Lines Matching defs:cx

155     register PERL_CONTEXT *cx = &cxstack[cxstack_ix];
156 register SV *dstr = cx->sb_dstr;
157 register char *s = cx->sb_s;
158 register char *m = cx->sb_m;
159 char *orig = cx->sb_orig;
160 register REGEXP *rx = cx->sb_rx;
169 rxres_restore(&cx->sb_rxres, rx);
170 RX_MATCH_UTF8_set(rx, SvUTF8(cx->sb_targ));
172 if (cx->sb_iters++) {
173 I32 saviters = cx->sb_iters;
174 if (cx->sb_iters > cx->sb_maxiters)
177 if (!(cx->sb_rxtainted & 2) && SvTAINTED(TOPs))
178 cx->sb_rxtainted |= 2;
182 if (cx->sb_once || !CALLREGEXEC(aTHX_ rx, s, cx->sb_strend, orig,
183 s == m, cx->sb_targ, NULL,
184 ((cx->sb_rflags & REXEC_COPY_STR)
188 SV *targ = cx->sb_targ;
190 assert(cx->sb_strend >= s);
191 if(cx->sb_strend > s) {
193 sv_catpvn_utf8_upgrade(dstr, s, cx->sb_strend - s, nsv);
195 sv_catpvn(dstr, s, cx->sb_strend - s);
197 cx->sb_rxtainted |= RX_MATCH_TAINTED(rx);
210 TAINT_IF(cx->sb_rxtainted & 1);
214 TAINT_IF(cx->sb_rxtainted);
218 LEAVE_SCOPE(cx->sb_oldsave);
220 POPSUBST(cx);
223 cx->sb_iters = saviters;
228 cx->sb_orig = orig = rx->subbeg;
230 cx->sb_strend = s + (cx->sb_strend - m);
232 cx->sb_m = m = rx->startp[0] + orig;
234 if (DO_UTF8(dstr) && !SvUTF8(cx->sb_targ))
239 cx->sb_s = rx->endp[0] + orig;
241 SV *sv = cx->sb_targ;
257 cx->sb_rxtainted |= RX_MATCH_TAINTED(rx);
258 rxres_save(&cx->sb_rxres, rx);
1119 register PERL_CONTEXT *cx;
1122 cx = &cxstack[i];
1123 switch (CxTYPE(cx)) {
1131 context_name[CxTYPE(cx)], OP_NAME(PL_op));
1132 if (CxTYPE(cx) == CXt_NULL)
1136 if (!cx->blk_loop.label ||
1137 strNE(label, cx->blk_loop.label) ) {
1139 (long)i, cx->blk_loop.label));
1203 register PERL_CONTEXT *cx;
1205 cx = &cxstk[i];
1206 switch (CxTYPE(cx)) {
1223 register PERL_CONTEXT *cx;
1225 cx = &cxstack[i];
1226 switch (CxTYPE(cx)) {
1241 register PERL_CONTEXT *cx;
1243 cx = &cxstack[i];
1244 switch (CxTYPE(cx)) {
1252 context_name[CxTYPE(cx)], OP_NAME(PL_op));
1253 if ((CxTYPE(cx)) == CXt_NULL)
1267 register PERL_CONTEXT *cx;
1272 cx = &cxstack[cxstack_ix];
1274 (long) cxstack_ix, PL_block_type[CxTYPE(cx)]));
1276 switch (CxTYPE(cx)) {
1278 POPSUBST(cx);
1281 POPSUB(cx,sv);
1285 POPEVAL(cx);
1288 POPLOOP(cx);
1293 POPFORMAT(cx);
1319 register PERL_CONTEXT *cx;
1364 POPBLOCK(cx,PL_curpm);
1365 if (CxTYPE(cx) != CXt_EVAL) {
1372 POPEVAL(cx);
1384 PL_curcop = cx->blk_oldcop;
1434 register PERL_CONTEXT *cx;
1468 cx = &ccstack[cxix];
1469 if (CxTYPE(cx) == CXt_SUB || CxTYPE(cx) == CXt_FORMAT) {
1472 field below is defined for any cx. */
1474 cx = &ccstack[dbcxix];
1477 stashname = CopSTASHPV(cx->blk_oldcop);
1496 PUSHs(sv_2mortal(newSVpv(OutCopFILE(cx->blk_oldcop), 0)));
1497 PUSHs(sv_2mortal(newSViv((I32)CopLINE(cx->blk_oldcop))));
1500 if (CxTYPE(cx) == CXt_SUB || CxTYPE(cx) == CXt_FORMAT) {
1507 PUSHs(sv_2mortal(newSViv((I32)cx->blk_sub.hasargs)));
1511 PUSHs(sv_2mortal(newSViv((I32)cx->blk_sub.hasargs)));
1518 gimme = (I32)cx->blk_gimme;
1523 if (CxTYPE(cx) == CXt_EVAL) {
1525 if (cx->blk_eval.old_op_type == OP_ENTEREVAL) {
1526 PUSHs(cx->blk_eval.cur_text);
1530 else if (cx->blk_eval.old_namesv) {
1531 PUSHs(sv_2mortal(newSVsv(cx->blk_eval.old_namesv)));
1544 if (CxTYPE(cx) == CXt_SUB && cx->blk_sub.hasargs
1547 AV *ary = cx->blk_sub.argarray;
1566 PUSHs(sv_2mortal(newSViv((I32)cx->blk_oldcop->op_private &
1570 SV * old_warnings = cx->blk_oldcop->cop_warnings ;
1619 register PERL_CONTEXT *cx;
1643 PUSHBLOCK(cx, CXt_SUB, SP);
1644 PUSHSUB_DB(cx);
1661 register PERL_CONTEXT *cx;
1702 PUSHBLOCK(cx, cxtype, SP);
1704 PUSHLOOP(cx, iterdata, MARK);
1706 PUSHLOOP(cx, svp, MARK);
1709 cx->blk_loop.iterary = (AV*)SvREFCNT_inc(POPs);
1710 if (SvTYPE(cx->blk_loop.iterary) != SVt_PVAV) {
1712 SV *right = (SV*)cx->blk_loop.iterary;
1717 cx->blk_loop.iterix = SvIV(sv);
1718 cx->blk_loop.itermax = SvIV(right);
1722 cx->blk_loop.iterlval = newSVsv(sv);
1723 (void) SvPV_force(cx->blk_loop.iterlval,n_a);
1729 cx->blk_loop.iterary = PL_curstack;
1731 cx->blk_loop.iterix = MARK - PL_stack_base;
1740 register PERL_CONTEXT *cx;
1747 PUSHBLOCK(cx, CXt_LOOP, SP);
1748 PUSHLOOP(cx, 0, SP);
1756 register PERL_CONTEXT *cx;
1762 POPBLOCK(cx,newpm);
1764 newsp = PL_stack_base + cx->blk_loop.resetsp;
1784 POPLOOP(cx); /* Stack values are safe: release loop vars ... */
1797 register PERL_CONTEXT *cx;
1824 POPBLOCK(cx,newpm);
1825 switch (CxTYPE(cx)) {
1828 cxstack_ix++; /* preserve cx entry on stack for use by POPSUB */
1833 POPEVAL(cx);
1834 if (CxTRYBLOCK(cx))
1841 SV *nsv = cx->blk_eval.old_namesv;
1847 POPFORMAT(cx);
1857 if (cx->blk_sub.cv && CvDEPTH(cx->blk_sub.cv) > 1) {
1892 POPSUB(cx,sv); /* release CV and @_ ... */
1908 register PERL_CONTEXT *cx;
1931 POPBLOCK(cx,newpm);
1934 switch (CxTYPE(cx)) {
1937 newsp = PL_stack_base + cx->blk_loop.resetsp;
1938 nextop = cx->blk_loop.last_op->op_next;
1945 POPEVAL(cx);
1949 POPFORMAT(cx);
1979 POPLOOP(cx); /* release loop vars ... */
1983 POPSUB(cx,sv); /* release CV and @_ ... */
1995 register PERL_CONTEXT *cx;
2014 TOPBLOCK(cx);
2017 return cx->blk_loop.next_op;
2023 register PERL_CONTEXT *cx;
2039 TOPBLOCK(cx);
2043 return cx->blk_loop.redo_op;
2104 register PERL_CONTEXT *cx;
2120 register PERL_CONTEXT *cx;
2154 TOPBLOCK(cx);
2155 if (CxREALEVAL(cx))
2158 if (CxTYPE(cx) == CXt_SUB && cx->blk_sub.hasargs) {
2160 AV* av = cx->blk_sub.argarray;
2169 GvAV(PL_defgv) = cx->blk_sub.savearray;
2177 PAD_SVl(0) = (SV*)(cx->blk_sub.argarray = av);
2195 if (CxTYPE(cx) == CXt_SUB &&
2196 !(CvDEPTH(cx->blk_sub.cv) = cx->blk_sub.olddepth))
2197 SvREFCNT_dec(cx->blk_sub.cv);
2232 POPBLOCK(cx, PL_curpm);
2240 if (CxTYPE(cx) == CXt_EVAL) {
2241 PL_in_eval = cx->blk_eval.old_in_eval;
2242 PL_eval_root = cx->blk_eval.old_eval_root;
2243 cx->cx_type = CXt_SUB;
2244 cx->blk_sub.hasargs = 0;
2246 cx->blk_sub.cv = cv;
2247 cx->blk_sub.olddepth = (U16)CvDEPTH(cv);
2255 pad_push(padlist, CvDEPTH(cv), cx->blk_sub.hasargs);
2258 if (!cx->blk_sub.hasargs) {
2273 if (cx->blk_sub.hasargs)
2280 cx->blk_sub.savearray = GvAV(PL_defgv);
2283 CX_CURPAD_SAVE(cx->blk_sub);
2284 cx->blk_sub.argarray = av;
2360 cx = &cxstack[ix];
2361 switch (CxTYPE(cx)) {
2364 if (!CxTRYBLOCK(cx)) {
2368 last_eval_cx = cx;
2373 gotoprobe = cx->blk_oldcop->op_sibling;
2379 gotoprobe = cx->blk_oldcop->op_sibling;
2385 if (CvDEPTH(cx->blk_sub.cv)) {
2386 gotoprobe = CvROOT(cx->blk_sub.cv);
2429 TOPBLOCK(cx);
2634 PERL_CONTEXT *cx;
2690 PUSHBLOCK(cx, CXt_EVAL|(IN_PERL_COMPILETIME ? 0 : CXp_REAL), SP);
2691 PUSHEVAL(cx, 0, Nullgv);
2697 POPBLOCK(cx,PL_curpm);
2698 POPEVAL(cx);
2732 PERL_CONTEXT *cx;
2738 cx = &(si->si_cxstack[ix]);
2739 if (CxTYPE(cx) == CXt_SUB || CxTYPE(cx) == CXt_FORMAT) {
2740 CV *cv = cx->blk_sub.cv;
2743 *db_seqp = cx->blk_oldcop->cop_seq;
2748 else if (CxTYPE(cx) == CXt_EVAL && !CxTRYBLOCK(cx))
2821 PERL_CONTEXT *cx;
2832 POPBLOCK(cx,PL_curpm);
2833 POPEVAL(cx);
2846 POPBLOCK(cx,PL_curpm);
2847 POPEVAL(cx);
2955 register PERL_CONTEXT *cx;
3296 PUSHBLOCK(cx, CXt_EVAL, SP);
3297 PUSHEVAL(cx, name, Nullgv);
3332 register PERL_CONTEXT *cx;
3397 PUSHBLOCK(cx, (CXt_EVAL|CXp_REAL), SP);
3398 PUSHEVAL(cx, 0, Nullgv);
3428 register PERL_CONTEXT *cx;
3433 POPBLOCK(cx,newpm);
3434 POPEVAL(cx);
3475 SV *nsv = cx->blk_eval.old_namesv;
3492 register PERL_CONTEXT *cx;
3499 PUSHBLOCK(cx, (CXt_EVAL|CXp_TRYBLOCK), SP);
3500 PUSHEVAL(cx, 0, 0);
3516 register PERL_CONTEXT *cx;
3519 POPBLOCK(cx,newpm);
3520 POPEVAL(cx);