[Vm-dev] [commit][3573] CogVM source as per VMMaker.oscog-eem.1670

commits at squeakvm.org commits at squeakvm.org
Mon Jan 25 05:51:28 UTC 2016


Revision: 3573
Author:   eliot
Date:     2016-01-24 21:51:28 -0800 (Sun, 24 Jan 2016)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.1670

Spur: Maintain the survivor count on scavenge (seems cost free).
Nuke the special mark count variable; it's always zero anyway.

Modified Paths:
--------------
    branches/Cog/nsspur64src/vm/cogit.h
    branches/Cog/nsspur64src/vm/cointerp.c
    branches/Cog/nsspur64src/vm/cointerp.h
    branches/Cog/nsspur64src/vm/gcc3x-cointerp.c
    branches/Cog/nsspursrc/vm/cogit.h
    branches/Cog/nsspursrc/vm/cointerp.c
    branches/Cog/nsspursrc/vm/cointerp.h
    branches/Cog/nsspursrc/vm/gcc3x-cointerp.c
    branches/Cog/nsspurstack64src/vm/gcc3x-interp.c
    branches/Cog/nsspurstack64src/vm/interp.c
    branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c
    branches/Cog/nsspurstacksrc/vm/interp.c
    branches/Cog/spur64src/vm/cogit.h
    branches/Cog/spur64src/vm/cointerp.c
    branches/Cog/spur64src/vm/cointerp.h
    branches/Cog/spur64src/vm/gcc3x-cointerp.c
    branches/Cog/spursistasrc/vm/cogit.h
    branches/Cog/spursistasrc/vm/cointerp.c
    branches/Cog/spursistasrc/vm/cointerp.h
    branches/Cog/spursistasrc/vm/gcc3x-cointerp.c
    branches/Cog/spursrc/vm/cogit.h
    branches/Cog/spursrc/vm/cointerp.c
    branches/Cog/spursrc/vm/cointerp.h
    branches/Cog/spursrc/vm/gcc3x-cointerp.c
    branches/Cog/spurstack64src/vm/gcc3x-interp.c
    branches/Cog/spurstack64src/vm/interp.c
    branches/Cog/spurstacksrc/vm/gcc3x-interp.c
    branches/Cog/spurstacksrc/vm/interp.c

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

Modified: branches/Cog/nsspur64src/vm/cogit.h
===================================================================
--- branches/Cog/nsspur64src/vm/cogit.h	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspur64src/vm/cogit.h	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGenerator VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
 
 

Modified: branches/Cog/nsspur64src/vm/cointerp.c
===================================================================
--- branches/Cog/nsspur64src/vm/cointerp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspur64src/vm/cointerp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1707,6 +1707,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1757,8 +1758,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss long nsMethodCache[NSMethodCacheSize + 1 /* 4097 */];
@@ -2431,7 +2430,7 @@
 /*560*/	-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
 	};
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1668";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1670";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
 volatile int sendTrace;
 
@@ -43940,6 +43939,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -49691,6 +49693,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -61251,7 +61254,7 @@
     usqInt prevFree;
     usqInt prevFreeChunk;
     usqInt prevPrevFree;
-    usqInt prevPrevFreeChunk;
+    sqInt prevPrevFreeChunk;
     sqInt slotBytes;
     sqInt slotBytes1;
     usqInt there;
@@ -66616,7 +66619,7 @@
 bridgeFromto(SpurSegmentInfo *aSegment, SpurSegmentInfo *nextSegmentOrNil)
 {
     usqInt bridgeSpan;
-    usqInt clifton;
+    sqInt clifton;
     usqInt segEnd;
 
 	segEnd = ((aSegment->segSize)) + ((aSegment->segStart));
@@ -66859,7 +66862,7 @@
     sqInt limit;
     sqInt newEndOfMemory;
     sqInt next;
-    sqInt node;
+    usqInt node;
     usqInt numSlots;
     usqInt numSlots1;
     SpurSegmentInfo *seg;
@@ -83782,7 +83785,7 @@
 		longAtput((result + BaseHeaderSize) + (35LL << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), ((GIV(statSpecialMarkCount) << 3) | 1));
+		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), (((sqInt)0 << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37LL << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1));
@@ -84116,7 +84119,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 3) | 1);
+			result = (((sqInt)0 << 3) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1);

Modified: branches/Cog/nsspur64src/vm/cointerp.h
===================================================================
--- branches/Cog/nsspur64src/vm/cointerp.h	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspur64src/vm/cointerp.h	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
 
 

Modified: branches/Cog/nsspur64src/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nsspur64src/vm/gcc3x-cointerp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspur64src/vm/gcc3x-cointerp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1710,6 +1710,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1760,8 +1761,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss long nsMethodCache[NSMethodCacheSize + 1 /* 4097 */];
@@ -2434,7 +2433,7 @@
 /*560*/	-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
 	};
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1668";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1670";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
 volatile int sendTrace;
 
@@ -43949,6 +43948,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -49700,6 +49702,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -61260,7 +61263,7 @@
     usqInt prevFree;
     usqInt prevFreeChunk;
     usqInt prevPrevFree;
-    usqInt prevPrevFreeChunk;
+    sqInt prevPrevFreeChunk;
     sqInt slotBytes;
     sqInt slotBytes1;
     usqInt there;
@@ -66625,7 +66628,7 @@
 bridgeFromto(SpurSegmentInfo *aSegment, SpurSegmentInfo *nextSegmentOrNil)
 {
     usqInt bridgeSpan;
-    usqInt clifton;
+    sqInt clifton;
     usqInt segEnd;
 
 	segEnd = ((aSegment->segSize)) + ((aSegment->segStart));
@@ -66868,7 +66871,7 @@
     sqInt limit;
     sqInt newEndOfMemory;
     sqInt next;
-    sqInt node;
+    usqInt node;
     usqInt numSlots;
     usqInt numSlots1;
     SpurSegmentInfo *seg;
@@ -83791,7 +83794,7 @@
 		longAtput((result + BaseHeaderSize) + (35LL << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), ((GIV(statSpecialMarkCount) << 3) | 1));
+		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), (((sqInt)0 << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37LL << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1));
@@ -84125,7 +84128,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 3) | 1);
+			result = (((sqInt)0 << 3) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1);

Modified: branches/Cog/nsspursrc/vm/cogit.h
===================================================================
--- branches/Cog/nsspursrc/vm/cogit.h	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspursrc/vm/cogit.h	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGenerator VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
 
 

Modified: branches/Cog/nsspursrc/vm/cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspursrc/vm/cointerp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1676,6 +1676,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1726,8 +1727,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss long nsMethodCache[NSMethodCacheSize + 1 /* 4097 */];
@@ -2400,7 +2399,7 @@
 /*560*/	-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
 	};
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1668";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1670";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
 volatile int sendTrace;
 
@@ -43196,6 +43195,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -48961,6 +48963,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -60342,7 +60345,7 @@
     usqInt prevFree;
     usqInt prevFreeChunk;
     usqInt prevPrevFree;
-    usqInt prevPrevFreeChunk;
+    sqInt prevPrevFreeChunk;
     sqInt slotBytes;
     sqInt slotBytes1;
     usqInt there;
@@ -65691,7 +65694,7 @@
 bridgeFromto(SpurSegmentInfo *aSegment, SpurSegmentInfo *nextSegmentOrNil)
 {
     usqInt bridgeSpan;
-    usqInt clifton;
+    sqInt clifton;
     usqInt segEnd;
 
 	segEnd = ((aSegment->segSize)) + ((aSegment->segStart));
@@ -66063,7 +66066,7 @@
 static sqInt NoDbgRegParms
 readHeapFromImageFiledataBytes(sqImageFile f, sqInt numBytes)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
-    sqInt bridge;
+    usqInt bridge;
     usqInt bridgehead;
     usqInt bridgeSpan;
     sqInt bytesRead;
@@ -66278,7 +66281,7 @@
     usqLong firstSavedBridgeWord;
     sqInt nWritten;
     usqInt pier1;
-    usqInt pier2;
+    sqInt pier2;
     usqLong secondSavedBridgeWord;
 
 	pier1 = (((segment->segSize)) + ((segment->segStart))) - (2 * BaseHeaderSize);
@@ -83244,7 +83247,7 @@
 		longAtput((result + BaseHeaderSize) + (35 << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((GIV(statSpecialMarkCount) << 1) | 1));
+		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((0 << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37 << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1));
@@ -83578,7 +83581,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 1) | 1);
+			result = ((0 << 1) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1);

Modified: branches/Cog/nsspursrc/vm/cointerp.h
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.h	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspursrc/vm/cointerp.h	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
 
 

Modified: branches/Cog/nsspursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/gcc3x-cointerp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspursrc/vm/gcc3x-cointerp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1679,6 +1679,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1729,8 +1730,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss long nsMethodCache[NSMethodCacheSize + 1 /* 4097 */];
@@ -2403,7 +2402,7 @@
 /*560*/	-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
 	};
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1668";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1670";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
 volatile int sendTrace;
 
@@ -43205,6 +43204,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -48970,6 +48972,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -60351,7 +60354,7 @@
     usqInt prevFree;
     usqInt prevFreeChunk;
     usqInt prevPrevFree;
-    usqInt prevPrevFreeChunk;
+    sqInt prevPrevFreeChunk;
     sqInt slotBytes;
     sqInt slotBytes1;
     usqInt there;
@@ -65700,7 +65703,7 @@
 bridgeFromto(SpurSegmentInfo *aSegment, SpurSegmentInfo *nextSegmentOrNil)
 {
     usqInt bridgeSpan;
-    usqInt clifton;
+    sqInt clifton;
     usqInt segEnd;
 
 	segEnd = ((aSegment->segSize)) + ((aSegment->segStart));
@@ -66072,7 +66075,7 @@
 static sqInt NoDbgRegParms
 readHeapFromImageFiledataBytes(sqImageFile f, sqInt numBytes)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
-    sqInt bridge;
+    usqInt bridge;
     usqInt bridgehead;
     usqInt bridgeSpan;
     sqInt bytesRead;
@@ -66287,7 +66290,7 @@
     usqLong firstSavedBridgeWord;
     sqInt nWritten;
     usqInt pier1;
-    usqInt pier2;
+    sqInt pier2;
     usqLong secondSavedBridgeWord;
 
 	pier1 = (((segment->segSize)) + ((segment->segStart))) - (2 * BaseHeaderSize);
@@ -83253,7 +83256,7 @@
 		longAtput((result + BaseHeaderSize) + (35 << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((GIV(statSpecialMarkCount) << 1) | 1));
+		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((0 << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37 << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1));
@@ -83587,7 +83590,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 1) | 1);
+			result = ((0 << 1) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1);

Modified: branches/Cog/nsspurstack64src/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/nsspurstack64src/vm/gcc3x-interp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspurstack64src/vm/gcc3x-interp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	StackInterpreter VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae
+	StackInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1495,6 +1495,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1541,8 +1542,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss sqInt theUnknownShort;
@@ -2177,7 +2176,7 @@
 	/* 575 */ (void (*)(void))0,
  0 };
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1669";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1670";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -30602,6 +30601,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -36440,6 +36442,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -74318,7 +74321,7 @@
 		longAtput((result + BaseHeaderSize) + (35LL << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), ((GIV(statSpecialMarkCount) << 3) | 1));
+		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), (((sqInt)0 << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37LL << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1));
@@ -74645,7 +74648,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 3) | 1);
+			result = (((sqInt)0 << 3) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1);

Modified: branches/Cog/nsspurstack64src/vm/interp.c
===================================================================
--- branches/Cog/nsspurstack64src/vm/interp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspurstack64src/vm/interp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	StackInterpreter VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae
+	StackInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1492,6 +1492,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1538,8 +1539,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss sqInt theUnknownShort;
@@ -2174,7 +2173,7 @@
 	/* 575 */ (void (*)(void))0,
  0 };
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1669";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1670";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -30593,6 +30592,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -36431,6 +36433,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -74309,7 +74312,7 @@
 		longAtput((result + BaseHeaderSize) + (35LL << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), ((GIV(statSpecialMarkCount) << 3) | 1));
+		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), (((sqInt)0 << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37LL << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1));
@@ -74636,7 +74639,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 3) | 1);
+			result = (((sqInt)0 << 3) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1);

Modified: branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	StackInterpreter VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae
+	StackInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1465,6 +1465,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1511,8 +1512,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss sqInt theUnknownShort;
@@ -2147,7 +2146,7 @@
 	/* 575 */ (void (*)(void))0,
  0 };
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1669";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1670";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -29498,6 +29497,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -35350,6 +35352,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -73885,7 +73888,7 @@
 		longAtput((result + BaseHeaderSize) + (35 << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((GIV(statSpecialMarkCount) << 1) | 1));
+		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((0 << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37 << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1));
@@ -74212,7 +74215,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 1) | 1);
+			result = ((0 << 1) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1);

Modified: branches/Cog/nsspurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/interp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/nsspurstacksrc/vm/interp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	StackInterpreter VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae
+	StackInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1669 uuid: fb59e89d-14ad-4bad-a231-40f2d4f05dae " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1462,6 +1462,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1508,8 +1509,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss sqInt theUnknownShort;
@@ -2144,7 +2143,7 @@
 	/* 575 */ (void (*)(void))0,
  0 };
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1669";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1670";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -29489,6 +29488,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -35341,6 +35343,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -73876,7 +73879,7 @@
 		longAtput((result + BaseHeaderSize) + (35 << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((GIV(statSpecialMarkCount) << 1) | 1));
+		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((0 << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37 << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1));
@@ -74203,7 +74206,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 1) | 1);
+			result = ((0 << 1) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1);


Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
   - Sun Jan 24 20:17:37 PST 2016
   + Sun Jan 24 21:50:56 PST 2016

Modified: branches/Cog/spur64src/vm/cogit.h
===================================================================
--- branches/Cog/spur64src/vm/cogit.h	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/spur64src/vm/cogit.h	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGenerator VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
 
 

Modified: branches/Cog/spur64src/vm/cointerp.c
===================================================================
--- branches/Cog/spur64src/vm/cointerp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/spur64src/vm/cointerp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1669,6 +1669,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1720,8 +1721,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss long methodCache[MethodCacheSize + 1 /* 4097 */];
@@ -2394,7 +2393,7 @@
 /*560*/	-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
 	};
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Croquet Closure Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-eem.1668]";
+const char *interpreterVersion = "Croquet Closure Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-eem.1670]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
 volatile int sendTrace;
 
@@ -13315,7 +13314,7 @@
 static sqInt
 checkForAndFollowForwardedPrimitiveState(void)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
-    signed char accessorDepth;
+    sqInt accessorDepth;
     sqInt firstBytecode;
     sqInt found;
     sqInt found1;
@@ -39190,6 +39189,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -44941,6 +44943,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -62218,7 +62221,7 @@
 static sqInt NoDbgRegParms
 readHeapFromImageFiledataBytes(sqImageFile f, sqInt numBytes)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
-    sqInt bridge;
+    usqInt bridge;
     usqInt bridgehead;
     usqLong bridgeSpan;
     sqInt bytesRead;
@@ -78152,7 +78155,7 @@
 		longAtput((result + BaseHeaderSize) + (35LL << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), ((GIV(statSpecialMarkCount) << 3) | 1));
+		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), (((sqInt)0 << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37LL << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1));
@@ -78486,7 +78489,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 3) | 1);
+			result = (((sqInt)0 << 3) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1);

Modified: branches/Cog/spur64src/vm/cointerp.h
===================================================================
--- branches/Cog/spur64src/vm/cointerp.h	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/spur64src/vm/cointerp.h	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
 
 

Modified: branches/Cog/spur64src/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spur64src/vm/gcc3x-cointerp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/spur64src/vm/gcc3x-cointerp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1672,6 +1672,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1723,8 +1724,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss long methodCache[MethodCacheSize + 1 /* 4097 */];
@@ -2397,7 +2396,7 @@
 /*560*/	-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
 	};
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Croquet Closure Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-eem.1668]";
+const char *interpreterVersion = "Croquet Closure Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-eem.1670]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
 volatile int sendTrace;
 
@@ -13324,7 +13323,7 @@
 static sqInt
 checkForAndFollowForwardedPrimitiveState(void)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
-    signed char accessorDepth;
+    sqInt accessorDepth;
     sqInt firstBytecode;
     sqInt found;
     sqInt found1;
@@ -39199,6 +39198,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -44950,6 +44952,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -62227,7 +62230,7 @@
 static sqInt NoDbgRegParms
 readHeapFromImageFiledataBytes(sqImageFile f, sqInt numBytes)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
-    sqInt bridge;
+    usqInt bridge;
     usqInt bridgehead;
     usqLong bridgeSpan;
     sqInt bytesRead;
@@ -78161,7 +78164,7 @@
 		longAtput((result + BaseHeaderSize) + (35LL << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), ((GIV(statSpecialMarkCount) << 3) | 1));
+		longAtput((result + BaseHeaderSize) + (36LL << (shiftForWord())), (((sqInt)0 << 3) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37LL << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1));
@@ -78495,7 +78498,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 3) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 3) | 1);
+			result = (((sqInt)0 << 3) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 3) | 1);

Modified: branches/Cog/spursistasrc/vm/cogit.h
===================================================================
--- branches/Cog/spursistasrc/vm/cogit.h	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/spursistasrc/vm/cogit.h	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGenerator VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
 
 

Modified: branches/Cog/spursistasrc/vm/cointerp.c
===================================================================
--- branches/Cog/spursistasrc/vm/cointerp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/spursistasrc/vm/cointerp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1651,6 +1651,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1702,8 +1703,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss long methodCache[MethodCacheSize + 1 /* 4097 */];
@@ -2376,7 +2375,7 @@
 /*560*/	-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
 	};
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Croquet Closure Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-eem.1668]";
+const char *interpreterVersion = "Croquet Closure Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-eem.1670]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
 volatile int sendTrace;
 
@@ -41836,6 +41835,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -47601,6 +47603,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -64588,7 +64591,7 @@
     sqInt limit;
     sqInt newEndOfMemory;
     sqInt next;
-    usqInt node;
+    sqInt node;
     usqInt numSlots;
     usqInt numSlots1;
     SpurSegmentInfo *seg;
@@ -64932,7 +64935,7 @@
     usqLong firstSavedBridgeWord;
     sqInt nWritten;
     usqInt pier1;
-    usqInt pier2;
+    sqInt pier2;
     usqLong secondSavedBridgeWord;
 
 	pier1 = (((segment->segSize)) + ((segment->segStart))) - (2 * BaseHeaderSize);
@@ -81027,7 +81030,7 @@
 		longAtput((result + BaseHeaderSize) + (35 << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((GIV(statSpecialMarkCount) << 1) | 1));
+		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((0 << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
 		longAtput((result + BaseHeaderSize) + (37 << (shiftForWord())), ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1));
@@ -81361,7 +81364,7 @@
 			result = ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1);
 		}
 		if (arg == 37) {
-			result = ((GIV(statSpecialMarkCount) << 1) | 1);
+			result = ((0 << 1) | 1);
 		}
 		if (arg == 38) {
 			result = ((((GIV(statIGCDeltaUsecs) + 500) / 1000) << 1) | 1);

Modified: branches/Cog/spursistasrc/vm/cointerp.h
===================================================================
--- branches/Cog/spursistasrc/vm/cointerp.h	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/spursistasrc/vm/cointerp.h	2016-01-25 05:51:28 UTC (rev 3573)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
 
 

Modified: branches/Cog/spursistasrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spursistasrc/vm/gcc3x-cointerp.c	2016-01-25 04:18:14 UTC (rev 3572)
+++ branches/Cog/spursistasrc/vm/gcc3x-cointerp.c	2016-01-25 05:51:28 UTC (rev 3573)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
-	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
    from
-	CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14
+	CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1668 uuid: 1f0b27be-e423-42d3-a18d-1c7e292a4f14 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1670 uuid: 6ba2dd3d-ab44-468e-9184-1c85580f980b " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1654,6 +1654,7 @@
 _iss usqInt memory;
 _iss sqInt numCompactionPasses;
 _iss sqInt scavengeInProgress;
+_iss sqInt statSurvivorCount;
 _iss sqInt fullScreenFlag;
 _iss float heapGrowthToSizeGCRatio;
 _iss usqInt heapSizeAtPreviousGC;
@@ -1705,8 +1706,6 @@
 _iss sqInt statPendingFinalizationSignals;
 _iss sqInt statRootTableOverflows;
 _iss usqLong statSGCDeltaUsecs;
-_iss sqInt statSpecialMarkCount;
-_iss sqInt statSurvivorCount;
 _iss sqInt tenuringClassIndex;
 _iss sqInt the2ndUnknownShort;
 _iss long methodCache[MethodCacheSize + 1 /* 4097 */];
@@ -2379,7 +2378,7 @@
 /*560*/	-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
 	};
 char expensiveAsserts = 0;
-const char *interpreterVersion = "Croquet Closure Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-eem.1668]";
+const char *interpreterVersion = "Croquet Closure Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-eem.1670]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
 volatile int sendTrace;
 
@@ -41845,6 +41844,9 @@
 	}
 	else {
 		/* begin copyToFutureSpace:bytes: */
+
+		/* we hope writes are cheap... */
+		GIV(statSurvivorCount) += 1;
 		assert((GIV(futureSurvivorStart) + bytesInObj) <= ((GIV(futureSpace).limit)));
 		startOfSurvivor = ((byteAt(survivor + 7)) == (numSlotsMask())
 			? survivor - BaseHeaderSize
@@ -47610,6 +47612,7 @@
 
 	GIV(scavengeInProgress) = 1;
 	/* begin scavenge: */
+	GIV(statSurvivorCount) = 0;
 	GIV(tenureCriterion) = tenuringCriterion;
 	/* begin strategizeToLimitRememberedTable */
 	if ((GIV(tenureCriterion) == TenureByAge)
@@ -64597,7 +64600,7 @@
     sqInt limit;
     sqInt newEndOfMemory;
     sqInt next;
-    usqInt node;
+    sqInt node;
     usqInt numSlots;
     usqInt numSlots1;
     SpurSegmentInfo *seg;
@@ -64941,7 +64944,7 @@
     usqLong firstSavedBridgeWord;
     sqInt nWritten;
     usqInt pier1;
-    usqInt pier2;
+    sqInt pier2;
     usqLong secondSavedBridgeWord;
 
 	pier1 = (((segment->segSize)) + ((segment->segStart))) - (2 * BaseHeaderSize);
@@ -81036,7 +81039,7 @@
 		longAtput((result + BaseHeaderSize) + (35 << (shiftForWord())), ((((GIV(statGCEndUsecs) / 1000) & MillisecondClockMask) << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));
-		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((GIV(statSpecialMarkCount) << 1) | 1));
+		longAtput((result + BaseHeaderSize) + (36 << (shiftForWord())), ((0 << 1) | 1));
 		/* begin storePointerUnchecked:ofObject:withValue: */
 		assert(!(isForwarded(result)));

@@ Diff output truncated at 50000 characters. @@


More information about the Vm-dev mailing list