summaryrefslogtreecommitdiffstats
path: root/generic/tclCompile.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove Tcl_Preserve support for ContLineLoc values. It's not needed.dgp2013-08-071-17/+2
| | | This allows the clLoc field of CompileEnv struct to go away too.
* The value TCL_LOCATION_EVAL_LIST in the type field of a CmdFrame appears todgp2013-08-061-1/+1
| | | | | | | | | | exist only for the sake of taking great pains to make sure that pure list values remain pure list values. The value of pure list values is no longer what it once was. For a long long time now, any canonical list values have been equally good. This branch is Work In Progress eliminating the complication of the additional type value. Currently some minor botches are breaking execution tracing tests.
* Simplify AuxData access with a macro.dgp2013-07-271-0/+1
|
* Remove outdated, disabled code.dgp2013-07-231-503/+0
|
* merge trunkdgp2013-07-181-5/+1
|\
| * [Bug 1c17fbba5d] Fix -errorinfo from syntax errors so that the error isdgp2013-07-181-4/+1
| | | | | | not obscured. Instead highlight it by making it the last character quoted.
* | Factor out the call to a compileProc into one place used by both ensembledgp2013-07-171-34/+14
| | | | | | subcommand compiles and toplevel command compiles in TclCompileScript.
* | Streamline the housekeeping on the operands of INST_START_CMD.dgp2013-07-161-49/+32
| | | | | | For example, do only incr on success, not incr on attempt + decr on error.
* | Simplify the ensemble subcommand compile. There's no need to bedgp2013-07-161-1/+0
| | | | | | crafting synthetic Tcl_Parse and copying tokens. Some pointer shifts will do.
* | Simplify arguments to TclContinuationsEnterDerived().dgp2013-07-161-4/+2
| |
* | Eliminate the litInfo table and all the code tending to its care and feeding.dgp2013-07-161-43/+0
| | | | | | | | The pc -> command index mapping function it provided can be achieved using other data already in the ByteCode struct.
* | Build CompileBasicNArgCommand on top of TclCompileInvocation.dgp2013-07-151-3/+3
| |
* | Remove the (now unused) wlineat arguments.dgp2013-07-101-6/+2
| |
* | Revise the litInfo table so that it gets built later (in TclInitByteCodeObj)dgp2013-07-101-60/+19
| | | | | | from a simpler store of data that can unwind.
* | Tentative Work In Progress unwinding TIP 280 line information.dgp2013-07-091-10/+29
| |
* | Use the TokenAfter() macro.dgp2013-07-081-7/+5
| |
* | Use TIP 280 macros.dgp2013-07-081-4/+2
| |
* | Factor out compiling the Command literal.dgp2013-07-081-22/+19
| |
* | Plug memory leak; Break three compilation mechanisms into routines.dgp2013-07-081-196/+266
| |
* | Move TIP 280 and command extent housekeeping to the periphery.dgp2013-07-081-27/+27
| |
* | Defer expansion request detection as much as possible.dgp2013-07-081-13/+30
| |
* | Consolidate the StartExpanding() calls.dgp2013-07-081-7/+3
| |
* | The routines StartExpanding() and EnterCmdWordData() are orthogonal, so it'sdgp2013-07-081-4/+3
| | | | | | ok to reverse the order in which they are called.
* | merge trunkdgp2013-07-051-1/+2
|\ \ | |/
* | comment improvementsdgp2013-07-021-2/+20
| |
* | More Work In Progress.dgp2013-07-011-21/+34
| |
* | More elimination of error message litter to fix [Bug 20a81392ec].dgp2013-06-281-8/+0
| |
* | 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
|\ \ | |/
| * Replace always true test with assertion.dgp2013-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
|\ \ | |/
| * Make more use of the CompileTokens() macro.dgp2013-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.
* 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.
* | More use of simplifying macros.dgp2013-06-191-7/+6
| | | | | | Replace dynamic allocation with automatic storage on the call stack.
* | 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
| |
* | 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
| |