summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* corrected commentdkf2013-12-301-2/+2
|
* Improved general case of [string replace] implementation.dkf2013-12-294-4/+194
|\
| * precondition was wrong, and needed to flush part of the string/internal repdkf_bytecode_8_6_string_replacedkf2013-12-291-5/+27
| |
| * use the new instructiondkf2013-12-291-3/+16
| |
| * completed instruction implementationdkf2013-12-283-22/+57
| |
| * interim commit; not yet workingdkf2013-12-241-0/+120
|/
* merge trunkdkf2013-12-2317-83/+172
|\
| * Added new tools for managing and verifying the stack depth during ↵mig2013-12-233-11/+48
| | | | | | | | compilation. Used it in some spots in the compiler and in TclCompileCatchCommand.
| * remove unnecessary messing around INST_CONTINUE and INST_BREAK: local ↵mig2013-12-221-10/+4
| | | | | | | | continue/break are already converted to jumps, so that these are either caught or returned - in either case, the stacks are cleaned up properly by TEBC itself.
| * remove duplicate statement in previous commitmig2013-12-221-1/+0
| |
| * fix stack counting bug in new catch compiler, commit 62a51cdb45.mig2013-12-221-2/+8
| |
| * remove INST_TRY_CVT_TO_NUMERIC when it is known not be necessary (cherrypick ↵mig2013-12-204-0/+16
| | | | | | | | from mig-optimize)
| * Add TclRegisterLiteral() to internal stub table (from "mig-optimize" branch, ↵jan.nijtmans2013-12-195-3/+15
| | | | | | | | looks like a good idea anyway)
| * [0b874c344d] Fix for nested coroutines ability to stitch together multipledgp2013-12-182-36/+43
| |\ | | | | | | parts of the CmdFrame chain traversed by [info frame].
| | * merge trunkbug_0b874c344ddgp2013-12-1811-279/+409
| | |\ | | |/ | |/|
| * | Making the optimizer pluggable by extensionsmig2013-12-185-4/+16
| |\ \
| | * | Making the optimizer pluggable by extensions; please review for committing ↵mig_tmp_optimizemig2013-12-185-4/+16
| |/ / | | | | | | | | | to trunk
| * | Improve descriptions of character escapes and ranges in Tcl.n.dkf2013-12-153-18/+24
| | | | | | | | | Improve output format handlers to cope with added escape for en-dashes.
| | * Big simplification of the bug fix.dgp2013-12-181-66/+34
| | |
| | * Factor out the level offsetting into a final pass. Let the firstdgp2013-12-171-16/+27
| | | | | | | | | pass of the "chain" operation just stitch things together and count levels.
| | * Refactoring work on the "chain" operation.dgp2013-12-161-53/+48
| | |
| | * Simplify the coding of the unchain operation.dgp2013-12-131-31/+9
| | |
| | * Draft fix for Bug 0b874c344d. Includes test.dgp2013-12-052-4/+59
| | |
* | | simple compilation of [string replace]dkf2013-12-123-1/+120
| | |
* | | merge trunk; document added instructionsdkf2013-12-123-84/+76
|\ \ \ | |/ /
| * | simplification of the catch compiler and new testmig2013-12-112-73/+48
| |\ \
| | * | commentsmig2013-12-111-7/+4
| | | |
| | * | commentsmig2013-12-111-5/+2
| | | |
| | * | commentsmig2013-12-111-1/+7
| | | |
| | * | new test, and fix for bugmig2013-12-112-6/+39
| | | |
| | * | simplify: remove the special casemig2013-12-111-21/+4
| | | |
| | * | store options early: simplify compiler, reduce stack manipulationsmig2013-12-111-26/+6
| | | |
| | * | simplifying: drop early the evaled scriptmig2013-12-111-29/+8
| |/ /
* | | merge trunkdkf2013-12-125-45/+48
|\ \ \ | |/ /
| * | fix stack computations for lmapmig2013-12-101-1/+1
| | |
| * | new INST_LMAP_COLLECT, speeds up lmap and eliminates the need for a temp varmig2013-12-104-29/+36
| | |
| * | change NULL to INT2PTR(0), for claritymig2013-12-061-1/+1
| |\ \
| | * | change NULL to INT2PTR(0), for claritymig_opt_foreachmig2013-12-061-1/+1
| | | |
| | * | merge trunkmig2013-12-064-19/+55
| | |\ \ | | |/ / | |/| |
| * | | Oops, wrong macro.jan.nijtmans2013-12-061-2/+2
| | | |
| * | | Introducing a new union member in Tcl_Obj is not a good idea in a patch ↵jan.nijtmans2013-12-062-9/+5
| | | | | | | | | | | | | | | | | | | | | | | | release, especially using "long". Better allow iterNum and iterMax to grow to ssize_t (or size_t) in Tcl 9 (or 8.x, why not?). Usage of "long" in public API causes interoperability problems between Cygwin64 and Win64 (probably no-one cares except me).
* | | | merge trunkdkf2013-12-0620-202/+413
|\ \ \ \ | |/ / /
| * | | Stop printing undefined values in disassembled code.dkf2013-12-063-10/+50
| | | |
| * | | 3x speed improvement in foreach, via new compiler and opcodes. The old ↵mig2013-12-065-161/+255
| |\ \ \ | | |/ / | | | / | | |/ | |/| version remains for old .tbc sake, but is unused in the core.
| | * adapted the array-set compiler to use the new foreach opcodesmig2013-12-062-53/+31
| | |
| | * tighter mem management in array-set compilermig2013-12-061-2/+2
| | |
| | * tighter mem managementmig2013-12-061-4/+2
| | |
| | * add comments on INST_FOREACH_*mig2013-12-051-0/+2
| | |
| | * add comments on field "misuse"mig2013-12-052-1/+2
| | |
| | * New compiler and bytecodes for foreach and lmap: 70% faster mig2013-12-055-105/+220
| |/ | | | | | | | | | | | | | | | | * speed as measured by http://wiki.tcl.tk/39021: runs in <1/3 the time * still need to adapt array-set to use this * assemble.test-16.5 or 16.6 bombs in a purify/symbols build (?) * removing the old opcodes would force recompilation of old .tbc files or adaptation of tbcload