summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* [2992970] Restore the safety of Tcl_AppendObjToObj(x, x) for bytearrays.bug_2992970dgp2014-01-152-52/+64
| | | | | | | | | Also moves overflow checking to TclAppendBytesToByteArray() and adds the ability to call TABTBA() with bytes==NULL, for appending unspecified bytes. That is, the string grows, but the new bytes are of undetermined value. Like Tcl_NewByteArrayObj(NULL, length) this option is useful for manipulating buffers. The TABTBA growth algorithm is also enhanced a bit, copying over a fuller implementation from GrowStringBuffer() in tclStringObj.c
* Make DEFAULT_TRIM_SET a MODULE_SCOPE string constant, so its value can be ↵jan.nijtmans2014-01-083-35/+43
| | | | | shared in tclCmdMZ.o and TclCompCmdsSZ.o and it no longer pollutes the tclStringTrim.h header file.
* Add compilations for the following commands:dkf2014-01-0716-306/+1560
|\ | | | | | | | | | | | | | | | | | | | | | | | | * concat * linsert * namespace origin * next * string replace * string tolower * string totitle * string toupper * string trim * string trimleft * string trimright
| * make function static once more; not needed outside of source filedkf2014-01-072-13/+9
| |
| * reduce the overhead of NR-enabled TclOO [next]dkf2014-01-071-9/+127
| |
| * factor out a common stanzadkf2014-01-051-21/+40
| |
| * merge trunkdkf2014-01-053-66/+50
| |\ | |/ |/|
* | fix arraySet compiler to set -errorcode instead of -errorCode in return optionsmig2014-01-051-2/+2
| |
* | skip the switch(result) on returning TCL_OK from a procmig2014-01-051-40/+32
| |
* | reducing TEBCdata: pc and cleanup now passed in the NREcallbackmig2014-01-051-24/+16
| |
| * merge main working branch; made opcode work by getting callback ordering rightdkf_bytecode_8_6_nextdkf2014-01-021-23/+17
| |\
| | * merge trunkdkf2014-01-021-4/+4
| | |\ | |_|/ |/| |
* | | ... and more silly errorsdkf2014-01-021-4/+4
| | |
| | * merge trunkdkf2014-01-021-1/+1
| | |\ | |_|/ |/| |
* | | oops...dkf2014-01-021-1/+1
| | |
| * | merge main working branchdkf2014-01-026-474/+502
| |\ \ | | |/
| | * merge trunkdkf2014-01-021-251/+232
| | |\ | |_|/ |/| |
* | | more fixes to instruction tracing; ensure all places that need ↵dkf2014-01-021-90/+123
| | | | | | | | | | | | DECACHE_STACK_INFO have it. jan.nijtmans: Branch moved aside an hidden, so future bisects are not affected by this branch mistakes.
* | | factor out a common peephole stanzadkf2014-01-011-137/+79
| | |
* | | another jump peephole, this time with string comparisonsdkf2013-12-311-0/+14
| | |
| | * more cleaning up of error-case instruction tracingdkf2013-12-311-13/+8
| | |
| | * merge trunkdkf2013-12-311-176/+226
| | |\ | |_|/ |/| |
* | | more peephole optimizations in TEBC, and better instruction execution tracesdkf2013-12-311-148/+212
| | |
* | | clarify the resume sequence in TEBCresume; make checkInterp a local ↵mig2013-12-311-28/+14
| | | | | | | | | | | | variable, remove it from the saved struct
* | | merge trunkdkf_asm_crash_20131022dgp2013-12-3025-357/+532
|\ \ \
* \ \ \ merge trunkdgp2013-10-232-1/+6
|\ \ \ \
| | | | * put the other definition of a trim set in the header file toodkf2013-12-303-13/+17
| | | | |
| | | | * Factor out the definition of the default string trim set; define it once only.dkf2013-12-303-65/+63
| | | | |
| | | * | merge main working branchdkf2013-12-3091-7623/+11266
| | | |\ \ | | | | |/
| | | | * implement [namespace origin] in bytecodedkf2013-12-307-4/+59
| | | | |
| | | | * allow generation by assemblerdkf2013-12-302-7/+8
| | | | |
| | | | * corrected commentdkf2013-12-301-2/+2
| | | | |
| | | | * 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-2313-65/+145
| | | | |\ | | | |_|/ | | |/| |
| | * | | 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)
| | * | | merge trunkbug_0b874c344ddgp2013-12-187-261/+355
| | |\ \ \
| | | * | | Making the optimizer pluggable by extensions; please review for committing ↵mig_tmp_optimizemig2013-12-185-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | to trunk
| | * | | | 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-051-4/+56
| | | | | |