summaryrefslogtreecommitdiffstats
path: root/generic/tclExecute.c
Commit message (Collapse)AuthorAgeFilesLines
...
| | * | | | Fixed bug in parent revision [832a1994c7] unpredictably breaking thebugfix_832a1994c7_for_precompiled_bcandreask2013-05-131-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | execution of precompiled bytecode (i.e. tbcload'ed bytecode). The semi-inversion of a guard condition dropped the part about TCL_BYTECODE_PRECOMPILED of the original condition, allowing the core to attempt to recompile code for which there are no script sources (anymore), which then fails.
* | | | | | A better technique for [list {*}blah]. Remove the INST_LIST_EXPANDED opcode ↵dkf2013-05-151-12/+0
|/ / / / / | | | | | | | | | | | | | | | (and the complex machinery associated with it) as as it is no longer needed.
* | | | | Fix implementation of INST_LIST_EXPANDED.dkf2013-05-121-1/+5
| | | | |
* | | | | Optimizations and general bytecode generation improvements.dkf2013-05-101-6/+56
| | | | |
* | | | | Implement Tcl_NewBooleanObj, Tcl_DbNewBooleanObj and Tcl_SetBooleanObj as ↵jan.nijtmans2013-04-231-29/+29
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | macros using Tcl_NewIntObj, Tcl_DbNewLongObj and Tcl_SetIntObj. Starting with Tcl 8.5, this is exactly the same, it only eliminates code duplication. Eliminate use of NO_WIDE_TYPE everywhere: It's exactly the same as TCL_WIDE_INT_IS_LONG
| * | | | Tcl_InvalidateStringRep -> TclInvalidateStringRepjan.nijtmans2013-02-071-1/+1
| | | | |
* | | | | merge core-8-5-branchjan.nijtmans2013-01-311-6/+5
|\ \ \ \ \ | |/ / / /
| * | | | Use twoPtrValue.ptr1 in stead of otherValuePtr everywhere. This is exactly ↵jan.nijtmans2013-01-311-6/+5
| | | | | | | | | | | | | | | | | | | | the same field, but it allows twoPtrValue.ptr2 to be used for other purposes.
* | | | | Eliminate some unneeded usages of Tcl_SetResult, Tcl_AddObjErrorInfojan.nijtmans2013-01-251-2/+2
| | | | | | | | | | | | | | | Fix "make test-packages" on cygwin
* | | | | Silence some compiler warnings.dgp2013-01-241-1/+0
|\ \ \ \ \ | |/ / / /
| * | | | remove stray calls to Tcl_Alloc and friends: the core should only use ↵mig2013-01-021-3/+3
| | | | | | | | | | | | | | | | | | | | ckalloc to allow MEM_DEBUG to work properly
| * | | | make some more internal tables constjan.nijtmans2012-04-231-2/+2
| |\ \ \ \ | | | |/ / | | |/| |
| | * | | make some more internal tables constjan.nijtmans2012-04-231-1/+1
| | | | | | | | | | | | | | | On cygwin, install dll's in /usr/bin, not in /usr/lib
| | * | | make some more internal tables CONSTjan.nijtmans2012-04-181-4/+4
| | | | | | | | | | | | | | | fix compilation with -DNO_CONST
| * | | | some formatting (*.decls)jan.nijtmans2012-04-041-1/+1
| |\ \ \ \ | | |/ / / | | | | | | | | | | | | | | | move up #undef, for macro which is conflicting with later stuff. remove some unused cygwin-related code some minor gcc warnings
| | * | | wipunprovendgp2011-07-121-25/+25
| | | | |
| | * | | Type mismatches in *printf calls.dgp2011-07-111-7/+9
| | | | |
* | | | | COMPILE_DEBUG big: fix bug in stack verification for {*}mig2013-01-171-2/+6
| |_|/ / |/| | |
* | | | discouraging the compiler from re-reading *pc in the peephole loop, part2 ↵mig2013-01-121-6/+2
| | | | | | | | | | | | | | | | (any diff?)
* | | | discouraging the compiler from re-reading *pc in the peephole loopmig2013-01-121-7/+10
| | | |
* | | | even better ... or so I hope: also inlining INST_PUSH1 in the peephole, ↵mig2013-01-121-53/+40
| | | | | | | | | | | | | | | | checking for ISC after LOAD1 and PUSH1
* | | | better commentsmig2013-01-111-2/+6
| | | |
* | | | fix for consecutive ISC (produced by [while 1 {...})mig2013-01-111-21/+16
| | | |
* | | | testing a cheaper(?) INST_START_COMMANDmig2013-01-111-49/+48
| | | |
* | | | Name functions according to 'what' instead of 'how' in the [tailcall]mig2013-01-111-1/+1
| | | | | | | | | | | | machinery, in view of making public some parts of it.
* | | | tailcall now running in a simpler model, with no eval-flags and no nre-stack ↵mig2013-01-101-13/+7
| | | | | | | | | | | | | | | | rewriting; yieldto also requires one fewer bounce. Mostly from mig-nre-mods
* | | | fix off-by-one error introduced in bd7d7a2061mig2013-01-101-1/+1
| | | |
* | | | improved stack checking under TCL_COMPILE_DEBUGmig2013-01-051-10/+9
| | | |
* | | | fix the new assertion, it should not trigger when an expansion is in progressmig2013-01-051-2/+5
| | | |
* | | | Add an assertion that checks the stack depth under TCL_COMPILE_DEBUG ↵mig2013-01-051-2/+10
| | | | | | | | | | | | | | | | *before* stack cleanup. It currently triggers at several spots in the testsuite!
* | | | Insure that PURIFY builds cannot exploit the Tcl stack to hide mem defects.mig2013-01-041-1/+13
| | | |
* | | | Added mechanism for pre-parsing built-in ensembles even when they are not goingdkf2013-01-031-0/+63
|\ \ \ \ | | | | | | | | | | to generate specific code. This provides a good speedup in some cases.
| * | | | Passing more tests.dkf2013-01-021-9/+15
| | | | |
| * | | | Working towards more efficient treatment of non-bytecoded ensemble subcommands.dkf2012-12-311-0/+57
| | | | |
* | | | | remove stray calls to Tcl_Alloc and friends: the core should only use ↵mig2013-01-021-3/+3
|/ / / / | | | | | | | | | | | | ckalloc to allow MEM_DEBUG to work properly
* | | | [Bug 3588366]: Corrected implementation of bounds restriction for end-indexeddkf2012-11-191-3/+0
| | | | | | | | | | | | compiled [string range]. Thanks to Emiliano Gavilan for diagnosis and fix.
* | | | re-enable bcc-tailcall, after fixing an infinite loop in the ↵mig2012-11-101-1/+1
| | | | | | | | | | | | | | | | TCL_COMPILE_DEBUG mode
* | | | Added compilation of [array exists], [array set] and [array unset]. Fixed a ↵merge_to_trunkdkf2012-11-051-6/+108
| | | | | | | | | | | | | | | | whole bunch of issues with opcode issuing that were causing problems with stack depth calculations.
* | | | Added compilation of [string last] and improved the compilation of [string ↵dkf2012-11-031-1/+47
| | | | | | | | | | | | | | | | range]. This in turn enables compilation of [namespace qualifiers] and [namespace tail] (also done).
* | | | Added compilation of [info object isa object] (i.e., object verification).dkf2012-11-031-0/+5
| | | |
* | | | Added more TclOO introspection bytecodes ([info object class], [info object ↵dkf2012-11-021-0/+28
| | | | | | | | | | | | | | | | namespace]). Also moved TclOO-in-8.6 to using the main Tcl internal ensemble builder.
* | | | Added compilation of [tailcall]. Not a particularly efficient compilation ↵dkf2012-11-011-0/+49
| | | | | | | | | | | | | | | | though; it does not detect tailcall-of-self as a special case.
* | | | Added compilation of [dict create] and [dict merge].dkf2012-11-011-2/+13
| | | |
* | | | Added [dict exists] compilation; implementation is 95% shared with [dict get].dkf2012-10-301-2/+23
| | | |
* | | | Some corrections and performance tweaksdkf2012-10-301-46/+56
| | | |
* | | | Compilation of [string first] and [string range] (with constant indices).dkf2012-10-301-1/+66
| | | |
* | | | Added compilation of simplest practical case of [string map].dkf2012-10-291-0/+52
| | | |
* | | | fix INST_YIELD so that it worksdkf_bytecode_8_6_yieldmig2012-10-281-5/+21
| | | |
* | | | Working towards a BCCed [yield]; this doesn't work right now.dkf2012-10-261-0/+26
| | | |
* | | | Compile [namespace which -command]; big performance saving in some contexts.dkf2012-10-261-0/+10
| | | |