Attachment "checkInterp-out" to
ticket [1702212fff]
added by
msofer
2007-04-17 20:31:22.
Index: generic/tclExecute.c
===================================================================
RCS file: /cvsroot/tcl/tcl/generic/tclExecute.c,v
retrieving revision 1.276
diff -u -r1.276 tclExecute.c
--- generic/tclExecute.c 14 Apr 2007 17:35:54 -0000 1.276
+++ generic/tclExecute.c 16 Apr 2007 19:20:53 -0000
@@ -186,8 +186,7 @@
tosPtr = eePtr->tosPtr
#define DECACHE_STACK_INFO() \
- eePtr->tosPtr = tosPtr;\
- checkInterp = 1
+ eePtr->tosPtr = tosPtr
/*
* Macros used to access items on the Tcl evaluation stack. PUSH_OBJECT
@@ -1189,8 +1188,6 @@
int instructionCount = 0; /* Counter that is used to work out when to
* call Tcl_AsyncReady() */
Tcl_Obj *expandNestList = NULL;
- int checkInterp = 0; /* Indicates when a check of interp readyness
- * is necessary. Set by DECACHE_STACK_INFO() */
/*
* Transfer variables - needed only between opcodes, but not while
@@ -1512,10 +1509,9 @@
*/
iPtr->cmdCount += TclGetUInt4AtPtr(pc+5);
- if (!checkInterp ||
- (((codePtr->compileEpoch == iPtr->compileEpoch)
+ if (((codePtr->compileEpoch == iPtr->compileEpoch)
&& (codePtr->nsEpoch == namespacePtr->resolverEpoch))
- || (codePtr->flags & TCL_BYTECODE_PRECOMPILED))) {
+ || (codePtr->flags & TCL_BYTECODE_PRECOMPILED)) {
#if 0 && !TCL_COMPILE_DEBUG
/*
* Peephole optimisations: check if there are several
@@ -1816,7 +1812,7 @@
if (cmdPtr && !(cmdPtr->flags & CMD_HAS_EXEC_TRACES)
&& iPtr->tracePtr == NULL
- && (!checkInterp || (codePtr->compileEpoch == iPtr->compileEpoch))) {
+ && (codePtr->compileEpoch == iPtr->compileEpoch)) {
/*
* No traces, the interp is ok: avoid the call out to TEOVi
*/