In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/a57c668520b9767f7a6c93e0a396cee792a98be5?hp=b595cd4b73a6e1bd45865d6446c34d4019c740d1>
- Log ----------------------------------------------------------------- commit a57c668520b9767f7a6c93e0a396cee792a98be5 Author: Nicholas Clark <n...@ccl4.org> Date: Thu Jan 14 15:37:05 2010 +0000 Back out the {ENTER,LEAVE}_with_name("sub") part of d343c3ef45381352 for now. It's conflicting with an established pattern in XS code, working around the inability of the XS SCOPE: keyword to actually provide anything useful. The minor amount of extra debugging it gives here is not worth the external trouble it causes. Revisit this once we can provide a meaningful option to disable the ENTER/LEAVE around XSUBs. ----------------------------------------------------------------------- Summary of changes: pp_ctl.c | 6 +++--- pp_hot.c | 18 +++++++++--------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/pp_ctl.c b/pp_ctl.c index c181d0f..81a942f 100644 --- a/pp_ctl.c +++ b/pp_ctl.c @@ -1881,7 +1881,7 @@ PP(pp_dbstate) /* don't do recursive DB::DB call */ return NORMAL; - ENTER_with_name("sub"); + ENTER; SAVETMPS; SAVEI32(PL_debug); @@ -1896,7 +1896,7 @@ PP(pp_dbstate) (void)(*CvXSUB(cv))(aTHX_ cv); CvDEPTH(cv)--; FREETMPS; - LEAVE_with_name("sub"); + LEAVE; return NORMAL; } else { @@ -2559,7 +2559,7 @@ PP(pp_goto) PUSHMARK(mark); PUTBACK; (void)(*CvXSUB(cv))(aTHX_ cv); - LEAVE_with_name("sub"); + LEAVE; return retop; } else { diff --git a/pp_hot.c b/pp_hot.c index a8aa4ba..3371e88 100644 --- a/pp_hot.c +++ b/pp_hot.c @@ -2481,7 +2481,7 @@ PP(pp_leavesub) } PUTBACK; - LEAVE_with_name("sub"); + LEAVE; cxstack_ix--; POPSUB(cx,sv); /* Stack values are safe: release CV and @_ ... */ PL_curpm = newpm; /* ... and pop $1 et al */ @@ -2542,7 +2542,7 @@ PP(pp_leavesublv) * the refcounts so the caller gets a live guy. Cannot set * TEMP, so sv_2mortal is out of question. */ if (!CvLVALUE(cx->blk_sub.cv)) { - LEAVE_with_name("sub"); + LEAVE; cxstack_ix--; POPSUB(cx,sv); PL_curpm = newpm; @@ -2557,7 +2557,7 @@ PP(pp_leavesublv) * of a tied hash or array */ if (SvFLAGS(TOPs) & (SVs_TEMP | SVs_PADTMP | SVf_READONLY) && !(SvRMAGICAL(TOPs) && mg_find(TOPs, PERL_MAGIC_tiedelem))) { - LEAVE_with_name("sub"); + LEAVE; cxstack_ix--; POPSUB(cx,sv); PL_curpm = newpm; @@ -2573,7 +2573,7 @@ PP(pp_leavesublv) } } else { /* Should not happen? */ - LEAVE_with_name("sub"); + LEAVE; cxstack_ix--; POPSUB(cx,sv); PL_curpm = newpm; @@ -2590,7 +2590,7 @@ PP(pp_leavesublv) && SvFLAGS(*mark) & (SVs_TEMP | SVs_PADTMP | SVf_READONLY)) { /* Might be flattened array after $#array = */ PUTBACK; - LEAVE_with_name("sub"); + LEAVE; cxstack_ix--; POPSUB(cx,sv); PL_curpm = newpm; @@ -2645,7 +2645,7 @@ PP(pp_leavesublv) } PUTBACK; - LEAVE_with_name("sub"); + LEAVE; cxstack_ix--; POPSUB(cx,sv); /* Stack values are safe: release CV and @_ ... */ PL_curpm = newpm; /* ... and pop $1 et al */ @@ -2675,7 +2675,7 @@ PP(pp_entersub) cv = sv_2cv(sv, &stash, &gv, 0); } if (!cv) { - ENTER_with_name("sub"); + ENTER; SAVETMPS; goto try_autoload; } @@ -2729,7 +2729,7 @@ PP(pp_entersub) break; } - ENTER_with_name("sub"); + ENTER; SAVETMPS; retry: @@ -2889,7 +2889,7 @@ try_autoload: *(PL_stack_base + markix) = *PL_stack_sp; PL_stack_sp = PL_stack_base + markix; } - LEAVE_with_name("sub"); + LEAVE; return NORMAL; } } -- Perl5 Master Repository