Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | reordering of TEBCdata fields, just for clarity |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | mig-alloc-reform |
Files: | files | file ages | folders |
SHA1: |
c98b86fea101ba18ccf94d73a98935f8 |
User & Date: | mig 2011-03-25 01:09:16 |
Context
2011-03-25
| ||
01:09 | normbench check-in: 6ec584b8df user: mig tags: mig-alloc-reform | |
01:09 | reordering of TEBCdata fields, just for clarity check-in: c98b86fea1 user: mig tags: mig-alloc-reform | |
2011-03-24
| ||
22:48 | only do the alloc-space maximization when needed check-in: dbff67cd44 user: mig tags: mig-alloc-reform | |
Changes
Changes to generic/tclExecute.c.
︙ | ︙ | |||
173 174 175 176 177 178 179 | /* -----------------------------------------*/ Tcl_Obj **tosPtr; const unsigned char *pc; /* These fields are used on return TO this */ int catchDepth; /* this level: they record the state when a */ int cleanup; /* new codePtr was received for NR */ Tcl_Obj *auxObjList; /* execution. */ int checkInterp; | < > | 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 | /* -----------------------------------------*/ Tcl_Obj **tosPtr; const unsigned char *pc; /* These fields are used on return TO this */ int catchDepth; /* this level: they record the state when a */ int cleanup; /* new codePtr was received for NR */ Tcl_Obj *auxObjList; /* execution. */ int checkInterp; unsigned int capacity; CmdFrame cmdFrame; void * stack[1]; /* Start of the actual combined catch and obj * stacks; the struct will be expanded as * necessary */ } TEBCdata; #define TEBC_YIELD() \ TD->tosPtr = tosPtr; \ |
︙ | ︙ | |||
1565 1566 1567 1568 1569 1570 1571 | * Make sure the catch stack is large enough to hold the maximum number of * catch commands that could ever be executing at the same time (this will * be no more than the exception range array's depth). Make sure the * execution stack is large enough to execute this ByteCode. */ TD = ckalloc(size); | < | < < > > | 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 | * Make sure the catch stack is large enough to hold the maximum number of * catch commands that could ever be executing at the same time (this will * be no more than the exception range array's depth). Make sure the * execution stack is large enough to execute this ByteCode. */ TD = ckalloc(size); TD->codePtr = codePtr; TD->tosPtr = initTosPtr; TD->pc = codePtr->codeStart; TD->catchDepth = -1; TD->cleanup = 0; TD->auxObjList = NULL; TD->checkInterp = 0; TD->capacity = codePtr->maxStackDepth; /* * TIP #280: Initialize the frame. Do not push it yet: it will be pushed * every time that we call out from this TD, popped when we return to it. */ bcFramePtr->type = ((codePtr->flags & TCL_BYTECODE_PRECOMPILED) |
︙ | ︙ |