[Vm-dev] [commit][3083] CogVM source as per VMMaker.oscog-eem.886
commits at squeakvm.org
commits at squeakvm.org
Thu Sep 25 23:02:28 UTC 2014
Revision: 3083
Author: eliot
Date: 2014-09-25 16:02:22 -0700 (Thu, 25 Sep 2014)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.886
Fix regression in V# become youngReferrers management in VMMaker.oscog-eem.882.
We /must/ prune young referrers if mapObjectReferencesInMachineCodeForBecome
removes a cog method from youngReferrers because it may get added back and
youngReferrers cannot contain duplicates.
Commit this separate from VMMaker.oscog-eem.885 to have it separate from the
flush caches on Spur become changes from VMMaker.oscog-eem.883/884.
To be clear, this is a branch. The head is 885.
Modified Paths:
--------------
branches/Cog/nscogsrc/vm/cogit.c
branches/Cog/nscogsrc/vm/cogit.h
branches/Cog/nscogsrc/vm/cointerp.c
branches/Cog/nscogsrc/vm/cointerp.h
branches/Cog/nscogsrc/vm/gcc3x-cointerp.c
branches/Cog/nsspursrc/vm/cogit.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/nsspurstacksrc/vm/gcc3x-interp.c
branches/Cog/nsspurstacksrc/vm/interp.c
branches/Cog/sistasrc/vm/cogit.c
branches/Cog/sistasrc/vm/cogit.h
branches/Cog/sistasrc/vm/cointerp.c
branches/Cog/sistasrc/vm/cointerp.h
branches/Cog/sistasrc/vm/gcc3x-cointerp.c
branches/Cog/spursistasrc/vm/cogit.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.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/spurstacksrc/vm/gcc3x-interp.c
branches/Cog/spurstacksrc/vm/interp.c
branches/Cog/src/vm/cogit.c
branches/Cog/src/vm/cogit.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/stacksrc/vm/gcc3x-interp.c
branches/Cog/stacksrc/vm/interp.c
Property Changed:
----------------
branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
Modified: branches/Cog/nscogsrc/vm/cogit.c
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nscogsrc/vm/cogit.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ StackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -12115,6 +12115,7 @@
}
cogMethod = ((CogMethod *) (roundUpLength((((sqInt)cogMethod)) + ((cogMethod->blockSize)))));
}
+ pruneYoungReferrers();
if (freedPIC) {
unlinkSendsToFree();
}
@@ -12552,7 +12553,7 @@
{
sqInt *address;
sqInt *address1;
- sqInt cacheAddress;
+ usqInt cacheAddress;
sqInt cacheTag;
sqInt cacheTag1;
sqInt cacheTagMarked;
@@ -12722,7 +12723,7 @@
static sqInt
markYoungObjectspcmethod(sqInt annotation, char *mcpc, sqInt cogMethod)
{
- sqInt cacheAddress;
+ usqInt cacheAddress;
sqInt cacheTag;
sqInt cacheTag1;
sqInt class;
@@ -13813,7 +13814,7 @@
static sqInt
remapIfObjectRefpchasYoung(sqInt annotation, char *mcpc, sqInt hasYoungPtr)
{
- sqInt cacheAddress;
+ usqInt cacheAddress;
sqInt cacheTag;
sqInt cacheTag1;
sqInt entryPoint;
@@ -14582,7 +14583,7 @@
static void
voidImplicitReceiverCacheAt(sqInt mcpc)
{
- sqInt cacheAddress;
+ usqInt cacheAddress;
assert(NumOopsPerIRC == 2);
cacheAddress = (((usqInt)mcpc)) + (jumpShortByteSize(backEnd));
Modified: branches/Cog/nscogsrc/vm/cogit.h
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nscogsrc/vm/cogit.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/nscogsrc/vm/cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nscogsrc/vm/cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -852,7 +852,7 @@
void printWronglySizedContexts(sqInt printContexts);
static void restoreHeadersFromtofromandtofrom(sqInt firstIn, sqInt lastIn, sqInt hdrBaseIn, sqInt firstOut, sqInt lastOut, sqInt hdrBaseOut) NoDbgRegParms;
static void runLeakCheckerForFullGC(sqInt fullGCFlag) NoDbgRegParms;
-static sqInt safeObjectAfter(sqInt oop) NoDbgRegParms;
+static usqInt safeObjectAfter(sqInt oop) NoDbgRegParms;
static sqInt safePrintStringOf(sqInt oop) NoDbgRegParms;
static sqInt shortentoIndexableSize(sqInt obj, sqInt nSlots) NoDbgRegParms;
static sqInt sizeBitsOfSafe(sqInt oop) NoDbgRegParms;
@@ -2085,7 +2085,7 @@
/* 574 */ (void (*)(void))0,
/* 575 */ (void (*)(void))0,
0 };
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.882";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.886";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -36766,17 +36766,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;
@@ -36787,21 +36785,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;
@@ -36816,7 +36800,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)) {
@@ -36870,18 +36854,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)) {
@@ -38753,7 +38737,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;
Modified: branches/Cog/nscogsrc/vm/cointerp.h
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nscogsrc/vm/cointerp.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/nscogsrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/gcc3x-cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nscogsrc/vm/gcc3x-cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -855,7 +855,7 @@
void printWronglySizedContexts(sqInt printContexts);
static void restoreHeadersFromtofromandtofrom(sqInt firstIn, sqInt lastIn, sqInt hdrBaseIn, sqInt firstOut, sqInt lastOut, sqInt hdrBaseOut) NoDbgRegParms;
static void runLeakCheckerForFullGC(sqInt fullGCFlag) NoDbgRegParms;
-static sqInt safeObjectAfter(sqInt oop) NoDbgRegParms;
+static usqInt safeObjectAfter(sqInt oop) NoDbgRegParms;
static sqInt safePrintStringOf(sqInt oop) NoDbgRegParms;
static sqInt shortentoIndexableSize(sqInt obj, sqInt nSlots) NoDbgRegParms;
static sqInt sizeBitsOfSafe(sqInt oop) NoDbgRegParms;
@@ -2088,7 +2088,7 @@
/* 574 */ (void (*)(void))0,
/* 575 */ (void (*)(void))0,
0 };
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.882";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.886";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -36775,17 +36775,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;
@@ -36796,21 +36794,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;
@@ -36825,7 +36809,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)) {
@@ -36879,18 +36863,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)) {
@@ -38762,7 +38746,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;
Modified: branches/Cog/nsspursrc/vm/cogit.c
===================================================================
--- branches/Cog/nsspursrc/vm/cogit.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nsspursrc/vm/cogit.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ StackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -12222,6 +12222,7 @@
}
cogMethod = ((CogMethod *) (roundUpLength((((sqInt)cogMethod)) + ((cogMethod->blockSize)))));
}
+ pruneYoungReferrers();
if (freedPIC) {
unlinkSendsToFree();
}
@@ -12560,7 +12561,7 @@
static sqInt
markLiteralspcmethod(sqInt annotation, char *mcpc, sqInt cogMethod)
{
- sqInt cacheAddress;
+ usqInt cacheAddress;
sqInt cacheTag;
sqInt cacheTag1;
sqInt class;
@@ -13713,7 +13714,7 @@
static sqInt
remapIfObjectRefpchasYoung(sqInt annotation, char *mcpc, sqInt hasYoungPtr)
{
- sqInt cacheAddress;
+ usqInt cacheAddress;
sqInt cacheTag;
sqInt cacheTag1;
sqInt entryPoint;
@@ -14466,7 +14467,7 @@
static void
voidImplicitReceiverCacheAt(sqInt mcpc)
{
- sqInt cacheAddress;
+ usqInt cacheAddress;
assert(NumOopsPerIRC == 2);
cacheAddress = implicitReceiveCacheAt(backEnd, mcpc);
Modified: branches/Cog/nsspursrc/vm/cogit.h
===================================================================
--- branches/Cog/nsspursrc/vm/cogit.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nsspursrc/vm/cogit.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/nsspursrc/vm/cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nsspursrc/vm/cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2326,7 +2326,7 @@
/*540*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
/*560*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
};
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.882";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.886";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
Modified: branches/Cog/nsspursrc/vm/cointerp.h
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nsspursrc/vm/cointerp.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/nsspursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/gcc3x-cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nsspursrc/vm/gcc3x-cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2329,7 +2329,7 @@
/*540*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
/*560*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
};
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.882";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.886";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
Modified: branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- StackInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ StackInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2075,7 +2075,7 @@
0 };
char * breakSelector;
sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.882";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.886";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
Modified: branches/Cog/nsspurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/interp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/nsspurstacksrc/vm/interp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- StackInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ StackInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2072,7 +2072,7 @@
0 };
char * breakSelector;
sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.882";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.886";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
- Thu Sep 25 10:52:08 PDT 2014
+ Thu Sep 25 15:59:19 PDT 2014
Modified: branches/Cog/sistasrc/vm/cogit.c
===================================================================
--- branches/Cog/sistasrc/vm/cogit.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/sistasrc/vm/cogit.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- SistaStackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ SistaStackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "SistaStackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "SistaStackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -11823,6 +11823,7 @@
}
cogMethod = ((CogMethod *) (roundUpLength((((sqInt)cogMethod)) + ((cogMethod->blockSize)))));
}
+ pruneYoungReferrers();
if (freedPIC) {
unlinkSendsToFree();
}
Modified: branches/Cog/sistasrc/vm/cogit.h
===================================================================
--- branches/Cog/sistasrc/vm/cogit.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/sistasrc/vm/cogit.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/sistasrc/vm/cointerp.c
===================================================================
--- branches/Cog/sistasrc/vm/cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/sistasrc/vm/cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -851,7 +851,7 @@
void printWronglySizedContexts(sqInt printContexts);
static void restoreHeadersFromtofromandtofrom(sqInt firstIn, sqInt lastIn, sqInt hdrBaseIn, sqInt firstOut, sqInt lastOut, sqInt hdrBaseOut) NoDbgRegParms;
static void runLeakCheckerForFullGC(sqInt fullGCFlag) NoDbgRegParms;
-static sqInt safeObjectAfter(sqInt oop) NoDbgRegParms;
+static usqInt safeObjectAfter(sqInt oop) NoDbgRegParms;
static sqInt safePrintStringOf(sqInt oop) NoDbgRegParms;
static sqInt shortentoIndexableSize(sqInt obj, sqInt nSlots) NoDbgRegParms;
static sqInt sizeBitsOfSafe(sqInt oop) NoDbgRegParms;
@@ -2082,7 +2082,7 @@
/* 574 */ (void (*)(void))0,
/* 575 */ (void (*)(void))0,
0 };
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.882]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.886]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -36845,17 +36845,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;
@@ -36866,21 +36864,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;
@@ -36895,7 +36879,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)) {
@@ -36949,18 +36933,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)) {
@@ -38832,7 +38816,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;
Modified: branches/Cog/sistasrc/vm/cointerp.h
===================================================================
--- branches/Cog/sistasrc/vm/cointerp.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/sistasrc/vm/cointerp.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/sistasrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/sistasrc/vm/gcc3x-cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/sistasrc/vm/gcc3x-cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -854,7 +854,7 @@
void printWronglySizedContexts(sqInt printContexts);
static void restoreHeadersFromtofromandtofrom(sqInt firstIn, sqInt lastIn, sqInt hdrBaseIn, sqInt firstOut, sqInt lastOut, sqInt hdrBaseOut) NoDbgRegParms;
static void runLeakCheckerForFullGC(sqInt fullGCFlag) NoDbgRegParms;
-static sqInt safeObjectAfter(sqInt oop) NoDbgRegParms;
+static usqInt safeObjectAfter(sqInt oop) NoDbgRegParms;
static sqInt safePrintStringOf(sqInt oop) NoDbgRegParms;
static sqInt shortentoIndexableSize(sqInt obj, sqInt nSlots) NoDbgRegParms;
static sqInt sizeBitsOfSafe(sqInt oop) NoDbgRegParms;
@@ -2085,7 +2085,7 @@
/* 574 */ (void (*)(void))0,
/* 575 */ (void (*)(void))0,
0 };
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.882]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.886]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -36854,17 +36854,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;
@@ -36875,21 +36873,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;
@@ -36904,7 +36888,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)) {
@@ -36958,18 +36942,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)) {
@@ -38841,7 +38825,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;
Modified: branches/Cog/spursistasrc/vm/cogit.c
===================================================================
--- branches/Cog/spursistasrc/vm/cogit.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursistasrc/vm/cogit.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- SistaStackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ SistaStackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "SistaStackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "SistaStackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -11949,6 +11949,7 @@
}
cogMethod = ((CogMethod *) (roundUpLength((((sqInt)cogMethod)) + ((cogMethod->blockSize)))));
}
+ pruneYoungReferrers();
if (freedPIC) {
unlinkSendsToFree();
}
Modified: branches/Cog/spursistasrc/vm/cogit.h
===================================================================
--- branches/Cog/spursistasrc/vm/cogit.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursistasrc/vm/cogit.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/spursistasrc/vm/cointerp.c
===================================================================
--- branches/Cog/spursistasrc/vm/cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursistasrc/vm/cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1134,7 +1134,7 @@
static void restoreObjectsFromtofromto(sqInt firstIn, sqInt lastIn, sqInt firstSeg, sqInt limitSeg) NoDbgRegParms;
static void runLeakCheckerForFullGCexcludeUnmarkedNewSpaceObjsclassIndicesShouldBeValid(sqInt fullGCFlag, sqInt excludeUnmarkedNewSpaceObjs, sqInt classIndicesShouldBeValid) NoDbgRegParms;
static void scavengingGCTenuringIf(sqInt tenuringCriterion) NoDbgRegParms;
-static usqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize) NoDbgRegParms;
+static sqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize) NoDbgRegParms;
void shortPrintObjectsFromto(sqInt startAddress, sqInt endAddress);
sqInt shouldRemapObj(sqInt objOop);
sqInt shouldRemapOop(sqInt oop);
@@ -2325,7 +2325,7 @@
/*540*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
/*560*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
};
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.882]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.886]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -5623,7 +5623,6 @@
GIV(framePointer) = localFP;
ceEnterCogCodePopReceiverReg();
- null;
goto l293;
}
localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -5641,7 +5640,7 @@
/* begin fetchNextBytecode */
currentBytecode = (byteAtPointer(++localIP)) + GIV(bytecodeSetSelector);
- null;
+ /* return self */
l293: /* end baseFrameReturn */;
goto l292;
}
@@ -52094,7 +52093,7 @@
zero if no change
was possible. */
-static usqInt
+static sqInt
shortentoIndexableSize(sqInt objOop, sqInt indexableSize)
{
usqInt bytesAfter;
Modified: branches/Cog/spursistasrc/vm/cointerp.h
===================================================================
--- branches/Cog/spursistasrc/vm/cointerp.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursistasrc/vm/cointerp.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/spursistasrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spursistasrc/vm/gcc3x-cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursistasrc/vm/gcc3x-cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1137,7 +1137,7 @@
static void restoreObjectsFromtofromto(sqInt firstIn, sqInt lastIn, sqInt firstSeg, sqInt limitSeg) NoDbgRegParms;
static void runLeakCheckerForFullGCexcludeUnmarkedNewSpaceObjsclassIndicesShouldBeValid(sqInt fullGCFlag, sqInt excludeUnmarkedNewSpaceObjs, sqInt classIndicesShouldBeValid) NoDbgRegParms;
static void scavengingGCTenuringIf(sqInt tenuringCriterion) NoDbgRegParms;
-static usqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize) NoDbgRegParms;
+static sqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize) NoDbgRegParms;
void shortPrintObjectsFromto(sqInt startAddress, sqInt endAddress);
sqInt shouldRemapObj(sqInt objOop);
sqInt shouldRemapOop(sqInt oop);
@@ -2328,7 +2328,7 @@
/*540*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
/*560*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
};
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.882]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.886]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -5632,7 +5632,6 @@
GIV(framePointer) = localFP;
ceEnterCogCodePopReceiverReg();
- null;
goto l293;
}
localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -5650,7 +5649,7 @@
/* begin fetchNextBytecode */
currentBytecode = (byteAtPointer(++localIP)) + GIV(bytecodeSetSelector);
- null;
+ /* return self */
l293: /* end baseFrameReturn */;
goto l292;
}
@@ -52103,7 +52102,7 @@
zero if no change
was possible. */
-static usqInt
+static sqInt
shortentoIndexableSize(sqInt objOop, sqInt indexableSize)
{
usqInt bytesAfter;
Modified: branches/Cog/spursrc/vm/cogit.c
===================================================================
--- branches/Cog/spursrc/vm/cogit.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursrc/vm/cogit.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ StackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -11692,6 +11692,7 @@
}
cogMethod = ((CogMethod *) (roundUpLength((((sqInt)cogMethod)) + ((cogMethod->blockSize)))));
}
+ pruneYoungReferrers();
if (freedPIC) {
unlinkSendsToFree();
}
Modified: branches/Cog/spursrc/vm/cogit.h
===================================================================
--- branches/Cog/spursrc/vm/cogit.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursrc/vm/cogit.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/spursrc/vm/cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursrc/vm/cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2315,7 +2315,7 @@
/*540*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
/*560*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
};
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.882]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.886]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
Modified: branches/Cog/spursrc/vm/cointerp.h
===================================================================
--- branches/Cog/spursrc/vm/cointerp.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursrc/vm/cointerp.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/spursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/gcc3x-cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spursrc/vm/gcc3x-cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2318,7 +2318,7 @@
/*540*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
/*560*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
};
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.882]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.886]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
Modified: branches/Cog/spurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/spurstacksrc/vm/gcc3x-interp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spurstacksrc/vm/gcc3x-interp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- StackInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ StackInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2067,7 +2067,7 @@
0 };
char * breakSelector;
sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreterPrimitives VMMaker.oscog-eem.882]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreterPrimitives VMMaker.oscog-eem.886]";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
Modified: branches/Cog/spurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/spurstacksrc/vm/interp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/spurstacksrc/vm/interp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- StackInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ StackInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2064,7 +2064,7 @@
0 };
char * breakSelector;
sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreterPrimitives VMMaker.oscog-eem.882]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreterPrimitives VMMaker.oscog-eem.886]";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
Modified: branches/Cog/src/vm/cogit.c
===================================================================
--- branches/Cog/src/vm/cogit.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/src/vm/cogit.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ StackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -11568,6 +11568,7 @@
}
cogMethod = ((CogMethod *) (roundUpLength((((sqInt)cogMethod)) + ((cogMethod->blockSize)))));
}
+ pruneYoungReferrers();
if (freedPIC) {
unlinkSendsToFree();
}
Modified: branches/Cog/src/vm/cogit.h
===================================================================
--- branches/Cog/src/vm/cogit.h 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/src/vm/cogit.h 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGenerator VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
Modified: branches/Cog/src/vm/cointerp.c
===================================================================
--- branches/Cog/src/vm/cointerp.c 2014-09-25 17:53:41 UTC (rev 3082)
+++ branches/Cog/src/vm/cointerp.c 2014-09-25 23:02:22 UTC (rev 3083)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
from
- CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d
+ CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.882 uuid: f22a00ff-acaf-49b0-9f6d-44efec689c0d " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.886 uuid: fb69945a-ff92-425c-9f6e-e2d9bba462ac " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2074,7 +2074,7 @@
@@ Diff output truncated at 50000 characters. @@
More information about the Vm-dev
mailing list