[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