summaryrefslogtreecommitdiffstats
path: root/generic/tclCompile.c
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | | Stop the compileProc routines leaving behind error messages in interp.dgp2013-06-271-60/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (Nicer way to solve [Bug 20a81392ec].) Make simplifications in TclCompileScript() make possible by the new structure. Still a work in progress.
| * | | | | | | plug memory leaksdgp2013-06-271-1/+3
| | | | | | | |
| * | | | | | | Fix bytecode ranges in the cmdMapPtr. still leaky.dgp2013-06-261-4/+9
| | | | | | | |
| * | | | | | | A few bug fixes from failing tests; still leaky.dgp2013-06-261-2/+5
| | | | | | | |
| * | | | | | | merge trunkdgp2013-06-251-1/+2
| |\ \ \ \ \ \ \ | | |/ / / / / /
| * | | | | | | Nearly functional now, but leaky and not yet as tidy as I'm hoping for.dgp2013-06-251-12/+289
| | | | | | | |
| * | | | | | | merge trunkdgp2013-06-251-5/+3
| |\ \ \ \ \ \ \
| * | | | | | | | Branch for rewriting TclCompileScript() and related routines, with thedgp2013-06-251-0/+124
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | intent to generally simplify and make more readable, as well as find and eliminate duplication with ensemble machinery and improve mergeability to other branches. Work in Progress. Doesn't work at all right now.
* | | | | | | | | merge trunkdkf2013-07-071-8/+5
|\ \ \ \ \ \ \ \ \ | | |_|/ / / / / / | |/| | | | | | |
| * | | | | | | | Replace always true test with assertion.dgp2013-06-251-1/+2
| | |/ / / / / / | |/| | | | | |
| * | | | | | | Make more use of the CompileTokens() macro.dgp2013-06-251-5/+3
| |/ / / / / /
| * | | | | | TclCompileScript() should not overwrite envPtr->numSrcBytes.dgp2013-06-201-2/+0
| |\ \ \ \ \ \ | | | |_|_|_|/ | | |/| | | | The envPtr already has the right value stored in it.
| | * | | | | TclCompileScript() should not overwrite envPtr->numSrcBytes.dgp2013-06-201-1/+0
| | | | | | | | | | | | | | | | | | | | | The envPtr already has the right value stored in it.
* | | | | | | Properly encode more operand types to reduce the number of special cases in ↵dkf2013-06-201-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | the disassembler.
* | | | | | | merge trunkdkf2013-06-191-7/+6
|\ \ \ \ \ \ \ | |/ / / / / /
| * | | | | | More use of simplifying macros.dgp2013-06-191-7/+6
| | | | | | | | | | | | | | | | | | | | | Replace dynamic allocation with automatic storage on the call stack.
* | | | | | | merge trunkdkf2013-06-111-8/+11
|\ \ \ \ \ \ \ | |/ / / / / /
| * | | | | | Select improvements in stack depth estimates brought over from mig-review.dgp2013-06-111-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mostly these are just simplifications, removing code that wasn't needed. Some changes make the stack depth estimate more accurate instruction by instruction.
| * | | | | | Repairs to compile/exec debugging output.dgp2013-06-111-1/+6
| | | | | | |
* | | | | | | Move the disassembler to its own file.dkf2013-06-111-785/+0
|/ / / / / /
* | | | | | More informative comment describing INST_SYNTAX.dkf2013-06-081-1/+2
| | | | | |
* | | | | | Corrected wrong information about instruction width that was causing an ↵dkf2013-06-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | optimizer crash.
* | | | | | More cleaning up; factor out optimizer to new file. Some weird problems still.dkf2013-06-051-173/+1
| | | | | |
* | | | | | Stack cleanup works now even in the most evil expansion cases.dkf2013-06-051-4/+104
| | | | | |
* | | | | | Next stage of fixing the break/continue generation.dkf2013-06-031-0/+3
| | | | | |
* | | | | | Generate [continue] optimally in [for] next clauses. Add tests for Bug 3614226.dkf2013-06-031-1/+34
| | | | | |
* | | | | | Many improvements to code generation of efficient break and continue.dkf2013-06-021-13/+147
| | | | | |
* | | | | | Getting better at doing more efficient break/continue instruction handling.dkf2013-06-011-0/+42
| | | | | |
* | | | | | derpdkf2013-05-301-2/+2
| | | | | |
* | | | | | Working towards the next batch of optimizations.dkf2013-05-301-19/+77
| | | | | |
* | | | | | 3614102 - Reset stack housekeeping when compileProc fails.dgp2013-05-291-2/+6
| | | | | |
* | | | | | Stop emitting the instructions INST_*_SCALAR_STK*. They are identical todgp2013-05-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | | Repair some stack depth housekeeping.dgp2013-05-251-1/+1
| | | | | |
* | | | | | Removed const qualifier causing the HP native cc to error out (error 1675: ↵andreask2013-05-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Duplicate type qualifier "const").
* | | | | | Remove useless variables.dkf2013-05-171-42/+39
|\ \ \ \ \ \
| * | | | | | Confirmed that every caller of TclProcCompileProc() arranges for thedgp2013-05-161-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | procPtr and nsPtr arguments: nsPtr == procPtr->cmdPtr->nsPtr. This makes the test in TclCompileScript() useless. TCS() will always compile in the current namespace of the interp. Remove the code that obfuscates that fact.
| * | | | | | Disabled some code in TclCompileScript(). Test suite results are unaffected.dgp2013-05-151-1/+3
|/ / / / / / | | | | | | | | | | | | Does this indicate a gap in the test suite, or is this code truly useless?
* | | | | | Removing a few changes that were not actually needed, and correcting comments.dkf2013-05-151-9/+6
| | | | | |
* | | | | | merge trunkdkf_bcc_optimizedkf2013-05-151-1/+1
|\ \ \ \ \ \
| * | | | | | compiler warningdgp2013-05-131-1/+1
| | | | | | |
* | | | | | | A better technique for [list {*}blah]. Remove the INST_LIST_EXPANDED opcode ↵dkf2013-05-151-60/+74
|/ / / / / / | | | | | | | | | | | | | | | | | | (and the complex machinery associated with it) as as it is no longer needed.
* | | | | | Corrected the stack balancing in the special [list {*} ] compiler.dkf2013-05-121-1/+9
| | | | | |
* | | | | | Partial fix: still ongoingdkf2013-05-111-1/+1
| | | | | |
* | | | | | Optimizations and general bytecode generation improvements.dkf2013-05-101-12/+276
| | | | | |
* | | | | | 3607372 Correct literal refcounting.bug_3607372dgp2013-03-081-1/+1
| | | | | |
* | | | | | New internal routine TclFetchLiteral() for better CompileEnv encapsulation.dgp2013-03-051-9/+9
| | | | | |
* | | | | | Remove from tclCompile.h declarations used in only one source file.dgp2013-03-051-6/+7
|\ \ \ \ \ \ | |/ / / / /
| * | | | | Remove from tclCompile.h declarations used in only one source file.dgp2013-03-051-5/+6
| | | | | |
* | | | | | Revise TclReleaseLiteral() to tolerate a NULL interp argument.dgp2013-02-281-12/+4
| | | | | | | | | | | | | | | | | | Update callers and revise mistaken comments.
* | | | | | Shift more burden of smart cleanup onto the TclFreeCompileEnv() routine.dgp2013-02-221-47/+69
|\ \ \ \ \ \ | |/ / / / / | | | | | | Stop crashes when the hookProc raises an error.