[Vm-dev] [commit][2851] CogVM source as per VMMaker.oscog-eem.591

commits at squeakvm.org commits at squeakvm.org
Fri Jan 24 21:07:38 UTC 2014


Revision: 2851
Author:   eliot
Date:     2014-01-24 13:07:34 -0800 (Fri, 24 Jan 2014)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.591

Fix the regression in CoInterpreter>>validInstructionPointer:inMethod:framePointer:
by accepting an instruction pointer pointing just before the first
bytecode in StackInterpreter>>validInstructionPointer:inMethod:framePointer:
and reverting CoInterpreter's method. This affects only debug and assert VMs.

Modified Paths:
--------------
    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/spursrc/vm/cointerp.c
    branches/Cog/spursrc/vm/cointerp.h
    branches/Cog/spursrc/vm/gcc3x-cointerp.c
    branches/Cog/spursrc/vm/interp.h
    branches/Cog/spursrc/vm/vmCallback.h
    branches/Cog/spurstacksrc/vm/gcc3x-interp.c
    branches/Cog/spurstacksrc/vm/interp.c
    branches/Cog/spurstacksrc/vm/interp.h
    branches/Cog/spurstacksrc/vm/vmCallback.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
    branches/Cog/stacksrc/vm/gcc3x-interp.c
    branches/Cog/stacksrc/vm/interp.c
    branches/Cog/stacksrc/vm/interp.h
    branches/Cog/stacksrc/vm/vmCallback.h

Property Changed:
----------------
    branches/Cog/platforms/Cross/vm/sqSCCSVersion.h

Modified: branches/Cog/nscogsrc/vm/cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/nscogsrc/vm/cointerp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2029,7 +2029,7 @@
 	/* 574 */ (void (*)(void))0,
 	/* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.590";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.591";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -54208,7 +54208,7 @@
 		theInstrPointer = longAt(fp + FoxIFSavedIP);
 	}
 	else {
-		theInstrPointer = instrPointer + 1;
+		theInstrPointer = instrPointer;
 		if ((((usqInt)(longAt(fp + FoxMethod)))) < (startOfMemory())) {
 			/* begin mframeHomeMethod: */
 			methodField = longAt(fp + FoxMethod);
@@ -54229,13 +54229,13 @@
 			(methodHeader = (isCogMethodReference(methodHeader1)
 					? ((((CogMethod *) methodHeader1))->methodHeader)
 					: methodHeader1)),
-			(theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+			(theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 				 && ((theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + BaseHeaderSize) - 1))
 				 && (!(((((sqInt) methodHeader)) < 0)
 		 && ((methodHeader & (65536 << SmallIntegerShift))
-		 && (theInstrPointer < (((((aMethod + BaseHeaderSize) - 1) + (lastPointerOf(aMethod))) + (((((sqInt) methodHeader)) < 0
+		 && (theInstrPointer < ((((aMethod + BytesPerOop) - 1) + (lastPointerOf(aMethod))) + (((((sqInt) methodHeader)) < 0
 				? 3
-				: 0))) - 1)))))));
+				: 0)))))))));
 }
 
 

Modified: branches/Cog/nscogsrc/vm/cointerp.h
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/nscogsrc/vm/cointerp.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 

Modified: branches/Cog/nscogsrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/gcc3x-cointerp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/nscogsrc/vm/gcc3x-cointerp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2032,7 +2032,7 @@
 	/* 574 */ (void (*)(void))0,
 	/* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.590";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.591";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -54217,7 +54217,7 @@
 		theInstrPointer = longAt(fp + FoxIFSavedIP);
 	}
 	else {
-		theInstrPointer = instrPointer + 1;
+		theInstrPointer = instrPointer;
 		if ((((usqInt)(longAt(fp + FoxMethod)))) < (startOfMemory())) {
 			/* begin mframeHomeMethod: */
 			methodField = longAt(fp + FoxMethod);
@@ -54238,13 +54238,13 @@
 			(methodHeader = (isCogMethodReference(methodHeader1)
 					? ((((CogMethod *) methodHeader1))->methodHeader)
 					: methodHeader1)),
-			(theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+			(theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 				 && ((theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + BaseHeaderSize) - 1))
 				 && (!(((((sqInt) methodHeader)) < 0)
 		 && ((methodHeader & (65536 << SmallIntegerShift))
-		 && (theInstrPointer < (((((aMethod + BaseHeaderSize) - 1) + (lastPointerOf(aMethod))) + (((((sqInt) methodHeader)) < 0
+		 && (theInstrPointer < ((((aMethod + BytesPerOop) - 1) + (lastPointerOf(aMethod))) + (((((sqInt) methodHeader)) < 0
 				? 3
-				: 0))) - 1)))))));
+				: 0)))))))));
 }
 
 

Modified: branches/Cog/nscogsrc/vm/interp.h
===================================================================
--- branches/Cog/nscogsrc/vm/interp.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/nscogsrc/vm/interp.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/nscogsrc/vm/vmCallback.h
===================================================================
--- branches/Cog/nscogsrc/vm/vmCallback.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/nscogsrc/vm/vmCallback.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_CALLBACK_INC 1


Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
   - Thu Jan 23 11:23:59 PST 2014
   + Fri Jan 24 13:06:26 PST 2014

Modified: branches/Cog/spursrc/vm/cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/cointerp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/spursrc/vm/cointerp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2168,7 +2168,7 @@
 	/* 575 */ (void (*)(void))0,
  0 };
 usqInt heapBase;
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.591]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -5358,6 +5358,7 @@
 							GIV(framePointer) = localFP;
 							
 							ceEnterCogCodePopReceiverReg();
+							null;
 							goto l142;
 						}
 						localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -5372,7 +5373,7 @@
 					/* begin fetchNextBytecode */
 					currentBytecode = byteAtPointer(++localIP);
 
-					/* return self */
+					null;
 				l142:	/* end baseFrameReturn */;
 					goto l139;
 				}
@@ -57926,7 +57927,7 @@
 		theInstrPointer = longAt(fp + FoxIFSavedIP);
 	}
 	else {
-		theInstrPointer = instrPointer + 1;
+		theInstrPointer = instrPointer;
 		header = longAt((aMethod + (BaseHeaderSize)) + (HeaderIndex << 2));
 		if ((isCogMethodReference(header))
 		 && (theInstrPointer < (startOfMemory()))) {
@@ -57936,7 +57937,7 @@
 		}
 
 	}
-	return (theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+	return (theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1));
 }
 

Modified: branches/Cog/spursrc/vm/cointerp.h
===================================================================
--- branches/Cog/spursrc/vm/cointerp.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/spursrc/vm/cointerp.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 

Modified: branches/Cog/spursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/gcc3x-cointerp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/spursrc/vm/gcc3x-cointerp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2171,7 +2171,7 @@
 	/* 575 */ (void (*)(void))0,
  0 };
 usqInt heapBase;
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.591]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -5367,6 +5367,7 @@
 							GIV(framePointer) = localFP;
 							
 							ceEnterCogCodePopReceiverReg();
+							null;
 							goto l142;
 						}
 						localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -5381,7 +5382,7 @@
 					/* begin fetchNextBytecode */
 					currentBytecode = byteAtPointer(++localIP);
 
-					/* return self */
+					null;
 				l142:	/* end baseFrameReturn */;
 					goto l139;
 				}
@@ -57935,7 +57936,7 @@
 		theInstrPointer = longAt(fp + FoxIFSavedIP);
 	}
 	else {
-		theInstrPointer = instrPointer + 1;
+		theInstrPointer = instrPointer;
 		header = longAt((aMethod + (BaseHeaderSize)) + (HeaderIndex << 2));
 		if ((isCogMethodReference(header))
 		 && (theInstrPointer < (startOfMemory()))) {
@@ -57945,7 +57946,7 @@
 		}
 
 	}
-	return (theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+	return (theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1));
 }
 

Modified: branches/Cog/spursrc/vm/interp.h
===================================================================
--- branches/Cog/spursrc/vm/interp.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/spursrc/vm/interp.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/spursrc/vm/vmCallback.h
===================================================================
--- branches/Cog/spursrc/vm/vmCallback.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/spursrc/vm/vmCallback.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_CALLBACK_INC 1

Modified: branches/Cog/spurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/spurstacksrc/vm/gcc3x-interp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/spurstacksrc/vm/gcc3x-interp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	StackInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	StackInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1969,7 +1969,7 @@
  0 };
 char * breakSelector;
 sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.591]";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -51081,7 +51081,7 @@
 {
     sqInt methodHeader;
 
-	return (theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+	return (theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1));
 }
 

Modified: branches/Cog/spurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/spurstacksrc/vm/interp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/spurstacksrc/vm/interp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	StackInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	StackInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1966,7 +1966,7 @@
  0 };
 char * breakSelector;
 sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.591]";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -51072,7 +51072,7 @@
 {
     sqInt methodHeader;
 
-	return (theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+	return (theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1));
 }
 

Modified: branches/Cog/spurstacksrc/vm/interp.h
===================================================================
--- branches/Cog/spurstacksrc/vm/interp.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/spurstacksrc/vm/interp.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/spurstacksrc/vm/vmCallback.h
===================================================================
--- branches/Cog/spurstacksrc/vm/vmCallback.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/spurstacksrc/vm/vmCallback.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_CALLBACK_INC 1

Modified: branches/Cog/src/vm/cointerp.c
===================================================================
--- branches/Cog/src/vm/cointerp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/src/vm/cointerp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1134,7 +1134,7 @@
 static void rewriteMethodCacheEntryForExternalPrimitiveToFunction(void (*localPrimAddress)(void));
 static sqInt roomToPushNArgs(sqInt n);
 static void runLeakCheckerForFullGC(sqInt fullGCFlag);
-static sqInt safeObjectAfter(sqInt oop);
+static usqInt safeObjectAfter(sqInt oop);
 static sqInt safePrintStringOf(sqInt oop);
 usqInt scavengeThresholdAddress(void);
 EXPORT(sqInt) sendInvokeCallbackContext(VMCallbackContext *vmCallbackContext);
@@ -2019,7 +2019,7 @@
 	/* 574 */ (void (*)(void))0,
 	/* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.591]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -4711,6 +4711,7 @@
 							GIV(framePointer) = localFP;
 							
 							ceEnterCogCodePopReceiverReg();
+							null;
 							goto l158;
 						}
 						localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -4725,7 +4726,7 @@
 					/* begin fetchNextBytecode */
 					currentBytecode = byteAtPointer(++localIP);
 
-					/* return self */
+					null;
 				l158:	/* end baseFrameReturn */;
 					goto l155;
 				}
@@ -19175,17 +19176,15 @@
     sqInt header1;
     sqInt header2;
     sqInt header3;
-    sqInt header4;
     usqInt lastWord;
     sqInt newFreeChunk;
     sqInt newOop;
-    sqInt next;
+    usqInt next;
     sqInt oop;
     sqInt realHeader;
     sqInt sz;
     sqInt sz1;
     sqInt sz2;
-    sqInt sz3;
     sqInt target;
     usqInt w;
 
@@ -19196,21 +19195,7 @@
 		/* begin objectAfterWhileForwarding: */
 		header2 = longAt(oop);
 		if ((header2 & MarkBit) == 0) {
-			/* begin objectAfter: */
-			if (!(asserta(oopisLessThan(oop, GIV(freeStart))))) {
-				error("no objects after the end of memory");
-			}
-			if (((longAt(oop)) & TypeMask) == HeaderTypeFree) {
-				sz2 = (longAt(oop)) & AllButTypeMask;
-			}
-			else {
-				/* begin sizeBitsOf: */
-				header3 = longAt(oop);
-				sz2 = ((header3 & TypeMask) == HeaderTypeSizeAndClass
-					? (longAt(oop - (BytesPerWord * 2))) & LongSizeMask
-					: header3 & SizeMask);
-			}
-			next = (oop + sz2) + (headerTypeBytes[(longAt(oop + sz2)) & TypeMask]);
+			next = ((sqInt) (objectAfter(oop)));
 			goto l1;
 		}
 		fwdBlock1 = (header2 & AllButMarkBitAndTypeMask) << 1;
@@ -19225,7 +19210,7 @@
 		else {
 			sz1 = realHeader & SizeMask;
 		}
-		next = (oop + sz1) + (headerTypeBytes[(longAt(oop + sz1)) & TypeMask]);
+		next = ((sqInt) ((oop + sz1) + (headerTypeBytes[(longAt(oop + sz1)) & TypeMask])));
 	l1:	/* end objectAfterWhileForwarding: */;
 		if (!(((longAt(oop)) & TypeMask) == HeaderTypeFree)) {
 
@@ -19279,18 +19264,18 @@
 	}
 	/* begin safeObjectAfter: */
 	if (((longAt(newFreeChunk)) & TypeMask) == HeaderTypeFree) {
-		sz3 = (longAt(newFreeChunk)) & AllButTypeMask;
+		sz2 = (longAt(newFreeChunk)) & AllButTypeMask;
 	}
 	else {
 		/* begin sizeBitsOf: */
-		header4 = longAt(newFreeChunk);
-		sz3 = ((header4 & TypeMask) == HeaderTypeSizeAndClass
+		header3 = longAt(newFreeChunk);
+		sz2 = ((header3 & TypeMask) == HeaderTypeSizeAndClass
 			? (longAt(newFreeChunk - (BytesPerWord * 2))) & LongSizeMask
-			: header4 & SizeMask);
+			: header3 & SizeMask);
 	}
-	next = ((newFreeChunk + sz3) >= GIV(freeStart)
+	next = ((newFreeChunk + sz2) >= GIV(freeStart)
 		? GIV(freeStart)
-		: (newFreeChunk + sz3) + (headerTypeBytes[(longAt(newFreeChunk + sz3)) & TypeMask]));
+		: (newFreeChunk + sz2) + (headerTypeBytes[(longAt(newFreeChunk + sz2)) & TypeMask]));
 	assert((next == GIV(freeStart))
 	 || (next == (oopFromChunk(GIV(compEnd)))));
 	if (next == GIV(freeStart)) {
@@ -45323,7 +45308,7 @@
 	given object or free chunk in memory. Return freeStart when
 	enumeration is complete. This is for assertion checking only. */
 
-static sqInt
+static usqInt
 safeObjectAfter(sqInt oop)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
     sqInt header;
@@ -49471,7 +49456,7 @@
 		theInstrPointer = longAt(fp + FoxIFSavedIP);
 	}
 	else {
-		theInstrPointer = instrPointer + 1;
+		theInstrPointer = instrPointer;
 		header = longAt((aMethod + BaseHeaderSize) + (HeaderIndex << ShiftForWord));
 		if ((isCogMethodReference(header))
 		 && (theInstrPointer < (startOfMemory()))) {
@@ -49481,7 +49466,7 @@
 		}
 
 	}
-	return (theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+	return (theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1));
 }
 

Modified: branches/Cog/src/vm/cointerp.h
===================================================================
--- branches/Cog/src/vm/cointerp.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/src/vm/cointerp.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 

Modified: branches/Cog/src/vm/cointerpmt.c
===================================================================
--- branches/Cog/src/vm/cointerpmt.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/src/vm/cointerpmt.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	CoInterpreterMT VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CoInterpreterMT VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2117,7 +2117,7 @@
 	/* 574 */ (void (*)(void))0,
 	/* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.591]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 sqInt willNotThreadWarnCount;
@@ -51209,7 +51209,7 @@
 		theInstrPointer = longAt(fp + FoxIFSavedIP);
 	}
 	else {
-		theInstrPointer = instrPointer + 1;
+		theInstrPointer = instrPointer;
 		header = longAt((aMethod + BaseHeaderSize) + (HeaderIndex << ShiftForWord));
 		if ((isCogMethodReference(header))
 		 && (theInstrPointer < (startOfMemory()))) {
@@ -51219,7 +51219,7 @@
 		}
 
 	}
-	return (theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+	return (theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1));
 }
 

Modified: branches/Cog/src/vm/cointerpmt.h
===================================================================
--- branches/Cog/src/vm/cointerpmt.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/src/vm/cointerpmt.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 

Modified: branches/Cog/src/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/src/vm/gcc3x-cointerp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/src/vm/gcc3x-cointerp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1137,7 +1137,7 @@
 static void rewriteMethodCacheEntryForExternalPrimitiveToFunction(void (*localPrimAddress)(void));
 static sqInt roomToPushNArgs(sqInt n);
 static void runLeakCheckerForFullGC(sqInt fullGCFlag);
-static sqInt safeObjectAfter(sqInt oop);
+static usqInt safeObjectAfter(sqInt oop);
 static sqInt safePrintStringOf(sqInt oop);
 usqInt scavengeThresholdAddress(void);
 EXPORT(sqInt) sendInvokeCallbackContext(VMCallbackContext *vmCallbackContext);
@@ -2022,7 +2022,7 @@
 	/* 574 */ (void (*)(void))0,
 	/* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.591]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -4720,6 +4720,7 @@
 							GIV(framePointer) = localFP;
 							
 							ceEnterCogCodePopReceiverReg();
+							null;
 							goto l158;
 						}
 						localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -4734,7 +4735,7 @@
 					/* begin fetchNextBytecode */
 					currentBytecode = byteAtPointer(++localIP);
 
-					/* return self */
+					null;
 				l158:	/* end baseFrameReturn */;
 					goto l155;
 				}
@@ -19184,17 +19185,15 @@
     sqInt header1;
     sqInt header2;
     sqInt header3;
-    sqInt header4;
     usqInt lastWord;
     sqInt newFreeChunk;
     sqInt newOop;
-    sqInt next;
+    usqInt next;
     sqInt oop;
     sqInt realHeader;
     sqInt sz;
     sqInt sz1;
     sqInt sz2;
-    sqInt sz3;
     sqInt target;
     usqInt w;
 
@@ -19205,21 +19204,7 @@
 		/* begin objectAfterWhileForwarding: */
 		header2 = longAt(oop);
 		if ((header2 & MarkBit) == 0) {
-			/* begin objectAfter: */
-			if (!(asserta(oopisLessThan(oop, GIV(freeStart))))) {
-				error("no objects after the end of memory");
-			}
-			if (((longAt(oop)) & TypeMask) == HeaderTypeFree) {
-				sz2 = (longAt(oop)) & AllButTypeMask;
-			}
-			else {
-				/* begin sizeBitsOf: */
-				header3 = longAt(oop);
-				sz2 = ((header3 & TypeMask) == HeaderTypeSizeAndClass
-					? (longAt(oop - (BytesPerWord * 2))) & LongSizeMask
-					: header3 & SizeMask);
-			}
-			next = (oop + sz2) + (headerTypeBytes[(longAt(oop + sz2)) & TypeMask]);
+			next = ((sqInt) (objectAfter(oop)));
 			goto l1;
 		}
 		fwdBlock1 = (header2 & AllButMarkBitAndTypeMask) << 1;
@@ -19234,7 +19219,7 @@
 		else {
 			sz1 = realHeader & SizeMask;
 		}
-		next = (oop + sz1) + (headerTypeBytes[(longAt(oop + sz1)) & TypeMask]);
+		next = ((sqInt) ((oop + sz1) + (headerTypeBytes[(longAt(oop + sz1)) & TypeMask])));
 	l1:	/* end objectAfterWhileForwarding: */;
 		if (!(((longAt(oop)) & TypeMask) == HeaderTypeFree)) {
 
@@ -19288,18 +19273,18 @@
 	}
 	/* begin safeObjectAfter: */
 	if (((longAt(newFreeChunk)) & TypeMask) == HeaderTypeFree) {
-		sz3 = (longAt(newFreeChunk)) & AllButTypeMask;
+		sz2 = (longAt(newFreeChunk)) & AllButTypeMask;
 	}
 	else {
 		/* begin sizeBitsOf: */
-		header4 = longAt(newFreeChunk);
-		sz3 = ((header4 & TypeMask) == HeaderTypeSizeAndClass
+		header3 = longAt(newFreeChunk);
+		sz2 = ((header3 & TypeMask) == HeaderTypeSizeAndClass
 			? (longAt(newFreeChunk - (BytesPerWord * 2))) & LongSizeMask
-			: header4 & SizeMask);
+			: header3 & SizeMask);
 	}
-	next = ((newFreeChunk + sz3) >= GIV(freeStart)
+	next = ((newFreeChunk + sz2) >= GIV(freeStart)
 		? GIV(freeStart)
-		: (newFreeChunk + sz3) + (headerTypeBytes[(longAt(newFreeChunk + sz3)) & TypeMask]));
+		: (newFreeChunk + sz2) + (headerTypeBytes[(longAt(newFreeChunk + sz2)) & TypeMask]));
 	assert((next == GIV(freeStart))
 	 || (next == (oopFromChunk(GIV(compEnd)))));
 	if (next == GIV(freeStart)) {
@@ -45332,7 +45317,7 @@
 	given object or free chunk in memory. Return freeStart when
 	enumeration is complete. This is for assertion checking only. */
 
-static sqInt
+static usqInt
 safeObjectAfter(sqInt oop)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
     sqInt header;
@@ -49480,7 +49465,7 @@
 		theInstrPointer = longAt(fp + FoxIFSavedIP);
 	}
 	else {
-		theInstrPointer = instrPointer + 1;
+		theInstrPointer = instrPointer;
 		header = longAt((aMethod + BaseHeaderSize) + (HeaderIndex << ShiftForWord));
 		if ((isCogMethodReference(header))
 		 && (theInstrPointer < (startOfMemory()))) {
@@ -49490,7 +49475,7 @@
 		}
 
 	}
-	return (theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+	return (theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1));
 }
 

Modified: branches/Cog/src/vm/gcc3x-cointerpmt.c
===================================================================
--- branches/Cog/src/vm/gcc3x-cointerpmt.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/src/vm/gcc3x-cointerpmt.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	CoInterpreterMT VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CoInterpreterMT VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2120,7 +2120,7 @@
 	/* 574 */ (void (*)(void))0,
 	/* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.591]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 sqInt willNotThreadWarnCount;
@@ -51218,7 +51218,7 @@
 		theInstrPointer = longAt(fp + FoxIFSavedIP);
 	}
 	else {
-		theInstrPointer = instrPointer + 1;
+		theInstrPointer = instrPointer;
 		header = longAt((aMethod + BaseHeaderSize) + (HeaderIndex << ShiftForWord));
 		if ((isCogMethodReference(header))
 		 && (theInstrPointer < (startOfMemory()))) {
@@ -51228,7 +51228,7 @@
 		}
 
 	}
-	return (theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+	return (theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1));
 }
 

Modified: branches/Cog/src/vm/interp.h
===================================================================
--- branches/Cog/src/vm/interp.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/src/vm/interp.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/src/vm/vmCallback.h
===================================================================
--- branches/Cog/src/vm/vmCallback.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/src/vm/vmCallback.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_CALLBACK_INC 1

Modified: branches/Cog/stacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/stacksrc/vm/gcc3x-interp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/stacksrc/vm/gcc3x-interp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	StackInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	StackInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1808,7 +1808,7 @@
  0 };
 char * breakSelector;
 sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.591]";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -44801,15 +44801,15 @@
 			/* -1 for pre-increment in fetchNextBytecode */
 		
 		(methodHeader = longAt((aMethod + BaseHeaderSize) + (HeaderIndex << ShiftForWord))),
-			(theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+			(theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 				 && ((theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + BaseHeaderSize) - 1))
 				 && (!(((((sqInt) methodHeader)) < 0)
 		 && ((methodHeader & (65536 << SmallIntegerShift))
-		 && (theInstrPointer < (((((aMethod + BaseHeaderSize) - 1) + (lastPointerOf(aMethod))) + (((((sqInt) methodHeader)) < 0
+		 && (theInstrPointer < ((((aMethod + BytesPerOop) - 1) + (lastPointerOf(aMethod))) + (((((sqInt) methodHeader)) < 0
 				? 3
-				: 0))) - 1)))))))
+				: 0)))))))))
 #  else /* MULTIPLEBYTECODESETS */
-		(theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+		(theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1))
 #  endif /* MULTIPLEBYTECODESETS */
 		;

Modified: branches/Cog/stacksrc/vm/interp.c
===================================================================
--- branches/Cog/stacksrc/vm/interp.c	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/stacksrc/vm/interp.c	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
    from
-	StackInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	StackInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416 " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1805,7 +1805,7 @@
  0 };
 char * breakSelector;
 sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.590]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.591]";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -44792,15 +44792,15 @@
 			/* -1 for pre-increment in fetchNextBytecode */
 		
 		(methodHeader = longAt((aMethod + BaseHeaderSize) + (HeaderIndex << ShiftForWord))),
-			(theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+			(theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 				 && ((theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + BaseHeaderSize) - 1))
 				 && (!(((((sqInt) methodHeader)) < 0)
 		 && ((methodHeader & (65536 << SmallIntegerShift))
-		 && (theInstrPointer < (((((aMethod + BaseHeaderSize) - 1) + (lastPointerOf(aMethod))) + (((((sqInt) methodHeader)) < 0
+		 && (theInstrPointer < ((((aMethod + BytesPerOop) - 1) + (lastPointerOf(aMethod))) + (((((sqInt) methodHeader)) < 0
 				? 3
-				: 0))) - 1)))))))
+				: 0)))))))))
 #  else /* MULTIPLEBYTECODESETS */
-		(theInstrPointer >= ((aMethod + (lastPointerOf(aMethod))) + BytesPerOop))
+		(theInstrPointer >= (((aMethod + (lastPointerOf(aMethod))) + BytesPerOop) - 1))
 			 && (theInstrPointer < (((aMethod + (byteLengthOf(aMethod))) + (BaseHeaderSize)) - 1))
 #  endif /* MULTIPLEBYTECODESETS */
 		;

Modified: branches/Cog/stacksrc/vm/interp.h
===================================================================
--- branches/Cog/stacksrc/vm/interp.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/stacksrc/vm/interp.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/stacksrc/vm/vmCallback.h
===================================================================
--- branches/Cog/stacksrc/vm/vmCallback.h	2014-01-23 19:24:54 UTC (rev 2850)
+++ branches/Cog/stacksrc/vm/vmCallback.h	2014-01-24 21:07:34 UTC (rev 2851)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.591 uuid: 2f605da3-babd-4f62-a19e-085c28cca416
  */
 
 #define VM_CALLBACK_INC 1



More information about the Vm-dev mailing list