summaryrefslogtreecommitdiffstats
path: root/generic/tclCompile.c
Commit message (Collapse)AuthorAgeFilesLines
* [4b61afd660] Allow [info frame] to record line info for substituted command ↵dgp2016-06-161-1/+3
|\ | | | | | | names.
| * [4b61afd660] Allow [info frame] to record line info for substituted command ↵dgp2016-06-161-1/+3
| |\ | | | | | | | | | names.
| | * Improve fix and add test.dgp2016-06-161-5/+2
| | |
| | * Corrects reported bug, but makes many tests fail. Something subtle aboutdgp2016-06-101-0/+4
| |/ | | | | | | what we should expect when recording the line of a command that isn't known until runtime.
| * [e711ffb458] Replace TclIsLocalScalar() (which does the wrong thing).... withdgp2014-12-091-2/+2
| | | | | | PushVarNameWord() (which doesn't) in the compiler for [dict lappend].
* | [ae38befcfb] Rewrite TclGetInnermostExceptionRange() for fewer iterations.dgp2016-03-171-11/+10
| |
* | Remove unused static function definitionjan.nijtmans2015-12-151-1/+0
| |
* | make some MODULE_SCOPE symbols staticjan.nijtmans2015-12-151-33/+0
| |
* | Eliminate AuxDataType table: since this table only contains 4 constant ↵jan.nijtmans2015-12-151-146/+10
| | | | | | | | entries, it is overkill to use a hash table for that.
* | Fix more problems with break and continue in for-step clauses.dkf2015-08-021-10/+11
| |
* | Fix Coverity CID 1251203: break vs continue in for-step clausedkf2015-08-011-1/+1
| |
* | Implement TIP 436: Improve TclOO isa Introspectiondkf2015-07-101-3/+3
|\ \
* | | Revert refcount changes that were not cosmetic.dgp2015-07-021-1/+1
| | | | | | | | | | | | | | | | | | Changing equality testing to inequality testing does more than make code prettier or clearer. It makes it less strict, and thus more tolerant of other bugs elsewhere. Such changes deserve separate consideration at least, not breezy entry in an otherwise "code cleanup" commit.
* | | Another round of refCount consistancy improvements.jan.nijtmans2015-07-021-6/+6
|/ /
* | Consistancy in refcount management.jan.nijtmans2015-06-301-2/+2
| |
* | Use twoPtrValue in stead of ptrAndLongRep for implementation of some ↵jan.nijtmans2015-06-301-9/+7
| | | | | | | | | | internal Obj types. On most platforms this doesn't make a difference, as (void *) and (long) generially have the same size. The only exception where it makes a difference is win64, as we can now store 64 bits in this field in stead of only 32 bits, exactly what the processor is optimized for.
* | Fix missing export of the "NewForeachInfoType" AuxData structure for ↵andreask2014-12-011-1/+2
| | | | | | | | tbcload/tclcompiler packages.
* | merge trunkKevin B Kenny2014-08-021-0/+13
|\ \
| * | [b43f2b49f7] New compilation strategy for lappend that allows multi-valuedkf2014-07-181-0/+13
| | | | | | | | | lappend to not have quadratic performance (through better reference management).
| * | make the printing of source much less inclined to be fazed by non-ASCII charsdkf2014-02-041-4/+22
| | |
* | | merge trunkdkf2014-02-031-2/+31
|\ \ \ | |/ /
| * | improve the disassemblydkf2014-02-021-1/+6
| | |
| * | Compile [string is] with character classes in a non-awful way. Needs more ↵dkf2014-01-291-0/+5
| | | | | | | | | | | | work to make resulting bytecode disassemble nicely.
| * | merge principal development branchdkf2014-01-251-2/+19
| |\ \
| | * | implementation of [yieldto] in bytecodedkf2014-01-211-0/+7
| | | |
| | * | added compilation for [nextto]dkf2014-01-191-2/+12
| | | |
| * | | extend [string is] to booleansdkf2014-01-131-0/+3
| | | |
| * | | a different approachdkf2014-01-101-0/+4
| |/ /
* | | merge trunkdkf2014-01-091-84/+359
|\ \ \ | |/ /
| * | merge main working branchdkf2013-12-301-565/+1201
| |\ \
| | * | implement [namespace origin] in bytecodedkf2013-12-301-0/+5
| | | |
| | * | allow generation by assemblerdkf2013-12-301-4/+4
| | | |
| | * | completed instruction implementationdkf2013-12-281-0/+4
| | | |
| | * | merge trunkdkf2013-12-231-10/+28
| | |\ \
| | | * | Added new tools for managing and verifying the stack depth during ↵mig2013-12-231-9/+25
| | | | | | | | | | | | | | | | | | | | compilation. Used it in some spots in the compiler and in TclCompileCatchCommand.
| | | * | Making the optimizer pluggable by extensions; please review for committing ↵mig2013-12-181-1/+3
| | | | | | | | | | | | | | | | | | | | to trunk
| | * | | merge trunk; document added instructionsdkf2013-12-121-11/+28
| | |\ \ \ | | | |/ /
| | * | | merge trunkdkf2013-12-121-0/+1
| | |\ \ \ | | | |/ /
| | | * | fix stack computations for lmapmig2013-12-101-1/+1
| | | | |
| | | * | new INST_LMAP_COLLECT, speeds up lmap and eliminates the need for a temp varmig2013-12-101-0/+1
| | | | |
| | * | | merge trunkdkf2013-12-061-0/+10
| | |\ \ \ | | | |/ /
| | | * | New compiler and bytecodes for foreach and lmap: 70% faster mig2013-12-051-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * speed as measured by http://wiki.tcl.tk/39021: runs in <1/3 the time * still need to adapt array-set to use this * assemble.test-16.5 or 16.6 bombs in a purify/symbols build (?) * removing the old opcodes would force recompilation of old .tbc files or adaptation of tbcload
| | | * | silence compiler warningdgp2013-10-231-1/+0
| | | | |
| | * | | Now do [string toupper], [string tolower] and [string totitle]. Only handles ↵dkf2013-10-291-0/+13
| | | | | | | | | | | | | | | | | | | | the no-indices case; that's the only case anyone actually commonly uses.
| | * | | General [concat] compilation.dkf2013-10-261-1/+5
| | | | |
| | * | | Change name of instruction to make way for future changes.dkf2013-10-261-5/+5
| | | | |
| | * | | merge fixes from trunkdkf2013-10-221-75/+63
| | |\ \ \ | | | |/ /
| | | * | Fix problems in for.testdkf2013-10-221-74/+62
| | | | |
| | | * | silence compiler warningsdgp2013-10-211-1/+1
| | | | |
| | * | | merge trunkdkf2013-10-201-6/+196
| | |\ \ \ | | | |/ /