From d320d81dec73fb4809b297d876646aeec43be25e Mon Sep 17 00:00:00 2001 From: Miguel Sofer Date: Tue, 14 Aug 2007 21:04:27 +0000 Subject: * generic/tclExecute.c (INST_INVOKE*): peephole opt, do not get the interp's result if it will be pushed/popped. --- ChangeLog | 5 +++++ generic/tclExecute.c | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 234c2b4..2875de2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2007-08-14 Miguel Sofer + + * generic/tclExecute.c (INST_INVOKE*): peephole opt, do not get + the interp's result if it will be pushed/popped. + 2007-08-14 Don Porter * generic/tclBasic.c: Use fully qualified variable names for diff --git a/generic/tclExecute.c b/generic/tclExecute.c index a54ee92..43bd58a 100644 --- a/generic/tclExecute.c +++ b/generic/tclExecute.c @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclExecute.c,v 1.313 2007/08/13 23:07:36 dgp Exp $ + * RCS: @(#) $Id: tclExecute.c,v 1.314 2007/08/14 21:04:28 msofer Exp $ */ #include "tclInt.h" @@ -2042,6 +2042,11 @@ TclExecuteByteCode( if (result == TCL_OK) { Tcl_Obj *objPtr; +#ifndef TCL_COMPILE_DEBUG + if (*(pc+pcAdjustment) == INST_POP) { + NEXT_INST_V((pcAdjustment+1), objc, 0); + } +#endif /* * Push the call's object result and continue execution with * the next instruction. -- cgit v0.12