From: Nicholas Clark Date: Sun, 20 Jan 2008 21:05:26 +0000 (+0000) Subject: Move retop first in structs block_sub, block_format and block_eval. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=8e6639977ceec4416fe89fd83cf666f06787f259;p=p5sagit%2Fp5-mst-13.2.git Move retop first in structs block_sub, block_format and block_eval. This simplifies some code in Perl_deb_stack_all(). p4raw-id: //depot/perl@33016 --- diff --git a/cop.h b/cop.h index f8b32f8..209ee2a 100644 --- a/cop.h +++ b/cop.h @@ -279,8 +279,9 @@ struct cop { /* subroutine context */ struct block_sub { - CV * cv; OP * retop; /* op to execute on exit from sub */ + /* Above here is the same for sub, format and eval. */ + CV * cv; U8 hasargs; U8 lval; /* XXX merge lval and hasargs? */ /* Above here is the same for sub and format. */ @@ -293,8 +294,9 @@ struct block_sub { /* format context */ struct block_format { - CV * cv; OP * retop; /* op to execute on exit from sub */ + /* Above here is the same for sub, format and eval. */ + CV * cv; U8 hasargs; U8 lval; /* XXX merge lval and hasargs? */ /* Above here is the same for sub and format. */ @@ -394,13 +396,14 @@ struct block_format { /* eval context */ struct block_eval { + OP * retop; /* op to execute on exit from eval */ + /* Above here is the same for sub, format and eval. */ U8 old_in_eval; U16 old_op_type; SV * old_namesv; OP * old_eval_root; SV * cur_text; CV * cv; - OP * retop; /* op to execute on exit from eval */ JMPENV * cur_top_env; /* value of PL_top_env when eval CX created */ }; diff --git a/deb.c b/deb.c index 3b85558..5e20dee 100644 --- a/deb.c +++ b/deb.c @@ -293,8 +293,7 @@ Perl_deb_stack_all(pTHX) if (CxTYPE(cx) == CXt_EVAL || CxTYPE(cx) == CXt_SUB || CxTYPE(cx) == CXt_FORMAT) { - const OP * const retop = (CxTYPE(cx) == CXt_EVAL) - ? cx->blk_eval.retop : cx->blk_sub.retop; + const OP * const retop = cx->blk_sub.retop; PerlIO_printf(Perl_debug_log, " retop=%s\n", retop ? OP_NAME(retop) : "(null)"