summaryrefslogtreecommitdiffstats
path: root/generic/tclAssembly.c
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2014-07-18 12:18:44 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2014-07-18 12:18:44 (GMT)
commit1bd8f407a5fc44a8b7a54bb78d8d29a2e5b0358f (patch)
tree7890c00992d3108408334969e5732ec921ecca15 /generic/tclAssembly.c
parent0cb480df70afc69c2a1637894dddd3f0b4e6d351 (diff)
downloadtcl-1bd8f407a5fc44a8b7a54bb78d8d29a2e5b0358f.zip
tcl-1bd8f407a5fc44a8b7a54bb78d8d29a2e5b0358f.tar.gz
tcl-1bd8f407a5fc44a8b7a54bb78d8d29a2e5b0358f.tar.bz2
[b43f2b49f7] New compilation strategy for lappend that allows multi-value
lappend to not have quadratic performance (through better reference management).
Diffstat (limited to 'generic/tclAssembly.c')
-rw-r--r--generic/tclAssembly.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/generic/tclAssembly.c b/generic/tclAssembly.c
index d1866c8..6d5676b 100644
--- a/generic/tclAssembly.c
+++ b/generic/tclAssembly.c
@@ -410,6 +410,10 @@ static const TalInstDesc TalInstructionTable[] = {
{"lappendArray", ASSEM_LVT, (INST_LAPPEND_ARRAY1<<8
| INST_LAPPEND_ARRAY4),2, 1},
{"lappendArrayStk", ASSEM_1BYTE, INST_LAPPEND_ARRAY_STK, 3, 1},
+ {"lappendList", ASSEM_LVT4, INST_LAPPEND_LIST, 1, 1},
+ {"lappendListArray",ASSEM_LVT4, INST_LAPPEND_LIST_ARRAY,2, 1},
+ {"lappendListArrayStk", ASSEM_1BYTE,INST_LAPPEND_LIST_ARRAY_STK, 3, 1},
+ {"lappendListStk", ASSEM_1BYTE, INST_LAPPEND_LIST_STK, 2, 1},
{"lappendStk", ASSEM_1BYTE, INST_LAPPEND_STK, 2, 1},
{"le", ASSEM_1BYTE, INST_LE, 2, 1},
{"lindexMulti", ASSEM_LINDEX_MULTI,