Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | | More macro use. | dgp | 2013-09-13 | 1 | -6/+2 | |
| | | | ||||||
* | | | Mark commands with potential to compile expansion arguments (as [list] does). | dgp | 2013-07-24 | 1 | -0/+9 | |
| | | | ||||||
* | | | Stop checking stack depth in [catch] compiler. | dgp | 2013-07-23 | 1 | -10/+0 | |
| | | | | | | | | | | | | Stack depth is checked in compiles of *all* Tcl commands/scripts/bodies in debug builds already. | |||||
* | | | merge trunk | dgp | 2013-07-15 | 1 | -26/+11 | |
|\ \ \ | ||||||
| * | | | Prefer CompileWord() over CompileTokens() when possible. | dgp | 2013-07-15 | 1 | -2/+1 | |
| | | | | ||||||
| * | | | Global replace: CompileBody() -> BODY(). | dgp | 2013-07-12 | 1 | -16/+9 | |
| | | | | ||||||
| * | | | Revise the CompileWord() and PushVarNameWord() macros to make explicit the | dgp | 2013-07-11 | 1 | -8/+1 | |
| | | | | | | | | | | | | SetLineInformation() that's in each of them. | |||||
* | | | | merge trunk | dgp | 2013-07-11 | 1 | -4/+2 | |
|\ \ \ \ | |/ / / | ||||||
| * | | | Revert the revised macros used in developing the new tests.tip280_test_coverage | dgp | 2013-07-11 | 1 | -10/+10 | |
| | | | | ||||||
| * | | | Add tests for, and fix bugs in, the SetLineInformation() calls in tclCompCmds.c. | dgp | 2013-07-10 | 1 | -11/+9 | |
| | | | | ||||||
| * | | | Next attempt. Appears to have uncovered a bug. | dgp | 2013-07-10 | 1 | -1/+1 | |
| | | | | ||||||
| * | | | First additional test. Remove dup macros in tclEnsemble.c. | dgp | 2013-07-10 | 1 | -1/+1 | |
| | | | | ||||||
* | | | | Stop the compileProc routines leaving behind error messages in interp. | dgp | 2013-06-27 | 1 | -2/+3 | |
|/ / / | | | | | | | | | | | | | (Nicer way to solve [Bug 20a81392ec].) Make simplifications in TclCompileScript() make possible by the new structure. Still a work in progress. | |||||
* | | | Select improvements in stack depth estimates brought over from mig-review. | dgp | 2013-06-11 | 1 | -22/+4 | |
| | | | | | | | | | | | | | | | Mostly these are just simplifications, removing code that wasn't needed. Some changes make the stack depth estimate more accurate instruction by instruction. | |||||
* | | | Factor out stereotypical ways of getting variable indices. | dkf | 2013-06-08 | 1 | -149/+40 | |
| | | | ||||||
* | | | Simplify stack depth management. | dkf | 2013-06-07 | 1 | -31/+33 | |
| | | | ||||||
* | | | More efficient instruction sequence for [dict for] with correct exception ↵ | dkf | 2013-06-06 | 1 | -23/+10 | |
| | | | | | | | | | | | | depth handling. | |||||
* | | | 3614382 Fix stack management of compiled [dict for] by shifting limits | dgp | 2013-06-06 | 1 | -3/+4 | |
| | | | | | | | | | of the catch range. | |||||
* | | | Working on the optimizer, and finding a few bugs in bytecode generation. | dkf | 2013-06-05 | 1 | -2/+0 | |
|\ \ \ | ||||||
| * \ \ | merge fixes | dkf | 2013-06-05 | 1 | -12/+0 | |
| |\ \ \ | |/ / / |/| | | | ||||||
| * | | | More cleaning up; factor out optimizer to new file. Some weird problems still. | dkf | 2013-06-05 | 1 | -14/+16 | |
| | | | | ||||||
* | | | | Stack Depth fixups. | dgp | 2013-06-05 | 1 | -12/+2 | |
|/ / / | ||||||
* | | | Stack cleanup works now even in the most evil expansion cases. | dkf | 2013-06-05 | 1 | -50/+12 | |
| | | | ||||||
* | | | Next stage of fixing the break/continue generation. | dkf | 2013-06-03 | 1 | -32/+44 | |
| | | | ||||||
* | | | Generate [continue] optimally in [for] next clauses. Add tests for Bug 3614226. | dkf | 2013-06-03 | 1 | -6/+5 | |
| | | | ||||||
* | | | Many improvements to code generation of efficient break and continue. | dkf | 2013-06-02 | 1 | -57/+36 | |
| | | | ||||||
* | | | Getting better at doing more efficient break/continue instruction handling. | dkf | 2013-06-01 | 1 | -50/+63 | |
| | | | ||||||
* | | | Working towards the next batch of optimizations. | dkf | 2013-05-30 | 1 | -0/+81 | |
| | | | ||||||
* | | | Simplifications and tidying up of stack management issues. Work in progress. | dgp | 2013-05-29 | 1 | -14/+13 | |
| | | | ||||||
* | | | Stop emitting the instructions INST_*_SCALAR_STK*. They are identical to | dgp | 2013-05-29 | 1 | -21/+24 | |
| | | | | | | | | | | | | | | | | | | | | | their INST_*_STK* counterparts. Having done that, it is clear the "simpleVarName" return from TclPushVarName provides nothing of use to any of its callers. Eliminate that. Also make TPVN return void, instead of int. Bring the TPVN header comments up to date; they were quite rotten. | |||||
* | | | Use the routines that provide "basic compile" instead of reinventing them. | dgp | 2013-05-28 | 1 | -34/+16 | |
| | | | ||||||
* | | | Plug the memory leak. Greater ambitions to improve this routine are proving | dgp | 2013-05-28 | 1 | -0/+1 | |
| | | | | | | | | | more difficult than expected. | |||||
* | | | Repair some stack depth housekeeping. | dgp | 2013-05-25 | 1 | -0/+1 | |
| | | | ||||||
* | | | 3613854 - Fixup stack maintenance /code generation for [array set x $oddList]. | dgp | 2013-05-24 | 1 | -20/+17 | |
| | | | | | | | | | | | | Postscript - I see that this commit created a memory leak. Will commit a fix within a few days. | |||||
* | | | Spare developers the burden and error risk of counting bytes in string | dgp | 2013-05-23 | 1 | -38/+34 | |
| | | | | | | | | | literals, or having to type them twice. | |||||
* | | | Eliminate code duplication. | dgp | 2013-05-23 | 1 | -69/+3 | |
| | | | ||||||
* | | | Split tclCompCmds.c into two roughly-equal-sized pieces. | dkf | 2013-05-18 | 1 | -2931/+32 | |
| | | | ||||||
* | | | A better technique for [list {*}blah]. Remove the INST_LIST_EXPANDED opcode ↵ | dkf | 2013-05-15 | 1 | -2/+37 | |
| | | | | | | | | | | | | (and the complex machinery associated with it) as as it is no longer needed. | |||||
* | | | Partial fix: still ongoing | dkf | 2013-05-11 | 1 | -0/+3 | |
| | | | ||||||
* | | | Optimizations and general bytecode generation improvements. | dkf | 2013-05-10 | 1 | -29/+170 | |
| | | | ||||||
* | | | Improve code generation for [array set] in a common case. | dkf | 2013-04-29 | 1 | -23/+59 | |
| | | | ||||||
* | | | New internal routine TclFetchLiteral() for better CompileEnv encapsulation. | dgp | 2013-03-05 | 1 | -2/+1 | |
| | | | ||||||
* | | | [3603163]: Prevent odd crashes in 'eval {array set ...}' | dkf | 2013-02-04 | 1 | -18/+23 | |
| | | | ||||||
* | | | More extensive use of the techniques to improve other edge cases in ensemble ↵ | dkf | 2013-01-28 | 1 | -41/+37 | |
| | | | | | | | | | | | | compilation. | |||||
* | | | Slightly better compilation of some [array] cases. | dkf | 2013-01-28 | 1 | -5/+25 | |
| | | | ||||||
* | | | First attempt at fixing problems caused by [array set] inside [namespace eval], | dkf | 2013-01-11 | 1 | -6/+15 | |
| | | | | | | | | | | | | | | | which caused partial bytecode generation followed by a reject which triggered the issuing of generic ensemble code with an extra push of the variable name at the start (which got the stack depth wrong). | |||||
* | | | Fix memory leak in [format] compiler. | dkf | 2013-01-04 | 1 | -1/+1 | |
| | | | ||||||
* | | | All tests pass except one; not sure what's wrong there. | dkf | 2013-01-02 | 1 | -4/+4 | |
| | | | ||||||
* | | | Added compilation of [array exists], [array set] and [array unset]. Fixed a ↵merge_to_trunk | dkf | 2012-11-05 | 1 | -22/+257 | |
| | | | | | | | | | | | | 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 ↵ | dkf | 2012-11-03 | 1 | -0/+73 | |
| | | | | | | | | | | | | range]. This in turn enables compilation of [namespace qualifiers] and [namespace tail] (also done). |