summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2009-07-20 09:26:16 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2009-07-20 09:26:16 (GMT)
commit4e8b86c24d420e998e237b3088592b048a63d606 (patch)
tree0821242c98cef16c20283fd13c8aa2e1b871bf4e /ChangeLog
parent5c9038b30eadc53a06bd92249b583ab15f71c1c7 (diff)
downloadtcl-4e8b86c24d420e998e237b3088592b048a63d606.zip
tcl-4e8b86c24d420e998e237b3088592b048a63d606.tar.gz
tcl-4e8b86c24d420e998e237b3088592b048a63d606.tar.bz2
Performance boost for [string is].
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog44
1 files changed, 26 insertions, 18 deletions
diff --git a/ChangeLog b/ChangeLog
index ac774f8..f8469f6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2009-07-20 Donal K. Fellows <dkf@users.sf.net>
+
+ * generic/tclCmdMZ.c (StringIsCmd): Reorganize so that [string is] is
+ more efficient when parsing things that are correct, at a cost of
+ making the empty string test slightly more costly. With this, the cost
+ of doing [string is integer -strict $x] matches [catch {expr {$x+0}}]
+ in the successful case, and greatly outstrips it in the failing case.
+
2009-07-16 Don Porter <dgp@users.sourceforge.net>
* generic/tclCmdIL.c: Removed unused variables.
@@ -7,39 +15,39 @@
* generic/tclScan.c: Typo in ACCEPT_NAN configuration.
- * generic/tclStrToD.c: Set floating point control register on
- MIPS systems so that the gradual underflow expected by Tcl is
- in effect. [Bug 2819200]
+ * generic/tclStrToD.c: [Bug 2819200]: Set floating point control
+ register on MIPS systems so that the gradual underflow expected by Tcl
+ is in effect.
2009-07-14 Andreas Kupries <andreask@activestate.com>
* generic/tclBasic.c (DeleteInterpProc,TclArgumentBCEnter,
- TclArgumentBCRelease, TclArgumentGet):
+ (TclArgumentBCRelease, TclArgumentGet):
* generic/tclCompile.c (EnterCmdWordIndex, TclCleanupByteCode,
- TclInitCompileEnv, TclCompileScript):
+ (TclInitCompileEnv, TclCompileScript):
* generic/tclCompile.h (ExtCmdLoc):
* generic/tclExecute.c (TclExecuteByteCode):
* generic/tclInt.h (ExtIndex, CFWordBC):
* tests/info.test (info-39.0):
Backport of some changes made to the Tcl head, to handle literal
- sharing better. The code here is much simpler (trimmed down)
- compared to the head as the 8.5 branch is not bytecode compiling
- whole files, and doesn't compile eval'd code either.
+ sharing better. The code here is much simpler (trimmed down) compared
+ to the head as the 8.5 branch is not bytecode compiling whole files,
+ and doesn't compile eval'd code either.
- Reworked the handling of literal command arguments in bytecode to
- be saved (compiler) and used (execution) per command (See the
- TCL_INVOKE_STK* instructions), and not per the whole bytecode.
- This removes the problems with location data caused by literal
- sharing in proc bodies. Simplified the associated datastructures
- (ExtIndex is gone, as is the function EnterCmdWordIndex).
+ Reworked the handling of literal command arguments in bytecode to be
+ saved (compiler) and used (execution) per command (see the
+ TCL_INVOKE_STK* instructions), and not per the whole bytecode. This
+ removes the problems with location data caused by literal sharing in
+ proc bodies. Simplified the associated datastructures (ExtIndex is
+ gone, as is the function EnterCmdWordIndex).
2009-07-01 Pat Thoyts <patthoyts@users.sourceforge.net>
- * win/tclWinInt.h: Handle the GetUserName API call via the
- * win/tclWin32Dll.c: tclWinProcs indirection structure. This
- * win/tclWinInit.c: fixes a problem obtaining the username when
- the USERNAME environment variable is unset [Bug 2806622]
+ * win/tclWinInt.h: [Bug 2806622]: Handle the GetUserName API call
+ * win/tclWin32Dll.c: via the tclWinProcs indirection structure. This
+ * win/tclWinInit.c: fixes a problem obtaining the username when the
+ USERNAME environment variable is unset.
2009-06-15 Don Porter <dgp@users.sourceforge.net>