Tcl Source Code

Check-in [e4212fccc3]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:fix stack computations for lmap
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: e4212fccc3ad62ee96e255c5f3ad0ac2b293f4eb
User & Date: mig 2013-12-10 12:05:06
Context
2013-12-12
08:09
merge trunk check-in: 7bab51b334 user: dkf tags: dkf-bytecode-8.6-main
2013-12-11
16:46
simplification of the catch compiler and new test check-in: 62a51cdb45 user: mig tags: trunk
13:49
simplifying: drop early the evaled script check-in: 8ffaec97b7 user: mig tags: mig-catch-compiler
2013-12-10
12:07
fix INST_LMAP_COLLECT from trunk check-in: c70ff981e2 user: mig tags: mig-optimize
12:05
fix stack computations for lmap check-in: e4212fccc3 user: mig tags: trunk
11:38
new INST_LMAP_COLLECT, speeds up lmap and eliminates the need for a temp var check-in: 58ebb29700 user: mig tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to generic/tclCompile.c.

550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
	/* Initialize execution of a foreach loop. Operand is aux data index
	 * of the ForeachInfo structure for the foreach command. It pushes 2
	 * elements which hold runtime params for foreach_step, they are later
	 * dropped by foreach_end together with the value lists. */ 
    {"foreach_step",	  1,    0,         0,	{OPERAND_NONE}},
	/* "Step" or begin next iteration of foreach loop. */
    {"foreach_end",	  1,    0,         0,	{OPERAND_NONE}},
    {"lmap_collect",	  1,    0,         0,	{OPERAND_NONE}},

    {NULL, 0, 0, 0, {OPERAND_NONE}}
};

/*
 * Prototypes for procedures defined later in this file:
 */







|







550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
	/* Initialize execution of a foreach loop. Operand is aux data index
	 * of the ForeachInfo structure for the foreach command. It pushes 2
	 * elements which hold runtime params for foreach_step, they are later
	 * dropped by foreach_end together with the value lists. */ 
    {"foreach_step",	  1,    0,         0,	{OPERAND_NONE}},
	/* "Step" or begin next iteration of foreach loop. */
    {"foreach_end",	  1,    0,         0,	{OPERAND_NONE}},
    {"lmap_collect",	  1,   -1,         0,	{OPERAND_NONE}},

    {NULL, 0, 0, 0, {OPERAND_NONE}}
};

/*
 * Prototypes for procedures defined later in this file:
 */