[Vm-dev] [commit][2753] CogVM source as per VMMaker.oscog-eem.306.
commits at squeakvm.org
commits at squeakvm.org
Thu Jul 18 19:45:41 UTC 2013
Revision: 2753
Author: eliot
Date: 2013-07-18 12:45:39 -0700 (Thu, 18 Jul 2013)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.306.
Add an assertValidExecutionPointers to the front side of process switch.
Modified Paths:
--------------
branches/Cog/nscogsrc/vm/cogit.c
branches/Cog/nscogsrc/vm/cogit.h
branches/Cog/nscogsrc/vm/cogmethod.h
branches/Cog/nscogsrc/vm/cointerp.c
branches/Cog/nscogsrc/vm/cointerp.h
branches/Cog/nscogsrc/vm/gcc3x-cointerp.c
branches/Cog/nscogsrc/vm/interp.h
branches/Cog/nscogsrc/vm/vmCallback.h
branches/Cog/src/vm/cogit.c
branches/Cog/src/vm/cogit.h
branches/Cog/src/vm/cogmethod.h
branches/Cog/src/vm/cointerp.c
branches/Cog/src/vm/cointerp.h
branches/Cog/src/vm/cointerpmt.c
branches/Cog/src/vm/cointerpmt.h
branches/Cog/src/vm/gcc3x-cointerp.c
branches/Cog/src/vm/gcc3x-cointerpmt.c
branches/Cog/src/vm/interp.h
branches/Cog/src/vm/vmCallback.h
Property Changed:
----------------
branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
Modified: branches/Cog/nscogsrc/vm/cogit.c
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.c 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/nscogsrc/vm/cogit.c 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b
+ CCodeGenerator VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b
+ StackToRegisterMappingCogit VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
Modified: branches/Cog/nscogsrc/vm/cogit.h
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/nscogsrc/vm/cogit.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b
+ CCodeGenerator VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
Modified: branches/Cog/nscogsrc/vm/cogmethod.h
===================================================================
--- branches/Cog/nscogsrc/vm/cogmethod.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/nscogsrc/vm/cogmethod.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b
+ CCodeGenerator VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
typedef struct {
Modified: branches/Cog/nscogsrc/vm/cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.c 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/nscogsrc/vm/cointerp.c 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
from
- CoInterpreter VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CoInterpreter VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1976,7 +1976,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.304";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.306";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -52273,6 +52273,9 @@
sqInt aProcess;
sqInt index;
StackPage *lastUsedPage;
+ char *lifp;
+ usqInt lip;
+ char *lisp;
StackPage *lruOrFree;
sqInt newContext;
StackPage *newPage;
@@ -52313,6 +52316,11 @@
(GIV(stackPage)->headFP = GIV(framePointer));
(GIV(stackPage)->headSP = GIV(stackPointer));
assert(pageListIsWellFormed());
+ /* begin assertValidExecutionPointe:r:s: */
+ lip = GIV(instructionPointer);
+ lifp = GIV(framePointer);
+ lisp = GIV(stackPointer);
+ assertValidExecutionPointersimbarline(lip, lifp, lisp, !((((usqInt)(longAt(lifp + FoxMethod)))) < (startOfMemory())), __LINE__);
sched = longAt(((longAt((GIV(specialObjectsOop) + BaseHeaderSize) + (SchedulerAssociation << ShiftForWord))) + BaseHeaderSize) + (ValueIndex << ShiftForWord));
oldProc = longAt((sched + BaseHeaderSize) + (ActiveProcessIndex << ShiftForWord));
/* begin ensureFrameIsMarried:SP: */
@@ -52420,12 +52428,12 @@
: 0);
}
- /* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(((usqInt)(longAt(GIV(stackPointer)))), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
/* begin popStack */
top = longAt(GIV(stackPointer));
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
+ /* begin assertValidExecutionPointe:r:s: */
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
sqInt
Modified: branches/Cog/nscogsrc/vm/cointerp.h
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/nscogsrc/vm/cointerp.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
Modified: branches/Cog/nscogsrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/gcc3x-cointerp.c 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/nscogsrc/vm/gcc3x-cointerp.c 2013-07-18 19:45:39 UTC (rev 2753)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
from
- CoInterpreter VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CoInterpreter VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1979,7 +1979,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.304";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.306";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -52282,6 +52282,9 @@
sqInt aProcess;
sqInt index;
StackPage *lastUsedPage;
+ char *lifp;
+ usqInt lip;
+ char *lisp;
StackPage *lruOrFree;
sqInt newContext;
StackPage *newPage;
@@ -52322,6 +52325,11 @@
(GIV(stackPage)->headFP = GIV(framePointer));
(GIV(stackPage)->headSP = GIV(stackPointer));
assert(pageListIsWellFormed());
+ /* begin assertValidExecutionPointe:r:s: */
+ lip = GIV(instructionPointer);
+ lifp = GIV(framePointer);
+ lisp = GIV(stackPointer);
+ assertValidExecutionPointersimbarline(lip, lifp, lisp, !((((usqInt)(longAt(lifp + FoxMethod)))) < (startOfMemory())), __LINE__);
sched = longAt(((longAt((GIV(specialObjectsOop) + BaseHeaderSize) + (SchedulerAssociation << ShiftForWord))) + BaseHeaderSize) + (ValueIndex << ShiftForWord));
oldProc = longAt((sched + BaseHeaderSize) + (ActiveProcessIndex << ShiftForWord));
/* begin ensureFrameIsMarried:SP: */
@@ -52429,12 +52437,12 @@
: 0);
}
- /* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(((usqInt)(longAt(GIV(stackPointer)))), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
/* begin popStack */
top = longAt(GIV(stackPointer));
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
+ /* begin assertValidExecutionPointe:r:s: */
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
sqInt
Modified: branches/Cog/nscogsrc/vm/interp.h
===================================================================
--- branches/Cog/nscogsrc/vm/interp.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/nscogsrc/vm/interp.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
#define VM_PROXY_MAJOR 1
Modified: branches/Cog/nscogsrc/vm/vmCallback.h
===================================================================
--- branches/Cog/nscogsrc/vm/vmCallback.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/nscogsrc/vm/vmCallback.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
#define VM_CALLBACK_INC 1
Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
- Wed Jul 17 14:15:47 PDT 2013
+ Thu Jul 18 12:44:57 PDT 2013
Modified: branches/Cog/src/vm/cogit.c
===================================================================
--- branches/Cog/src/vm/cogit.c 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/cogit.c 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b
+ CCodeGenerator VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b
+ StackToRegisterMappingCogit VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
Modified: branches/Cog/src/vm/cogit.h
===================================================================
--- branches/Cog/src/vm/cogit.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/cogit.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b
+ CCodeGenerator VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
Modified: branches/Cog/src/vm/cogmethod.h
===================================================================
--- branches/Cog/src/vm/cogmethod.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/cogmethod.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.305 uuid: ca4b6f0d-e113-4cd5-b859-527f897bd29b
+ CCodeGenerator VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
typedef struct {
Modified: branches/Cog/src/vm/cointerp.c
===================================================================
--- branches/Cog/src/vm/cointerp.c 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/cointerp.c 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
from
- CoInterpreter VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CoInterpreter VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1966,7 +1966,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.304]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.306]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -47704,6 +47704,9 @@
sqInt aProcess;
sqInt index;
StackPage *lastUsedPage;
+ char *lifp;
+ usqInt lip;
+ char *lisp;
StackPage *lruOrFree;
sqInt newContext;
StackPage *newPage;
@@ -47744,6 +47747,11 @@
(GIV(stackPage)->headFP = GIV(framePointer));
(GIV(stackPage)->headSP = GIV(stackPointer));
assert(pageListIsWellFormed());
+ /* begin assertValidExecutionPointe:r:s: */
+ lip = GIV(instructionPointer);
+ lifp = GIV(framePointer);
+ lisp = GIV(stackPointer);
+ assertValidExecutionPointersimbarline(lip, lifp, lisp, !((((usqInt)(longAt(lifp + FoxMethod)))) < (startOfMemory())), __LINE__);
sched = longAt(((longAt((GIV(specialObjectsOop) + BaseHeaderSize) + (SchedulerAssociation << ShiftForWord))) + BaseHeaderSize) + (ValueIndex << ShiftForWord));
oldProc = longAt((sched + BaseHeaderSize) + (ActiveProcessIndex << ShiftForWord));
/* begin ensureFrameIsMarried:SP: */
@@ -47848,12 +47856,12 @@
assert(isOopCompiledMethod(GIV(method)));
}
- /* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(((usqInt)(longAt(GIV(stackPointer)))), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
/* begin popStack */
top = longAt(GIV(stackPointer));
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
+ /* begin assertValidExecutionPointe:r:s: */
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
sqInt
Modified: branches/Cog/src/vm/cointerp.h
===================================================================
--- branches/Cog/src/vm/cointerp.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/cointerp.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
Modified: branches/Cog/src/vm/cointerpmt.c
===================================================================
--- branches/Cog/src/vm/cointerpmt.c 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/cointerpmt.c 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
from
- CoInterpreterMT VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CoInterpreterMT VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
-static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2065,7 +2065,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.304]";
+const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.306]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
sqInt willNotThreadWarnCount;
@@ -17041,7 +17041,8 @@
}
-/* Set stackPage, framePointer and stackPointer for the suspendedContext of
+/* Set stackPage, instructionPointer, framePointer and stackPointer for the
+ suspendedContext of
aProcess, marrying the context if necessary, and niling the
suspendedContext slot. This is used
on process switch to ensure a context has a stack frame and so can
@@ -17058,6 +17059,7 @@
StackPage *newPage;
char *theFrame;
StackPage *thePage;
+ sqInt top;
sqInt value;
newContext = longAt((aProcess + BaseHeaderSize) + (SuspendedContextIndex << ShiftForWord));
@@ -17136,8 +17138,12 @@
assert(isOopCompiledMethod(GIV(method)));
}
+ /* begin popStack */
+ top = longAt(GIV(stackPointer));
+ GIV(stackPointer) += BytesPerWord;
+ GIV(instructionPointer) = ((sqInt) top);
/* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(((usqInt)(longAt(GIV(stackPointer)))), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
@@ -26030,7 +26036,6 @@
sqInt sched;
sqInt threadId;
sqInt threadIndex;
- sqInt top;
CogVMThread *vmThread;
CogVMThread *vmThread1;
@@ -26165,10 +26170,6 @@
/* begin initPrimCall */
GIV(primFailCode) = 0;
externalSetStackPageAndPointersForSuspendedContextOfProcess(myProc);
- /* begin popStack */
- top = longAt(GIV(stackPointer));
- GIV(stackPointer) += BytesPerWord;
- GIV(instructionPointer) = ((sqInt) top);
if (((vmThread->inMachineCode))
&& (GIV(instructionPointer) >= (startOfMemory()))) {
/* begin iframeSavedIP:put: */
@@ -49293,7 +49294,6 @@
sqInt oop;
sqInt ownerIndex;
sqInt threadId;
- sqInt top;
do {
assert(((vmThread->state)) == CTMAssignableOrInVM);
@@ -49360,10 +49360,6 @@
assert((fetchPointerofObject(MyListIndex, activeProcess())) == (nilObject()));
if ((longAt((activeProc + BaseHeaderSize) + (SuspendedContextIndex << ShiftForWord))) != GIV(nilObj)) {
externalSetStackPageAndPointersForSuspendedContextOfProcess(activeProc);
- /* begin popStack */
- top = longAt(GIV(stackPointer));
- GIV(stackPointer) += BytesPerWord;
- GIV(instructionPointer) = ((sqInt) top);
}
enterSmalltalkExecutive();
}
@@ -49487,7 +49483,6 @@
char *sp;
char *theFP;
char *theSP;
- sqInt top;
CogVMThread *vmThread;
GIV(statProcessSwitch) += 1;
@@ -49555,10 +49550,6 @@
longAtput((newProc + BaseHeaderSize) + (MyListIndex << ShiftForWord), GIV(nilObj));
threadSwitchIfNecessaryfrom(newProc, sourceCode);
externalSetStackPageAndPointersForSuspendedContextOfProcess(newProc);
- /* begin popStack */
- top = longAt(GIV(stackPointer));
- GIV(stackPointer) += BytesPerWord;
- GIV(instructionPointer) = ((sqInt) top);
}
sqInt
Modified: branches/Cog/src/vm/cointerpmt.h
===================================================================
--- branches/Cog/src/vm/cointerpmt.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/cointerpmt.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
Modified: branches/Cog/src/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/src/vm/gcc3x-cointerp.c 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/gcc3x-cointerp.c 2013-07-18 19:45:39 UTC (rev 2753)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
from
- CoInterpreter VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CoInterpreter VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1969,7 +1969,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.304]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.306]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -47713,6 +47713,9 @@
sqInt aProcess;
sqInt index;
StackPage *lastUsedPage;
+ char *lifp;
+ usqInt lip;
+ char *lisp;
StackPage *lruOrFree;
sqInt newContext;
StackPage *newPage;
@@ -47753,6 +47756,11 @@
(GIV(stackPage)->headFP = GIV(framePointer));
(GIV(stackPage)->headSP = GIV(stackPointer));
assert(pageListIsWellFormed());
+ /* begin assertValidExecutionPointe:r:s: */
+ lip = GIV(instructionPointer);
+ lifp = GIV(framePointer);
+ lisp = GIV(stackPointer);
+ assertValidExecutionPointersimbarline(lip, lifp, lisp, !((((usqInt)(longAt(lifp + FoxMethod)))) < (startOfMemory())), __LINE__);
sched = longAt(((longAt((GIV(specialObjectsOop) + BaseHeaderSize) + (SchedulerAssociation << ShiftForWord))) + BaseHeaderSize) + (ValueIndex << ShiftForWord));
oldProc = longAt((sched + BaseHeaderSize) + (ActiveProcessIndex << ShiftForWord));
/* begin ensureFrameIsMarried:SP: */
@@ -47857,12 +47865,12 @@
assert(isOopCompiledMethod(GIV(method)));
}
- /* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(((usqInt)(longAt(GIV(stackPointer)))), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
/* begin popStack */
top = longAt(GIV(stackPointer));
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
+ /* begin assertValidExecutionPointe:r:s: */
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
sqInt
Modified: branches/Cog/src/vm/gcc3x-cointerpmt.c
===================================================================
--- branches/Cog/src/vm/gcc3x-cointerpmt.c 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/gcc3x-cointerpmt.c 2013-07-18 19:45:39 UTC (rev 2753)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
from
- CoInterpreterMT VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CoInterpreterMT VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
-static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2068,7 +2068,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.304]";
+const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.306]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
sqInt willNotThreadWarnCount;
@@ -17050,7 +17050,8 @@
}
-/* Set stackPage, framePointer and stackPointer for the suspendedContext of
+/* Set stackPage, instructionPointer, framePointer and stackPointer for the
+ suspendedContext of
aProcess, marrying the context if necessary, and niling the
suspendedContext slot. This is used
on process switch to ensure a context has a stack frame and so can
@@ -17067,6 +17068,7 @@
StackPage *newPage;
char *theFrame;
StackPage *thePage;
+ sqInt top;
sqInt value;
newContext = longAt((aProcess + BaseHeaderSize) + (SuspendedContextIndex << ShiftForWord));
@@ -17145,8 +17147,12 @@
assert(isOopCompiledMethod(GIV(method)));
}
+ /* begin popStack */
+ top = longAt(GIV(stackPointer));
+ GIV(stackPointer) += BytesPerWord;
+ GIV(instructionPointer) = ((sqInt) top);
/* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(((usqInt)(longAt(GIV(stackPointer)))), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
@@ -26039,7 +26045,6 @@
sqInt sched;
sqInt threadId;
sqInt threadIndex;
- sqInt top;
CogVMThread *vmThread;
CogVMThread *vmThread1;
@@ -26174,10 +26179,6 @@
/* begin initPrimCall */
GIV(primFailCode) = 0;
externalSetStackPageAndPointersForSuspendedContextOfProcess(myProc);
- /* begin popStack */
- top = longAt(GIV(stackPointer));
- GIV(stackPointer) += BytesPerWord;
- GIV(instructionPointer) = ((sqInt) top);
if (((vmThread->inMachineCode))
&& (GIV(instructionPointer) >= (startOfMemory()))) {
/* begin iframeSavedIP:put: */
@@ -49302,7 +49303,6 @@
sqInt oop;
sqInt ownerIndex;
sqInt threadId;
- sqInt top;
do {
assert(((vmThread->state)) == CTMAssignableOrInVM);
@@ -49369,10 +49369,6 @@
assert((fetchPointerofObject(MyListIndex, activeProcess())) == (nilObject()));
if ((longAt((activeProc + BaseHeaderSize) + (SuspendedContextIndex << ShiftForWord))) != GIV(nilObj)) {
externalSetStackPageAndPointersForSuspendedContextOfProcess(activeProc);
- /* begin popStack */
- top = longAt(GIV(stackPointer));
- GIV(stackPointer) += BytesPerWord;
- GIV(instructionPointer) = ((sqInt) top);
}
enterSmalltalkExecutive();
}
@@ -49496,7 +49492,6 @@
char *sp;
char *theFP;
char *theSP;
- sqInt top;
CogVMThread *vmThread;
GIV(statProcessSwitch) += 1;
@@ -49564,10 +49559,6 @@
longAtput((newProc + BaseHeaderSize) + (MyListIndex << ShiftForWord), GIV(nilObj));
threadSwitchIfNecessaryfrom(newProc, sourceCode);
externalSetStackPageAndPointersForSuspendedContextOfProcess(newProc);
- /* begin popStack */
- top = longAt(GIV(stackPointer));
- GIV(stackPointer) += BytesPerWord;
- GIV(instructionPointer) = ((sqInt) top);
}
sqInt
Modified: branches/Cog/src/vm/interp.h
===================================================================
--- branches/Cog/src/vm/interp.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/interp.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
#define VM_PROXY_MAJOR 1
Modified: branches/Cog/src/vm/vmCallback.h
===================================================================
--- branches/Cog/src/vm/vmCallback.h 2013-07-17 21:17:03 UTC (rev 2752)
+++ branches/Cog/src/vm/vmCallback.h 2013-07-18 19:45:39 UTC (rev 2753)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.304 uuid: 79d06b10-06eb-49bc-a33a-a36bd68ab3c2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.306 uuid: ef4dab92-e348-4081-8041-92ae24d73bea
*/
#define VM_CALLBACK_INC 1
More information about the Vm-dev
mailing list