[Vm-dev] [commit][2773] CogVM source as per VMMaker.oscog-eem.328.
commits at squeakvm.org
commits at squeakvm.org
Sat Aug 17 21:49:11 UTC 2013
Revision: 2773
Author: eliot
Date: 2013-08-17 14:49:08 -0700 (Sat, 17 Aug 2013)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.328.
Fix StackToRegisterMappingCogit>>genPrimitiveClass for case where
numArgs > 0 (must use other than ReceiverResultReg, e.g. objectClass:).
Improve register usage in genSpecialSelectorClass.
Save & restore methodOrBlockNumTemps in compileBlockBodies for symmetry
with needsFrame & methodOrBlockNumArgs.
Slang: fix formatting of WhileForeverBreakIf loops.
Tweak startPCOrNilOfLiteral:in: to filter-out arrays from its
check for closure literals.
Modified Paths:
--------------
branches/Cog/nscogsrc/vm/cogit.c
branches/Cog/nscogsrc/vm/cogit.h
branches/Cog/nscogsrc/vm/cogmethod.h
branches/Cog/nscogsrc/vm/cointerp.c
branches/Cog/nscogsrc/vm/cointerp.h
branches/Cog/nscogsrc/vm/gcc3x-cointerp.c
branches/Cog/nscogsrc/vm/interp.h
branches/Cog/nscogsrc/vm/vmCallback.h
branches/Cog/src/vm/cogit.c
branches/Cog/src/vm/cogit.h
branches/Cog/src/vm/cogmethod.h
branches/Cog/src/vm/cointerp.c
branches/Cog/src/vm/cointerp.h
branches/Cog/src/vm/cointerpmt.c
branches/Cog/src/vm/cointerpmt.h
branches/Cog/src/vm/gcc3x-cointerp.c
branches/Cog/src/vm/gcc3x-cointerpmt.c
branches/Cog/src/vm/interp.h
branches/Cog/src/vm/vmCallback.h
Property Changed:
----------------
branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
Modified: branches/Cog/nscogsrc/vm/cogit.c
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.c 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/nscogsrc/vm/cogit.c 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb
+ CCodeGenerator VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb
+ StackToRegisterMappingCogit VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -2114,7 +2114,7 @@
if (blockCount > 0) {
i = blockCount - 1;
- while (1) {
+ while (1) {
/* check for repeat addition during recompilation due to initialNil miscount. */
@@ -3890,10 +3890,12 @@
sqInt result;
sqInt savedNeedsFrame;
sqInt savedNumArgs;
+ sqInt savedNumTemps;
assert(blockCount > 0);
savedNeedsFrame = needsFrame;
savedNumArgs = methodOrBlockNumArgs;
+ savedNumTemps = methodOrBlockNumTemps;
inBlock = 1;
compiledBlocksCount = 0;
while (compiledBlocksCount < blockCount) {
@@ -3901,7 +3903,7 @@
scanBlock(blockStart);
initialOpcodeIndex = opcodeIndex;
initialAnnotationIndex = annotationIndex;
- while (1) {
+ while (1) {
compileBlockEntry(blockStart);
initialStackPtr = simStackPtr;
if (((result = compileAbstractInstructionsFromthrough(((blockStart->startpc)) + ((pushNilSizeFunction(methodObj)) * ((blockStart->numInitialNils))), (((blockStart->startpc)) + ((blockStart->span))) - 1))) < 0) {
@@ -3921,6 +3923,7 @@
}
needsFrame = savedNeedsFrame;
methodOrBlockNumArgs = savedNumArgs;
+ methodOrBlockNumTemps = savedNumTemps;
return 0;
}
@@ -11352,10 +11355,28 @@
return 0;
}
+
+/* Depending on argument count the argument is either
+ 0 args: ReceiverResultReg
+ 1 args: Arg0Reg
+ N args: top of stack (assuming 1 reg arg for now) */
+
static sqInt
genPrimitiveClass(void)
{
- genGetClassObjectOfintoscratchReg(ReceiverResultReg, ReceiverResultReg, TempReg);
+ sqInt reg;
+
+ if (methodOrBlockNumArgs == 1) {
+ reg = Arg0Reg;
+ }
+ else {
+ if (methodOrBlockNumArgs > 0) {
+ /* begin MoveMw:r:R: */
+ genoperandoperandoperand(MoveMwrR, BytesPerWord, SPReg, ReceiverResultReg);
+ }
+ reg = ReceiverResultReg;
+ }
+ genGetClassObjectOfintoscratchReg(reg, ReceiverResultReg, TempReg);
/* begin RetN: */
genoperand(RetN, 0);
return 0;
@@ -12109,7 +12130,7 @@
/* N.B. Do _not_ use ReceiverResultReg to avoid overwriting receiver in assignment in frameless methods. */
/* So far descriptors are not rich enough to describe the entire dereference so generate the register
- load but don't push the result. There is an order-or-evaluation issue if we defer the dereference. */
+ load but don't push the result. There is an order-of-evaluation issue if we defer the dereference. */
association = getLiteral(literalIndex);
annotateobjRef(gMoveCwR(association, TempReg), association);
@@ -12991,11 +13012,20 @@
static sqInt
genSpecialSelectorClass(void)
{
+ sqInt topReg;
+
+ topReg = registerOrNil(ssTop());
ssPop(1);
- ssAllocateRequiredRegand(SendNumArgsReg, ClassReg);
+ if ((topReg == null)
+ || (topReg == ClassReg)) {
+ ssAllocateRequiredRegand((topReg = SendNumArgsReg), ClassReg);
+ }
+ else {
+ ssAllocateRequiredReg(ClassReg);
+ }
ssPush(1);
- popToReg(ssTop(), SendNumArgsReg);
- genGetClassObjectOfintoscratchReg(SendNumArgsReg, ClassReg, TempReg);
+ popToReg(ssTop(), topReg);
+ genGetClassObjectOfintoscratchReg(topReg, ClassReg, TempReg);
return (ssPop(1),
ssPushRegister(ClassReg));
}
@@ -14925,7 +14955,7 @@
? AltNSSendIsPCAnnotated
: NSSendIsPCAnnotated)))
|| (annotation == HasBytecodePC))) {
- while (1) {
+ while (1) {
byte = (fetchByteofObject(bcpc, aMethodObj)) + bsOffset;
descriptor = generatorAt(byte);
if (isInBlock) {
Modified: branches/Cog/nscogsrc/vm/cogit.h
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/nscogsrc/vm/cogit.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb
+ CCodeGenerator VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
Modified: branches/Cog/nscogsrc/vm/cogmethod.h
===================================================================
--- branches/Cog/nscogsrc/vm/cogmethod.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/nscogsrc/vm/cogmethod.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb
+ CCodeGenerator VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
typedef struct {
Modified: branches/Cog/nscogsrc/vm/cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.c 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/nscogsrc/vm/cointerp.c 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
from
- CoInterpreter VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CoInterpreter VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1993,7 +1993,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.321";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.328";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -15220,7 +15220,7 @@
currentCtx = callerContextOrNil2;
assert(isContext(currentCtx));
freeStackPage(GIV(stackPage));
- while (1) {
+ while (1) {
assert(isContext(currentCtx));
if ((((longAt((currentCtx + BaseHeaderSize) + (SenderIndex << ShiftForWord))) & 1))
&& ((stackPageFor((theFP = frameOfMarriedContext(currentCtx)))) == newPage)) break;
@@ -17161,7 +17161,7 @@
if (!(thePage == GIV(stackPage))) {
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
frameRcvrOffset = ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())
? theFP + FoxMFReceiver
: theFP + FoxIFReceiver);
@@ -23262,7 +23262,7 @@
VM_LABEL(0nextImplicitReceiverForwithMixin);
implicitReceiver = longAt((mixinApplication + BaseHeaderSize) + (EnclosingObjectIndex << ShiftForWord));
targetMixin = longAt((theMixin + BaseHeaderSize) + (EnclosingMixinIndex << ShiftForWord));
- while (1) {
+ while (1) {
if (targetMixin == GIV(nilObj)) {
/* or: [implicitReceiver = objectMemory nilObject] */
@@ -27188,7 +27188,7 @@
theIPPtr = theSP;
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
assert(addressIsInPage(thePage, theFP));
assert(addressIsInPage(thePage, theSP));
assert((theIPPtr == 0)
@@ -27806,7 +27806,7 @@
if (action == StartField) {
/* begin startField */
VM_LABEL(0startField);
- while (1) {
+ while (1) {
child = longAt(field);
if (!((child & 1))) break;
@@ -43156,7 +43156,7 @@
}
else {
tempLink = firstLink;
- while (1) {
+ while (1) {
if (tempLink == GIV(nilObj)) {
/* begin success: */
if (!0) {
@@ -45833,7 +45833,7 @@
: theSP1 + BytesPerWord);
goto l1;
}
- while (1) {
+ while (1) {
/* begin frameCallerSP: */
assert(!(isBaseFrame(aFrame)));
theSP1 = (aFrame + (frameStackedReceiverOffsetNumArgs(((((usqInt)(longAt(aFrame + FoxMethod)))) < (startOfMemory())
@@ -51127,6 +51127,9 @@
if ((lastPointerOf(lit)) <= ClosureCopiedValuesIndex) {
return null;
}
+ if (((((usqInt) (longAt(lit))) >> 8) & 15) == 2) {
+ return null;
+ }
outerContext = longAt((lit + BaseHeaderSize) + (ClosureOuterContextIndex << ShiftForWord));
if (!(((outerContext & 1) == 0)
&& (((((usqInt) (longAt(outerContext))) >> 12) & 31) == ClassMethodContextCompactIndex))) {
@@ -53045,7 +53048,7 @@
if (!(isFree(thePage))) {
theIPPtr = (thePage->headSP);
theFP = (thePage->headFP);
- while (1) {
+ while (1) {
if ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())) {
theMethodField = longAt(theFP + FoxMethod);
theFlags = theMethodField & MFMethodFlagsMask;
Modified: branches/Cog/nscogsrc/vm/cointerp.h
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/nscogsrc/vm/cointerp.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
Modified: branches/Cog/nscogsrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/gcc3x-cointerp.c 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/nscogsrc/vm/gcc3x-cointerp.c 2013-08-17 21:49:08 UTC (rev 2773)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
from
- CoInterpreter VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CoInterpreter VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1996,7 +1996,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.321";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.328";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -15229,7 +15229,7 @@
currentCtx = callerContextOrNil2;
assert(isContext(currentCtx));
freeStackPage(GIV(stackPage));
- while (1) {
+ while (1) {
assert(isContext(currentCtx));
if ((((longAt((currentCtx + BaseHeaderSize) + (SenderIndex << ShiftForWord))) & 1))
&& ((stackPageFor((theFP = frameOfMarriedContext(currentCtx)))) == newPage)) break;
@@ -17170,7 +17170,7 @@
if (!(thePage == GIV(stackPage))) {
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
frameRcvrOffset = ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())
? theFP + FoxMFReceiver
: theFP + FoxIFReceiver);
@@ -23271,7 +23271,7 @@
VM_LABEL(0nextImplicitReceiverForwithMixin);
implicitReceiver = longAt((mixinApplication + BaseHeaderSize) + (EnclosingObjectIndex << ShiftForWord));
targetMixin = longAt((theMixin + BaseHeaderSize) + (EnclosingMixinIndex << ShiftForWord));
- while (1) {
+ while (1) {
if (targetMixin == GIV(nilObj)) {
/* or: [implicitReceiver = objectMemory nilObject] */
@@ -27197,7 +27197,7 @@
theIPPtr = theSP;
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
assert(addressIsInPage(thePage, theFP));
assert(addressIsInPage(thePage, theSP));
assert((theIPPtr == 0)
@@ -27815,7 +27815,7 @@
if (action == StartField) {
/* begin startField */
VM_LABEL(0startField);
- while (1) {
+ while (1) {
child = longAt(field);
if (!((child & 1))) break;
@@ -43165,7 +43165,7 @@
}
else {
tempLink = firstLink;
- while (1) {
+ while (1) {
if (tempLink == GIV(nilObj)) {
/* begin success: */
if (!0) {
@@ -45842,7 +45842,7 @@
: theSP1 + BytesPerWord);
goto l1;
}
- while (1) {
+ while (1) {
/* begin frameCallerSP: */
assert(!(isBaseFrame(aFrame)));
theSP1 = (aFrame + (frameStackedReceiverOffsetNumArgs(((((usqInt)(longAt(aFrame + FoxMethod)))) < (startOfMemory())
@@ -51136,6 +51136,9 @@
if ((lastPointerOf(lit)) <= ClosureCopiedValuesIndex) {
return null;
}
+ if (((((usqInt) (longAt(lit))) >> 8) & 15) == 2) {
+ return null;
+ }
outerContext = longAt((lit + BaseHeaderSize) + (ClosureOuterContextIndex << ShiftForWord));
if (!(((outerContext & 1) == 0)
&& (((((usqInt) (longAt(outerContext))) >> 12) & 31) == ClassMethodContextCompactIndex))) {
@@ -53054,7 +53057,7 @@
if (!(isFree(thePage))) {
theIPPtr = (thePage->headSP);
theFP = (thePage->headFP);
- while (1) {
+ while (1) {
if ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())) {
theMethodField = longAt(theFP + FoxMethod);
theFlags = theMethodField & MFMethodFlagsMask;
Modified: branches/Cog/nscogsrc/vm/interp.h
===================================================================
--- branches/Cog/nscogsrc/vm/interp.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/nscogsrc/vm/interp.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
#define VM_PROXY_MAJOR 1
Modified: branches/Cog/nscogsrc/vm/vmCallback.h
===================================================================
--- branches/Cog/nscogsrc/vm/vmCallback.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/nscogsrc/vm/vmCallback.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
#define VM_CALLBACK_INC 1
Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
- Thu Aug 15 11:54:48 PDT 2013
+ Sat Aug 17 14:48:34 PDT 2013
Modified: branches/Cog/src/vm/cogit.c
===================================================================
--- branches/Cog/src/vm/cogit.c 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/cogit.c 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb
+ CCodeGenerator VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb
+ StackToRegisterMappingCogit VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -1801,7 +1801,7 @@
if (blockCount > 0) {
i = blockCount - 1;
- while (1) {
+ while (1) {
/* check for repeat addition during recompilation due to initialNil miscount. */
@@ -3473,10 +3473,12 @@
sqInt result;
sqInt savedNeedsFrame;
sqInt savedNumArgs;
+ sqInt savedNumTemps;
assert(blockCount > 0);
savedNeedsFrame = needsFrame;
savedNumArgs = methodOrBlockNumArgs;
+ savedNumTemps = methodOrBlockNumTemps;
inBlock = 1;
compiledBlocksCount = 0;
while (compiledBlocksCount < blockCount) {
@@ -3484,7 +3486,7 @@
scanBlock(blockStart);
initialOpcodeIndex = opcodeIndex;
initialAnnotationIndex = annotationIndex;
- while (1) {
+ while (1) {
compileBlockEntry(blockStart);
initialStackPtr = simStackPtr;
if (((result = compileAbstractInstructionsFromthrough(((blockStart->startpc)) + ((pushNilSizeFunction(methodObj)) * ((blockStart->numInitialNils))), (((blockStart->startpc)) + ((blockStart->span))) - 1))) < 0) {
@@ -3504,6 +3506,7 @@
}
needsFrame = savedNeedsFrame;
methodOrBlockNumArgs = savedNumArgs;
+ methodOrBlockNumTemps = savedNumTemps;
return 0;
}
@@ -10374,10 +10377,28 @@
return 0;
}
+
+/* Depending on argument count the argument is either
+ 0 args: ReceiverResultReg
+ 1 args: Arg0Reg
+ N args: top of stack (assuming 1 reg arg for now) */
+
static sqInt
genPrimitiveClass(void)
{
- genGetClassObjectOfintoscratchReg(ReceiverResultReg, ReceiverResultReg, TempReg);
+ sqInt reg;
+
+ if (methodOrBlockNumArgs == 1) {
+ reg = Arg0Reg;
+ }
+ else {
+ if (methodOrBlockNumArgs > 0) {
+ /* begin MoveMw:r:R: */
+ genoperandoperandoperand(MoveMwrR, BytesPerWord, SPReg, ReceiverResultReg);
+ }
+ reg = ReceiverResultReg;
+ }
+ genGetClassObjectOfintoscratchReg(reg, ReceiverResultReg, TempReg);
/* begin RetN: */
genoperand(RetN, 0);
return 0;
@@ -11064,7 +11085,7 @@
/* N.B. Do _not_ use ReceiverResultReg to avoid overwriting receiver in assignment in frameless methods. */
/* So far descriptors are not rich enough to describe the entire dereference so generate the register
- load but don't push the result. There is an order-or-evaluation issue if we defer the dereference. */
+ load but don't push the result. There is an order-of-evaluation issue if we defer the dereference. */
association = getLiteral(literalIndex);
annotateobjRef(gMoveCwR(association, TempReg), association);
@@ -11877,11 +11898,20 @@
static sqInt
genSpecialSelectorClass(void)
{
+ sqInt topReg;
+
+ topReg = registerOrNil(ssTop());
ssPop(1);
- ssAllocateRequiredRegand(SendNumArgsReg, ClassReg);
+ if ((topReg == null)
+ || (topReg == ClassReg)) {
+ ssAllocateRequiredRegand((topReg = SendNumArgsReg), ClassReg);
+ }
+ else {
+ ssAllocateRequiredReg(ClassReg);
+ }
ssPush(1);
- popToReg(ssTop(), SendNumArgsReg);
- genGetClassObjectOfintoscratchReg(SendNumArgsReg, ClassReg, TempReg);
+ popToReg(ssTop(), topReg);
+ genGetClassObjectOfintoscratchReg(topReg, ClassReg, TempReg);
return (ssPop(1),
ssPushRegister(ClassReg));
}
@@ -13784,7 +13814,7 @@
mcpc += mapByte & DisplacementMask;
if ((annotation == IsSendCall)
|| (annotation == HasBytecodePC)) {
- while (1) {
+ while (1) {
byte = (fetchByteofObject(bcpc, aMethodObj)) + bsOffset;
descriptor = generatorAt(byte);
if (isInBlock) {
Modified: branches/Cog/src/vm/cogit.h
===================================================================
--- branches/Cog/src/vm/cogit.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/cogit.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb
+ CCodeGenerator VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
Modified: branches/Cog/src/vm/cogmethod.h
===================================================================
--- branches/Cog/src/vm/cogmethod.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/cogmethod.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.322 uuid: 15da84de-4866-48ae-b478-c2c96002c5eb
+ CCodeGenerator VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
typedef struct {
Modified: branches/Cog/src/vm/cointerp.c
===================================================================
--- branches/Cog/src/vm/cointerp.c 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/cointerp.c 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
from
- CoInterpreter VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CoInterpreter VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1983,7 +1983,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.321]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.328]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -11154,7 +11154,7 @@
currentCtx = callerContextOrNil2;
assert(isContext(currentCtx));
freeStackPage(GIV(stackPage));
- while (1) {
+ while (1) {
assert(isContext(currentCtx));
if ((((longAt((currentCtx + BaseHeaderSize) + (SenderIndex << ShiftForWord))) & 1))
&& ((stackPageFor((theFP = frameOfMarriedContext(currentCtx)))) == newPage)) break;
@@ -13086,7 +13086,7 @@
if (!(thePage == GIV(stackPage))) {
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
frameRcvrOffset = ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())
? theFP + FoxMFReceiver
: theFP + FoxIFReceiver);
@@ -22780,7 +22780,7 @@
theIPPtr = theSP;
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
assert(addressIsInPage(thePage, theFP));
assert(addressIsInPage(thePage, theSP));
assert((theIPPtr == 0)
@@ -23396,7 +23396,7 @@
if (action == StartField) {
/* begin startField */
VM_LABEL(0startField);
- while (1) {
+ while (1) {
child = longAt(field);
if (!((child & 1))) break;
@@ -38643,7 +38643,7 @@
}
else {
tempLink = firstLink;
- while (1) {
+ while (1) {
if (tempLink == GIV(nilObj)) {
/* begin success: */
if (!0) {
@@ -41315,7 +41315,7 @@
: theSP1 + BytesPerWord);
goto l1;
}
- while (1) {
+ while (1) {
/* begin frameCallerSP: */
assert(!(isBaseFrame(aFrame)));
theSP1 = (aFrame + (frameStackedReceiverOffsetNumArgs(((((usqInt)(longAt(aFrame + FoxMethod)))) < (startOfMemory())
@@ -46560,6 +46560,9 @@
if ((lastPointerOf(lit)) <= ClosureCopiedValuesIndex) {
return null;
}
+ if (((((usqInt) (longAt(lit))) >> 8) & 15) == 2) {
+ return null;
+ }
outerContext = longAt((lit + BaseHeaderSize) + (ClosureOuterContextIndex << ShiftForWord));
if (!(((outerContext & 1) == 0)
&& (((((usqInt) (longAt(outerContext))) >> 12) & 31) == ClassMethodContextCompactIndex))) {
@@ -48471,7 +48474,7 @@
if (!(isFree(thePage))) {
theIPPtr = (thePage->headSP);
theFP = (thePage->headFP);
- while (1) {
+ while (1) {
if ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())) {
theMethodField = longAt(theFP + FoxMethod);
theFlags = theMethodField & MFMethodFlagsMask;
Modified: branches/Cog/src/vm/cointerp.h
===================================================================
--- branches/Cog/src/vm/cointerp.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/cointerp.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
Modified: branches/Cog/src/vm/cointerpmt.c
===================================================================
--- branches/Cog/src/vm/cointerpmt.c 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/cointerpmt.c 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
from
- CoInterpreterMT VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CoInterpreterMT VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
-static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2082,7 +2082,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.321]";
+const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.328]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
sqInt willNotThreadWarnCount;
@@ -11493,7 +11493,7 @@
currentCtx = callerContextOrNil2;
assert(isContext(currentCtx));
freeStackPage(GIV(stackPage));
- while (1) {
+ while (1) {
assert(isContext(currentCtx));
if ((((longAt((currentCtx + BaseHeaderSize) + (SenderIndex << ShiftForWord))) & 1))
&& ((stackPageFor((theFP = frameOfMarriedContext(currentCtx)))) == newPage)) break;
@@ -13438,7 +13438,7 @@
if (!(thePage == GIV(stackPage))) {
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
frameRcvrOffset = ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())
? theFP + FoxMFReceiver
: theFP + FoxIFReceiver);
@@ -23579,7 +23579,7 @@
theIPPtr = theSP;
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
assert(addressIsInPage(thePage, theFP));
assert(addressIsInPage(thePage, theSP));
assert((theIPPtr == 0)
@@ -24212,7 +24212,7 @@
if (action == StartField) {
/* begin startField */
VM_LABEL(0startField);
- while (1) {
+ while (1) {
child = longAt(field);
if (!((child & 1))) break;
@@ -40002,7 +40002,7 @@
}
else {
tempLink = firstLink;
- while (1) {
+ while (1) {
if (tempLink == GIV(nilObj)) {
/* begin success: */
if (!0) {
@@ -42692,7 +42692,7 @@
: theSP1 + BytesPerWord);
goto l1;
}
- while (1) {
+ while (1) {
/* begin frameCallerSP: */
assert(!(isBaseFrame(aFrame)));
theSP1 = (aFrame + (frameStackedReceiverOffsetNumArgs(((((usqInt)(longAt(aFrame + FoxMethod)))) < (startOfMemory())
@@ -48038,6 +48038,9 @@
if ((lastPointerOf(lit)) <= ClosureCopiedValuesIndex) {
return null;
}
+ if (((((usqInt) (longAt(lit))) >> 8) & 15) == 2) {
+ return null;
+ }
outerContext = longAt((lit + BaseHeaderSize) + (ClosureOuterContextIndex << ShiftForWord));
if (!(((outerContext & 1) == 0)
&& (((((usqInt) (longAt(outerContext))) >> 12) & 31) == ClassMethodContextCompactIndex))) {
@@ -50220,7 +50223,7 @@
if (!(isFree(thePage))) {
theIPPtr = (thePage->headSP);
theFP = (thePage->headFP);
- while (1) {
+ while (1) {
if ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())) {
theMethodField = longAt(theFP + FoxMethod);
theFlags = theMethodField & MFMethodFlagsMask;
Modified: branches/Cog/src/vm/cointerpmt.h
===================================================================
--- branches/Cog/src/vm/cointerpmt.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/cointerpmt.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
Modified: branches/Cog/src/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/src/vm/gcc3x-cointerp.c 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/gcc3x-cointerp.c 2013-08-17 21:49:08 UTC (rev 2773)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
from
- CoInterpreter VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CoInterpreter VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1986,7 +1986,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.321]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.328]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -11163,7 +11163,7 @@
currentCtx = callerContextOrNil2;
assert(isContext(currentCtx));
freeStackPage(GIV(stackPage));
- while (1) {
+ while (1) {
assert(isContext(currentCtx));
if ((((longAt((currentCtx + BaseHeaderSize) + (SenderIndex << ShiftForWord))) & 1))
&& ((stackPageFor((theFP = frameOfMarriedContext(currentCtx)))) == newPage)) break;
@@ -13095,7 +13095,7 @@
if (!(thePage == GIV(stackPage))) {
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
frameRcvrOffset = ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())
? theFP + FoxMFReceiver
: theFP + FoxIFReceiver);
@@ -22789,7 +22789,7 @@
theIPPtr = theSP;
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
assert(addressIsInPage(thePage, theFP));
assert(addressIsInPage(thePage, theSP));
assert((theIPPtr == 0)
@@ -23405,7 +23405,7 @@
if (action == StartField) {
/* begin startField */
VM_LABEL(0startField);
- while (1) {
+ while (1) {
child = longAt(field);
if (!((child & 1))) break;
@@ -38652,7 +38652,7 @@
}
else {
tempLink = firstLink;
- while (1) {
+ while (1) {
if (tempLink == GIV(nilObj)) {
/* begin success: */
if (!0) {
@@ -41324,7 +41324,7 @@
: theSP1 + BytesPerWord);
goto l1;
}
- while (1) {
+ while (1) {
/* begin frameCallerSP: */
assert(!(isBaseFrame(aFrame)));
theSP1 = (aFrame + (frameStackedReceiverOffsetNumArgs(((((usqInt)(longAt(aFrame + FoxMethod)))) < (startOfMemory())
@@ -46569,6 +46569,9 @@
if ((lastPointerOf(lit)) <= ClosureCopiedValuesIndex) {
return null;
}
+ if (((((usqInt) (longAt(lit))) >> 8) & 15) == 2) {
+ return null;
+ }
outerContext = longAt((lit + BaseHeaderSize) + (ClosureOuterContextIndex << ShiftForWord));
if (!(((outerContext & 1) == 0)
&& (((((usqInt) (longAt(outerContext))) >> 12) & 31) == ClassMethodContextCompactIndex))) {
@@ -48480,7 +48483,7 @@
if (!(isFree(thePage))) {
theIPPtr = (thePage->headSP);
theFP = (thePage->headFP);
- while (1) {
+ while (1) {
if ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())) {
theMethodField = longAt(theFP + FoxMethod);
theFlags = theMethodField & MFMethodFlagsMask;
Modified: branches/Cog/src/vm/gcc3x-cointerpmt.c
===================================================================
--- branches/Cog/src/vm/gcc3x-cointerpmt.c 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/gcc3x-cointerpmt.c 2013-08-17 21:49:08 UTC (rev 2773)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
from
- CoInterpreterMT VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CoInterpreterMT VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
-static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2085,7 +2085,7 @@
/* 575 */ (void (*)(void))0,
0 };
static void (*externalPrimitiveTable[MaxExternalPrimitiveTableSize + 1 /* 4097 */])(void);
-const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.321]";
+const char *interpreterVersion = "Croquet Closure Cog MT VM [CoInterpreterMT VMMaker.oscog-eem.328]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
sqInt willNotThreadWarnCount;
@@ -11502,7 +11502,7 @@
currentCtx = callerContextOrNil2;
assert(isContext(currentCtx));
freeStackPage(GIV(stackPage));
- while (1) {
+ while (1) {
assert(isContext(currentCtx));
if ((((longAt((currentCtx + BaseHeaderSize) + (SenderIndex << ShiftForWord))) & 1))
&& ((stackPageFor((theFP = frameOfMarriedContext(currentCtx)))) == newPage)) break;
@@ -13447,7 +13447,7 @@
if (!(thePage == GIV(stackPage))) {
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
frameRcvrOffset = ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())
? theFP + FoxMFReceiver
: theFP + FoxIFReceiver);
@@ -23588,7 +23588,7 @@
theIPPtr = theSP;
theSP += BytesPerWord;
}
- while (1) {
+ while (1) {
assert(addressIsInPage(thePage, theFP));
assert(addressIsInPage(thePage, theSP));
assert((theIPPtr == 0)
@@ -24221,7 +24221,7 @@
if (action == StartField) {
/* begin startField */
VM_LABEL(0startField);
- while (1) {
+ while (1) {
child = longAt(field);
if (!((child & 1))) break;
@@ -40011,7 +40011,7 @@
}
else {
tempLink = firstLink;
- while (1) {
+ while (1) {
if (tempLink == GIV(nilObj)) {
/* begin success: */
if (!0) {
@@ -42701,7 +42701,7 @@
: theSP1 + BytesPerWord);
goto l1;
}
- while (1) {
+ while (1) {
/* begin frameCallerSP: */
assert(!(isBaseFrame(aFrame)));
theSP1 = (aFrame + (frameStackedReceiverOffsetNumArgs(((((usqInt)(longAt(aFrame + FoxMethod)))) < (startOfMemory())
@@ -48047,6 +48047,9 @@
if ((lastPointerOf(lit)) <= ClosureCopiedValuesIndex) {
return null;
}
+ if (((((usqInt) (longAt(lit))) >> 8) & 15) == 2) {
+ return null;
+ }
outerContext = longAt((lit + BaseHeaderSize) + (ClosureOuterContextIndex << ShiftForWord));
if (!(((outerContext & 1) == 0)
&& (((((usqInt) (longAt(outerContext))) >> 12) & 31) == ClassMethodContextCompactIndex))) {
@@ -50229,7 +50232,7 @@
if (!(isFree(thePage))) {
theIPPtr = (thePage->headSP);
theFP = (thePage->headFP);
- while (1) {
+ while (1) {
if ((((usqInt)(longAt(theFP + FoxMethod)))) < (startOfMemory())) {
theMethodField = longAt(theFP + FoxMethod);
theFlags = theMethodField & MFMethodFlagsMask;
Modified: branches/Cog/src/vm/interp.h
===================================================================
--- branches/Cog/src/vm/interp.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/interp.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
#define VM_PROXY_MAJOR 1
Modified: branches/Cog/src/vm/vmCallback.h
===================================================================
--- branches/Cog/src/vm/vmCallback.h 2013-08-15 18:55:10 UTC (rev 2772)
+++ branches/Cog/src/vm/vmCallback.h 2013-08-17 21:49:08 UTC (rev 2773)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.321 uuid: 6134e40b-c38c-41ec-8f31-64a7f1c002b3
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.328 uuid: d9a4d11d-3a72-437e-b617-92de227ffdde
*/
#define VM_CALLBACK_INC 1
More information about the Vm-dev
mailing list