| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
* generic/tclCompile.c: for #280 to fix the abysmal performance
* generic/tclCompile.h: for deep recursion, replaced the linear
* generic/tclExecute.c: search through the whole stack with
* generic/tclInt.h: another hashtable and simplified the data
structure used by the compiler (array instead of hashtable).
Incidentially this also fixes the memory leak reported via [Bug
2024937].
|
|
|
|
|
| |
* generic/tclExecute.c: let GetCommandSource use it. This solves
* generic/tclInt.h: [Bug 2017146]. Thx dgp for the analysis.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclBasic.c: [namespace import]; removed
* generic/tclDecls.h: Tcl_NRObjProc, replaced with
* generic/tclExecute.c: Tcl_NRCmdSwap (proposed public
* generic/tclInt.h: NRE API). This should fix
* generic/tclNRE.h: [Bug 582506].
* generic/tclNamesp.c:
* generic/tclStubInit.c:
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c: from the callbacks. Completely
* generic/tclInt.h: redone tailcall implementation
* generic/tclNRE.h: using the new feature.
* generic/tclProc.c:
* tests/NRE.test:
|
|
|
|
| |
Tcl_NRAddCallback
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tcl.h: TclNR_foo to Tcl_NRfoo
* generic/tclBasic.c:
* generic/tclDecls.h:
* generic/tclDictObj.c:
* generic/tclExecute.c:
* generic/tclInterp.c:
* generic/tclNRE.h:
* generic/tclNamesp.c:
* generic/tclOO.c:
* generic/tclOOBasic.c:
* generic/tclOOCall.c:
* generic/tclOOMethod.c:
* generic/tclProc.c:
* generic/tclStubInit.c:
|
| |
|
|
|
|
|
| |
* generic/tclExecute.c: TclInterpReady().
* generic/tclParse.c:
|
|
|
|
|
|
| |
* generic/tclExecute.c: TclResetCancellation lying around: it
* generic/tclProc.c: only needs to be called prior to any
iPtr->numLevels++. Thanks mistachkin.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
* generic/tclCompCmds.c: non-body compiled scripts to access the
* generic/tclCompile.c: LVT (but not to extend it) and enable the
* generic/tclCompile.h: canonical list opt to sidestep the
* generic/tclExecute.c: compiler. This is [Patch 1973096]
* generic/tclProc.c:
* tests/uplevel.test:
|
| |
|
|
|
|
| |
used in GrowEvaluationStack() and friends.
|
| |
|
|
|
|
| |
alignment of memory allocated by GrowEvaluationStack(). [Bug 1914503]
|
| |
|
| |
|
|
|
|
|
|
| |
compiling so that bytecodes invalid due to changing context or due
to the difference between expressions and scripts are not reused.
[Bug 1899164].
|
|
|
|
|
|
|
|
|
|
| |
management of Tcl_SetReturnOptions to become that of a conventional
Consumer routine. Thanks to Peter Spjuth for pointing out the
difficulties calling Tcl_SetReturnOptions with non-0-count value for
options.
* generic/tclExecute.c (INST_RETURN_STK): Revised the one caller
within Tcl itself which passes a non-0-count value to
Tcl_SetReturnOptions().
|
| |
|
|
|
|
| |
in-place concatenation (was going over String type)
|
| |
|
|
|
|
|
|
| |
* generic/tclCompile.c: TclCompileExpr() to profit from better
* generic/tclCompile.h: literal management according to usage.
* generic/tclExecute.c:
|
|
|
|
| |
* generic/tclExecute.c: (dgp)
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c:
* generic/tclInt.h:
* generic/tclThreadAlloc.c: Fix alignment for memory returned by
TclStackAlloc; insure that all memory allocators align to 16-byte
boundaries on 64 bit platforms [Bug 1851832, 1851524]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclIntDecls.h: to tclInt.h from stubs.
* generic/tclStubInit.c: Add flags var to TclByteArrayMatch for
* generic/tclInt.h: future extensibility
* generic/tcl.h: define TCL_MATCH_EXACT doc for Tcl_StringCaseMatch.
* doc/StrMatch.3: It is compatible with existing usage.
* generic/tclExecute.c (INST_STR_MATCH): flag for TclByteArrayMatch
* generic/tclUtil.c (TclByteArrayMatch, TclStringMatchObj):
* generic/tclRegexp.c (Tcl_RegExpExecObj):
* generic/tclCmdMZ.c (StringMatchCmd): Use TclStringMatchObj
* tests/string.test (11.9.* 11.10.*): more tests
|
|
|
|
|
| |
* generic/tclCompCmds.c (TclCompileRegexpCmd): Pass correct RE
compile flags at compile time, and use TCL_REG_NOSUB.
|
|
|
|
| |
TCL_REG_NOSUB as we come here without capture vars.
|
| |
|
| |
|
|
|
|
| |
traces not firing on non-existent array elements. [Bug 1833522]
|
| |
|
| |
|
|
|
|
|
|
| |
THIS PATCH WAS REVERTED: initial (mis)measurements overstated the
perfomance wins, which turn out to be tiny. Not worth the
complication.
|
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c: bit INTERP_RESULT_UNCLEAN: shortcut for
* generic/tclInt.h: Tcl_ResetResult for the "normal" case:
* generic/tclProc.c: TCL_OK, no return options, no errorCode
* generic/tclResult.c: nor errorInfo, return at normal level.
* generic/tclStubLib.c: [Patch 1830184]
* generic/tclUtil.c:
|
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c, generic/tclInt.decls, generic/tclIntDecls.h:
* generic/tclRegexp.c, generic/tclRegexp.h: Add INST_REGEXP and fully
* generic/tclStubInit.c, generic/tclUtil.c: compiled [regexp] for the
* tests/regexpComp.test: [Bug 1830166] simple cases. Also
added TclReToGlob function to convert RE to glob patterns and use
these in the possible cases.
|
|
|
|
| |
objTypes.
|
|
|
|
| |
index is not a list.
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclBasic.c:
* generic/tclExecute.c:
* generic/tclInt.h:
* generic/tclUnixInit.c:
* generic/tclUnixPort.h: new fields in interp (ekeko!) to cache
TSD data that is accessed at each command invocation, access
macros to replace Tcl_AsyncReady and TclpCheckStackSpace by much
faster variants [Patch 1829248]
|
|
|
|
|
|
| |
* generic/tclExecute.c, generic/tclUtil.c: TclByteArrayMatch
and don't allow a nocase option. [Bug 1828296]
For INST_STR_MATCH, ignore pattern type for TclByteArrayMatch case.
|
| |
|
|
|
|
|
|
|
| |
* generic/tclInt.decls, generic/tclIntDecls.h: added TclByteArrayMatch
* generic/tclUtil.c (TclByteArrayMatch): for efficient glob
* generic/tclExecute.c (TclExecuteByteCode): matching of ByteArray
Tcl_Objs, used in INST_STR_MATCH. [Bug 1827996]
|
|
|
|
| |
* generic/tclExecute.c:
|
|
|
|
|
|
| |
compilation on VC++.
* generic/tclExecute.c: Silenced several VC++ compiler warnings about
converting 'long' to 'unsigned short'.
|