[Vm-dev] [commit][2865] CogVM source as per VMMaker.oscog-eem.600
commits at squeakvm.org
commits at squeakvm.org
Sat Feb 1 01:04:07 UTC 2014
Revision: 2865
Author: eliot
Date: 2014-01-31 17:04:05 -0800 (Fri, 31 Jan 2014)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.600
Revert bogus assert change.
Remember to follow the specialObjectsOop during scavenges.
Fix a typo in a selector.
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/nsspurstacksrc/vm/gcc3x-interp.c
branches/Cog/nsspurstacksrc/vm/interp.c
branches/Cog/nsspurstacksrc/vm/interp.h
branches/Cog/nsspurstacksrc/vm/vmCallback.h
branches/Cog/spursrc/vm/cogit.c
branches/Cog/spursrc/vm/cogit.h
branches/Cog/spursrc/vm/cogmethod.h
branches/Cog/spursrc/vm/cointerp.c
branches/Cog/spursrc/vm/cointerp.h
branches/Cog/spursrc/vm/gcc3x-cointerp.c
branches/Cog/spursrc/vm/interp.h
branches/Cog/spursrc/vm/vmCallback.h
branches/Cog/spurstacksrc/vm/gcc3x-interp.c
branches/Cog/spurstacksrc/vm/interp.c
branches/Cog/spurstacksrc/vm/interp.h
branches/Cog/spurstacksrc/vm/vmCallback.h
branches/Cog/src/vm/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
branches/Cog/stacksrc/vm/gcc3x-interp.c
branches/Cog/stacksrc/vm/interp.c
branches/Cog/stacksrc/vm/interp.h
branches/Cog/stacksrc/vm/vmCallback.h
Property Changed:
----------------
branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
Modified: branches/Cog/nscogsrc/vm/cogit.c
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nscogsrc/vm/cogit.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
+ CCodeGenerator VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
+ StackToRegisterMappingCogit VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -587,7 +587,7 @@
static void (*genEnilopmartForandandcalled(sqInt regArg1, sqInt regArg2, sqInt regArg3, char *trampolineName))(void) ;
static void (*genEnilopmartForandcalled(sqInt regArg1, sqInt regArg2, char *trampolineName))(void) ;
static void (*genEnilopmartForcalled(sqInt regArg, char *trampolineName))(void) ;
-static sqInt genEnsureObjInRegRegNotForwardedscratchReg(sqInt reg, sqInt scratch);
+static sqInt genEnsureObjInRegNotForwardedscratchReg(sqInt reg, sqInt scratch);
static void (*genEnterPICEnilopmartNumArgs(sqInt numArgs))(void) ;
static sqInt genExtendedSendBytecode(void);
static sqInt genExtendedSuperBytecode(void);
@@ -10836,7 +10836,7 @@
nothing to do. Subclasses for memory managers that forward will override. */
static sqInt
-genEnsureObjInRegRegNotForwardedscratchReg(sqInt reg, sqInt scratch)
+genEnsureObjInRegNotForwardedscratchReg(sqInt reg, sqInt scratch)
{
return 0;
}
@@ -14353,7 +14353,7 @@
association = getLiteral(literalIndex);
annotateobjRef(gMoveCwR(association, TempReg), association);
- genEnsureObjInRegRegNotForwardedscratchReg(TempReg, freeReg);
+ genEnsureObjInRegNotForwardedscratchReg(TempReg, freeReg);
genLoadSlotsourceRegdestReg(ValueIndex, TempReg, freeReg);
ssPushRegister(freeReg);
return 0;
@@ -15573,7 +15573,7 @@
&& (!(shouldAnnotateObjectReference(constVal)))) {
ssAllocateRequiredReg(ReceiverResultReg);
annotateobjRef(gMoveCwR(association, ReceiverResultReg), association);
- genEnsureObjInRegRegNotForwardedscratchReg(ReceiverResultReg, TempReg);
+ genEnsureObjInRegNotForwardedscratchReg(ReceiverResultReg, TempReg);
ssStorePoptoPreferredReg(popBoolean, TempReg);
if (traceStores > 0) {
CallRT(ceTraceStoreTrampoline);
@@ -15594,7 +15594,7 @@
}
ssAllocateCallReg(ReceiverResultReg);
annotateobjRef(gMoveCwR(association, ReceiverResultReg), association);
- genEnsureObjInRegRegNotForwardedscratchReg(ReceiverResultReg, TempReg);
+ genEnsureObjInRegNotForwardedscratchReg(ReceiverResultReg, TempReg);
if (traceStores > 0) {
/* begin MoveR:R: */
genoperandoperand(MoveRR, topReg, TempReg);
Modified: branches/Cog/nscogsrc/vm/cogit.h
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nscogsrc/vm/cogit.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
+ CCodeGenerator VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
Modified: branches/Cog/nscogsrc/vm/cogmethod.h
===================================================================
--- branches/Cog/nscogsrc/vm/cogmethod.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nscogsrc/vm/cogmethod.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
+ CCodeGenerator VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
typedef struct {
Modified: branches/Cog/nscogsrc/vm/cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nscogsrc/vm/cointerp.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- CoInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CoInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2030,7 +2030,7 @@
/* 574 */ (void (*)(void))0,
/* 575 */ (void (*)(void))0,
0 };
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.597";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.600";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -5667,6 +5667,7 @@
/* begin internalPush: */
longAtPointerput((localSP -= BytesPerOop), longAt((rcvr + BaseHeaderSize) + (byte3 << ShiftForWord)));
}
+ null;
goto l4;
}
if (opType == 3) {
@@ -5676,6 +5677,7 @@
assert(GIV(method) == (iframeMethod(localFP)));
object = longAt((GIV(method) + BaseHeaderSize) + ((byte3 + LiteralStart) << ShiftForWord));
longAtPointerput((localSP -= BytesPerOop), object);
+ null;
goto l4;
}
if (opType == 4) {
@@ -5689,6 +5691,7 @@
object2 = longAt((oop + BaseHeaderSize) + (ValueIndex << ShiftForWord));
longAtPointerput((localSP -= BytesPerOop), object2);
+ null;
goto l4;
}
top = longAtPointer(localSP);
@@ -53867,7 +53870,7 @@
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
/* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(GIV(instructionPointer) + 1, GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
sqInt
Modified: branches/Cog/nscogsrc/vm/cointerp.h
===================================================================
--- branches/Cog/nscogsrc/vm/cointerp.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nscogsrc/vm/cointerp.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
Modified: branches/Cog/nscogsrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nscogsrc/vm/gcc3x-cointerp.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nscogsrc/vm/gcc3x-cointerp.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- CoInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CoInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2033,7 +2033,7 @@
/* 574 */ (void (*)(void))0,
/* 575 */ (void (*)(void))0,
0 };
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.597";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.600";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -5676,6 +5676,7 @@
/* begin internalPush: */
longAtPointerput((localSP -= BytesPerOop), longAt((rcvr + BaseHeaderSize) + (byte3 << ShiftForWord)));
}
+ null;
goto l4;
}
if (opType == 3) {
@@ -5685,6 +5686,7 @@
assert(GIV(method) == (iframeMethod(localFP)));
object = longAt((GIV(method) + BaseHeaderSize) + ((byte3 + LiteralStart) << ShiftForWord));
longAtPointerput((localSP -= BytesPerOop), object);
+ null;
goto l4;
}
if (opType == 4) {
@@ -5698,6 +5700,7 @@
object2 = longAt((oop + BaseHeaderSize) + (ValueIndex << ShiftForWord));
longAtPointerput((localSP -= BytesPerOop), object2);
+ null;
goto l4;
}
top = longAtPointer(localSP);
@@ -53876,7 +53879,7 @@
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
/* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(GIV(instructionPointer) + 1, GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
sqInt
Modified: branches/Cog/nscogsrc/vm/interp.h
===================================================================
--- branches/Cog/nscogsrc/vm/interp.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nscogsrc/vm/interp.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
#define VM_PROXY_MAJOR 1
Modified: branches/Cog/nscogsrc/vm/vmCallback.h
===================================================================
--- branches/Cog/nscogsrc/vm/vmCallback.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nscogsrc/vm/vmCallback.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
#define VM_CALLBACK_INC 1
Modified: branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.598 uuid: b85d7330-2ddc-4d90-8592-4e37234f4ac2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- StackInterpreter VMMaker.oscog-eem.598 uuid: b85d7330-2ddc-4d90-8592-4e37234f4ac2
+ StackInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.598 uuid: b85d7330-2ddc-4d90-8592-4e37234f4ac2 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1969,7 +1969,7 @@
0 };
char * breakSelector;
sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreter_VMMaker.oscog-eem.598";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreter_VMMaker.oscog-eem.600";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
@@ -53061,6 +53061,10 @@
if (firstTime) {
mapInterpreterOops();
/* begin mapExtraRoots */
+ if ((((longAt(GIV(specialObjectsOop))) & 0x3FFFFF) == 8)
+ || (isYoungObject(GIV(specialObjectsOop)))) {
+ GIV(specialObjectsOop) = remapObj(GIV(specialObjectsOop));
+ }
assert(GIV(remapBufferCount) == 0);
for (i = 1; i <= GIV(extraRootCount); i += 1) {
oop = (GIV(extraRoots)[i])[0];
@@ -53463,6 +53467,7 @@
sqInt object6;
sqInt object7;
sqInt object8;
+ sqInt object9;
sqInt rcvr;
char *sp;
char *sp1;
@@ -53494,7 +53499,8 @@
}
/* begin saveCStackStateForCallbackContext: */
/* begin push: */
- longAtput((sp8 = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object8 = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp8 = GIV(stackPointer) - BytesPerWord), object8);
GIV(stackPointer) = sp8;
# if BytesPerWord == 8
@@ -53567,8 +53573,8 @@
: 0);
/* begin push: */
- object8 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object8);
+ object9 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object9);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp51 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
@@ -53654,6 +53660,7 @@
sqInt object2;
sqInt object3;
sqInt object4;
+ sqInt object5;
sqInt rcvr;
char *sp;
char *sp1;
@@ -53682,23 +53689,24 @@
return 0;
}
/* begin push: */
- longAtput((sp = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp = GIV(stackPointer) - BytesPerWord), object);
GIV(stackPointer) = sp;
/* begin push: */
- object = positive32BitIntegerFor(thunkPtr);
- longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object);
+ object1 = positive32BitIntegerFor(thunkPtr);
+ longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object1);
GIV(stackPointer) = sp1;
/* begin push: */
- object1 = positive32BitIntegerFor(stackPtr);
- longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object1);
+ object2 = positive32BitIntegerFor(stackPtr);
+ longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object2);
GIV(stackPointer) = sp2;
/* begin push: */
- object2 = positive32BitIntegerFor(regsPtr);
- longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object2);
+ object3 = positive32BitIntegerFor(regsPtr);
+ longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object3);
GIV(stackPointer) = sp3;
/* begin push: */
- object3 = positive32BitIntegerFor(jmpBufPtr);
- longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object3);
+ object4 = positive32BitIntegerFor(jmpBufPtr);
+ longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object4);
GIV(stackPointer) = sp4;
/* begin ifAppropriateCompileToNativeCode:selector: */
/* begin justActivateNewMethod */
@@ -53728,8 +53736,8 @@
: 0);
/* begin push: */
- object4 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object4);
+ object5 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object5);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp5 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
@@ -56452,7 +56460,7 @@
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
/* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(GIV(instructionPointer) + 1, GIV(framePointer), GIV(stackPointer), !0, __LINE__);
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !0, __LINE__);
}
sqInt
Modified: branches/Cog/nsspurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/interp.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nsspurstacksrc/vm/interp.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.598 uuid: b85d7330-2ddc-4d90-8592-4e37234f4ac2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- StackInterpreter VMMaker.oscog-eem.598 uuid: b85d7330-2ddc-4d90-8592-4e37234f4ac2
+ StackInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.598 uuid: b85d7330-2ddc-4d90-8592-4e37234f4ac2 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1966,7 +1966,7 @@
0 };
char * breakSelector;
sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreter_VMMaker.oscog-eem.598";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreter_VMMaker.oscog-eem.600";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
@@ -53052,6 +53052,10 @@
if (firstTime) {
mapInterpreterOops();
/* begin mapExtraRoots */
+ if ((((longAt(GIV(specialObjectsOop))) & 0x3FFFFF) == 8)
+ || (isYoungObject(GIV(specialObjectsOop)))) {
+ GIV(specialObjectsOop) = remapObj(GIV(specialObjectsOop));
+ }
assert(GIV(remapBufferCount) == 0);
for (i = 1; i <= GIV(extraRootCount); i += 1) {
oop = (GIV(extraRoots)[i])[0];
@@ -53454,6 +53458,7 @@
sqInt object6;
sqInt object7;
sqInt object8;
+ sqInt object9;
sqInt rcvr;
char *sp;
char *sp1;
@@ -53485,7 +53490,8 @@
}
/* begin saveCStackStateForCallbackContext: */
/* begin push: */
- longAtput((sp8 = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object8 = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp8 = GIV(stackPointer) - BytesPerWord), object8);
GIV(stackPointer) = sp8;
# if BytesPerWord == 8
@@ -53558,8 +53564,8 @@
: 0);
/* begin push: */
- object8 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object8);
+ object9 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object9);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp51 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
@@ -53645,6 +53651,7 @@
sqInt object2;
sqInt object3;
sqInt object4;
+ sqInt object5;
sqInt rcvr;
char *sp;
char *sp1;
@@ -53673,23 +53680,24 @@
return 0;
}
/* begin push: */
- longAtput((sp = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp = GIV(stackPointer) - BytesPerWord), object);
GIV(stackPointer) = sp;
/* begin push: */
- object = positive32BitIntegerFor(thunkPtr);
- longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object);
+ object1 = positive32BitIntegerFor(thunkPtr);
+ longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object1);
GIV(stackPointer) = sp1;
/* begin push: */
- object1 = positive32BitIntegerFor(stackPtr);
- longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object1);
+ object2 = positive32BitIntegerFor(stackPtr);
+ longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object2);
GIV(stackPointer) = sp2;
/* begin push: */
- object2 = positive32BitIntegerFor(regsPtr);
- longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object2);
+ object3 = positive32BitIntegerFor(regsPtr);
+ longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object3);
GIV(stackPointer) = sp3;
/* begin push: */
- object3 = positive32BitIntegerFor(jmpBufPtr);
- longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object3);
+ object4 = positive32BitIntegerFor(jmpBufPtr);
+ longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object4);
GIV(stackPointer) = sp4;
/* begin ifAppropriateCompileToNativeCode:selector: */
/* begin justActivateNewMethod */
@@ -53719,8 +53727,8 @@
: 0);
/* begin push: */
- object4 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object4);
+ object5 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object5);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp5 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
@@ -56443,7 +56451,7 @@
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
/* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(GIV(instructionPointer) + 1, GIV(framePointer), GIV(stackPointer), !0, __LINE__);
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !0, __LINE__);
}
sqInt
Modified: branches/Cog/nsspurstacksrc/vm/interp.h
===================================================================
--- branches/Cog/nsspurstacksrc/vm/interp.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nsspurstacksrc/vm/interp.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.598 uuid: b85d7330-2ddc-4d90-8592-4e37234f4ac2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
#define VM_PROXY_MAJOR 1
Modified: branches/Cog/nsspurstacksrc/vm/vmCallback.h
===================================================================
--- branches/Cog/nsspurstacksrc/vm/vmCallback.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/nsspurstacksrc/vm/vmCallback.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.598 uuid: b85d7330-2ddc-4d90-8592-4e37234f4ac2
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
#define VM_CALLBACK_INC 1
Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
- Fri Jan 31 10:40:41 PST 2014
+ Fri Jan 31 17:03:23 PST 2014
Modified: branches/Cog/spursrc/vm/cogit.c
===================================================================
--- branches/Cog/spursrc/vm/cogit.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spursrc/vm/cogit.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
+ CCodeGenerator VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
+ StackToRegisterMappingCogit VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -575,7 +575,7 @@
static void (*genEnilopmartForandandcalled(sqInt regArg1, sqInt regArg2, sqInt regArg3, char *trampolineName))(void) ;
static void (*genEnilopmartForandcalled(sqInt regArg1, sqInt regArg2, char *trampolineName))(void) ;
static void (*genEnilopmartForcalled(sqInt regArg, char *trampolineName))(void) ;
-static sqInt genEnsureObjInRegRegNotForwardedscratchReg(sqInt reg, sqInt scratch);
+static sqInt genEnsureObjInRegNotForwardedscratchReg(sqInt reg, sqInt scratch);
static void (*genEnterPICEnilopmartNumArgs(sqInt numArgs))(void) ;
static sqInt genExtendedSendBytecode(void);
static sqInt genExtendedSuperBytecode(void);
@@ -10442,10 +10442,10 @@
}
-/* Make sure that the obejct in reg is not forwarded. */
+/* Make sure that the object in reg is not forwarded. */
static sqInt
-genEnsureObjInRegRegNotForwardedscratchReg(sqInt reg, sqInt scratch)
+genEnsureObjInRegNotForwardedscratchReg(sqInt reg, sqInt scratch)
{
AbstractInstruction *loop;
AbstractInstruction *ok;
@@ -11894,7 +11894,7 @@
/* begin MoveR:R: */
genoperandoperand(MoveRR, Arg0Reg, TempReg);
jumpImmediate = genJumpImmediateInScratchReg(TempReg);
- genEnsureObjInRegRegNotForwardedscratchReg(Arg0Reg, TempReg);
+ genEnsureObjInRegNotForwardedscratchReg(Arg0Reg, TempReg);
jmpTarget(jumpImmediate, gCmpRR(Arg0Reg, ReceiverResultReg));
jumpCmp = (orNot
? (/* begin JumpZero: */
@@ -14174,7 +14174,7 @@
association = getLiteral(literalIndex);
annotateobjRef(gMoveCwR(association, TempReg), association);
- genEnsureObjInRegRegNotForwardedscratchReg(TempReg, freeReg);
+ genEnsureObjInRegNotForwardedscratchReg(TempReg, freeReg);
genLoadSlotsourceRegdestReg(ValueIndex, TempReg, freeReg);
ssPushRegister(freeReg);
return 0;
@@ -15391,7 +15391,7 @@
&& (!(shouldAnnotateObjectReference(constVal)))) {
ssAllocateRequiredReg(ReceiverResultReg);
annotateobjRef(gMoveCwR(association, ReceiverResultReg), association);
- genEnsureObjInRegRegNotForwardedscratchReg(ReceiverResultReg, TempReg);
+ genEnsureObjInRegNotForwardedscratchReg(ReceiverResultReg, TempReg);
ssStorePoptoPreferredReg(popBoolean, TempReg);
if (traceStores > 0) {
CallRT(ceTraceStoreTrampoline);
@@ -15412,7 +15412,7 @@
}
ssAllocateCallReg(ReceiverResultReg);
annotateobjRef(gMoveCwR(association, ReceiverResultReg), association);
- genEnsureObjInRegRegNotForwardedscratchReg(ReceiverResultReg, TempReg);
+ genEnsureObjInRegNotForwardedscratchReg(ReceiverResultReg, TempReg);
if (traceStores > 0) {
/* begin MoveR:R: */
genoperandoperand(MoveRR, topReg, TempReg);
Modified: branches/Cog/spursrc/vm/cogit.h
===================================================================
--- branches/Cog/spursrc/vm/cogit.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spursrc/vm/cogit.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
+ CCodeGenerator VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
Modified: branches/Cog/spursrc/vm/cogmethod.h
===================================================================
--- branches/Cog/spursrc/vm/cogmethod.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spursrc/vm/cogmethod.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
+ CCodeGenerator VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
typedef struct {
Modified: branches/Cog/spursrc/vm/cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/cointerp.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spursrc/vm/cointerp.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- CoInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CoInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2169,7 +2169,7 @@
/* 575 */ (void (*)(void))0,
0 };
usqInt heapBase;
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.597]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.600]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -6383,6 +6383,7 @@
/* begin internalPush: */
longAtPointerput((localSP -= BytesPerOop), longAt((rcvr1 + (BaseHeaderSize)) + (byte3 << 2)));
}
+ null;
goto l4;
}
if (opType == 3) {
@@ -6392,6 +6393,7 @@
assert(GIV(method) == (iframeMethod(localFP)));
object = longAt((GIV(method) + (BaseHeaderSize)) + ((byte3 + LiteralStart) << 2));
longAtPointerput((localSP -= BytesPerOop), object);
+ null;
goto l4;
}
if (opType == 4) {
@@ -6419,6 +6421,7 @@
/* begin internalPush: */
longAtPointerput((localSP -= BytesPerOop), longAt((litVar1 + (BaseHeaderSize)) + (ValueIndex << 2)));
+ null;
goto l4;
}
top = longAtPointer(localSP);
@@ -54451,6 +54454,10 @@
if (firstTime) {
mapInterpreterOops();
/* begin mapExtraRoots */
+ if ((((longAt(GIV(specialObjectsOop))) & 0x3FFFFF) == 8)
+ || (isReallyYoungObject(GIV(specialObjectsOop)))) {
+ GIV(specialObjectsOop) = remapObj(GIV(specialObjectsOop));
+ }
assert(GIV(remapBufferCount) == 0);
for (i = 1; i <= GIV(extraRootCount); i += 1) {
oop = (GIV(extraRoots)[i])[0];
@@ -54881,6 +54888,7 @@
sqInt object6;
sqInt object7;
sqInt object8;
+ sqInt object9;
sqInt rcvr;
char *sp;
char *sp1;
@@ -54924,7 +54932,8 @@
(vmCallbackContext->savedCFramePointer = getCFramePointer());
memcpy(((void *)((vmCallbackContext->savedReenterInterpreter))), reenterInterpreter, sizeof(jmp_buf));
/* begin push: */
- longAtput((sp8 = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object8 = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp8 = GIV(stackPointer) - BytesPerWord), object8);
GIV(stackPointer) = sp8;
# if BytesPerWord == 8
@@ -55037,8 +55046,8 @@
longAtput((sp31 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
GIV(stackPointer) = sp31;
/* begin push: */
- object8 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object8);
+ object9 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object9);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp51 = GIV(stackPointer) - BytesPerWord), 0);
@@ -55130,6 +55139,7 @@
sqInt object2;
sqInt object3;
sqInt object4;
+ sqInt object5;
sqInt rcvr;
char *sp;
char *sp1;
@@ -55167,23 +55177,24 @@
return 0;
}
/* begin push: */
- longAtput((sp = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp = GIV(stackPointer) - BytesPerWord), object);
GIV(stackPointer) = sp;
/* begin push: */
- object = positive32BitIntegerFor(thunkPtr);
- longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object);
+ object1 = positive32BitIntegerFor(thunkPtr);
+ longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object1);
GIV(stackPointer) = sp1;
/* begin push: */
- object1 = positive32BitIntegerFor(stackPtr);
- longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object1);
+ object2 = positive32BitIntegerFor(stackPtr);
+ longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object2);
GIV(stackPointer) = sp2;
/* begin push: */
- object2 = positive32BitIntegerFor(regsPtr);
- longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object2);
+ object3 = positive32BitIntegerFor(regsPtr);
+ longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object3);
GIV(stackPointer) = sp3;
/* begin push: */
- object3 = positive32BitIntegerFor(jmpBufPtr);
- longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object3);
+ object4 = positive32BitIntegerFor(jmpBufPtr);
+ longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object4);
GIV(stackPointer) = sp4;
/* begin ifAppropriateCompileToNativeCode:selector: */
methodHeader = longAt((GIV(newMethod) + (BaseHeaderSize)) + (HeaderIndex << 2));
@@ -55253,8 +55264,8 @@
longAtput((sp31 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
GIV(stackPointer) = sp31;
/* begin push: */
- object4 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object4);
+ object5 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object5);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp5 = GIV(stackPointer) - BytesPerWord), 0);
@@ -58106,9 +58117,9 @@
transferTofrom(sqInt newProc, sqInt sourceCode)
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
sqInt activeContext;
+ sqInt aProcess;
sqInt index;
StackPage *lastUsedPage;
- usqInt lip;
StackPage *lruOrFree;
sqInt newContext;
StackPage *newPage;
@@ -58122,10 +58133,11 @@
sqInt value;
/* begin recordContextSwitchFrom:in: */
+ aProcess = longAt(((longAt(((longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (SchedulerAssociation << 2))) + (BaseHeaderSize)) + (ValueIndex << 2))) + (BaseHeaderSize)) + (ActiveProcessIndex << 2));
if (recordEventTrace()) {
/* begin recordTrace:thing:source: */
GIV(traceLog)[GIV(traceLogIndex)] = TraceContextSwitch;
- GIV(traceLog)[GIV(traceLogIndex) + 1] = (longAt(((longAt(((longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (SchedulerAssociation << 2))) + (BaseHeaderSize)) + (ValueIndex << 2))) + (BaseHeaderSize)) + (ActiveProcessIndex << 2)));
+ GIV(traceLog)[GIV(traceLogIndex) + 1] = aProcess;
GIV(traceLog)[GIV(traceLogIndex) + 2] = sourceCode;
GIV(traceLogIndex) = (GIV(traceLogIndex) + 3) % TraceBufferSize;
}
@@ -58282,8 +58294,7 @@
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
/* begin assertValidExecutionPointe:r:s: */
- lip = GIV(instructionPointer) + 1;
- assertValidExecutionPointersimbarline(lip, GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
sqInt
Modified: branches/Cog/spursrc/vm/cointerp.h
===================================================================
--- branches/Cog/spursrc/vm/cointerp.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spursrc/vm/cointerp.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
Modified: branches/Cog/spursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/gcc3x-cointerp.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spursrc/vm/gcc3x-cointerp.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- CoInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CoInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2172,7 +2172,7 @@
/* 575 */ (void (*)(void))0,
0 };
usqInt heapBase;
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.597]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.600]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
volatile int sendTrace;
@@ -6392,6 +6392,7 @@
/* begin internalPush: */
longAtPointerput((localSP -= BytesPerOop), longAt((rcvr1 + (BaseHeaderSize)) + (byte3 << 2)));
}
+ null;
goto l4;
}
if (opType == 3) {
@@ -6401,6 +6402,7 @@
assert(GIV(method) == (iframeMethod(localFP)));
object = longAt((GIV(method) + (BaseHeaderSize)) + ((byte3 + LiteralStart) << 2));
longAtPointerput((localSP -= BytesPerOop), object);
+ null;
goto l4;
}
if (opType == 4) {
@@ -6428,6 +6430,7 @@
/* begin internalPush: */
longAtPointerput((localSP -= BytesPerOop), longAt((litVar1 + (BaseHeaderSize)) + (ValueIndex << 2)));
+ null;
goto l4;
}
top = longAtPointer(localSP);
@@ -54460,6 +54463,10 @@
if (firstTime) {
mapInterpreterOops();
/* begin mapExtraRoots */
+ if ((((longAt(GIV(specialObjectsOop))) & 0x3FFFFF) == 8)
+ || (isReallyYoungObject(GIV(specialObjectsOop)))) {
+ GIV(specialObjectsOop) = remapObj(GIV(specialObjectsOop));
+ }
assert(GIV(remapBufferCount) == 0);
for (i = 1; i <= GIV(extraRootCount); i += 1) {
oop = (GIV(extraRoots)[i])[0];
@@ -54890,6 +54897,7 @@
sqInt object6;
sqInt object7;
sqInt object8;
+ sqInt object9;
sqInt rcvr;
char *sp;
char *sp1;
@@ -54933,7 +54941,8 @@
(vmCallbackContext->savedCFramePointer = getCFramePointer());
memcpy(((void *)((vmCallbackContext->savedReenterInterpreter))), reenterInterpreter, sizeof(jmp_buf));
/* begin push: */
- longAtput((sp8 = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object8 = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp8 = GIV(stackPointer) - BytesPerWord), object8);
GIV(stackPointer) = sp8;
# if BytesPerWord == 8
@@ -55046,8 +55055,8 @@
longAtput((sp31 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
GIV(stackPointer) = sp31;
/* begin push: */
- object8 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object8);
+ object9 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object9);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp51 = GIV(stackPointer) - BytesPerWord), 0);
@@ -55139,6 +55148,7 @@
sqInt object2;
sqInt object3;
sqInt object4;
+ sqInt object5;
sqInt rcvr;
char *sp;
char *sp1;
@@ -55176,23 +55186,24 @@
return 0;
}
/* begin push: */
- longAtput((sp = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp = GIV(stackPointer) - BytesPerWord), object);
GIV(stackPointer) = sp;
/* begin push: */
- object = positive32BitIntegerFor(thunkPtr);
- longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object);
+ object1 = positive32BitIntegerFor(thunkPtr);
+ longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object1);
GIV(stackPointer) = sp1;
/* begin push: */
- object1 = positive32BitIntegerFor(stackPtr);
- longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object1);
+ object2 = positive32BitIntegerFor(stackPtr);
+ longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object2);
GIV(stackPointer) = sp2;
/* begin push: */
- object2 = positive32BitIntegerFor(regsPtr);
- longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object2);
+ object3 = positive32BitIntegerFor(regsPtr);
+ longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object3);
GIV(stackPointer) = sp3;
/* begin push: */
- object3 = positive32BitIntegerFor(jmpBufPtr);
- longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object3);
+ object4 = positive32BitIntegerFor(jmpBufPtr);
+ longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object4);
GIV(stackPointer) = sp4;
/* begin ifAppropriateCompileToNativeCode:selector: */
methodHeader = longAt((GIV(newMethod) + (BaseHeaderSize)) + (HeaderIndex << 2));
@@ -55262,8 +55273,8 @@
longAtput((sp31 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
GIV(stackPointer) = sp31;
/* begin push: */
- object4 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object4);
+ object5 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object5);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp5 = GIV(stackPointer) - BytesPerWord), 0);
@@ -58115,9 +58126,9 @@
transferTofrom(sqInt newProc, sqInt sourceCode)
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
sqInt activeContext;
+ sqInt aProcess;
sqInt index;
StackPage *lastUsedPage;
- usqInt lip;
StackPage *lruOrFree;
sqInt newContext;
StackPage *newPage;
@@ -58131,10 +58142,11 @@
sqInt value;
/* begin recordContextSwitchFrom:in: */
+ aProcess = longAt(((longAt(((longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (SchedulerAssociation << 2))) + (BaseHeaderSize)) + (ValueIndex << 2))) + (BaseHeaderSize)) + (ActiveProcessIndex << 2));
if (recordEventTrace()) {
/* begin recordTrace:thing:source: */
GIV(traceLog)[GIV(traceLogIndex)] = TraceContextSwitch;
- GIV(traceLog)[GIV(traceLogIndex) + 1] = (longAt(((longAt(((longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (SchedulerAssociation << 2))) + (BaseHeaderSize)) + (ValueIndex << 2))) + (BaseHeaderSize)) + (ActiveProcessIndex << 2)));
+ GIV(traceLog)[GIV(traceLogIndex) + 1] = aProcess;
GIV(traceLog)[GIV(traceLogIndex) + 2] = sourceCode;
GIV(traceLogIndex) = (GIV(traceLogIndex) + 3) % TraceBufferSize;
}
@@ -58291,8 +58303,7 @@
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
/* begin assertValidExecutionPointe:r:s: */
- lip = GIV(instructionPointer) + 1;
- assertValidExecutionPointersimbarline(lip, GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !((((usqInt)(longAt(GIV(framePointer) + FoxMethod)))) < (startOfMemory())), __LINE__);
}
sqInt
Modified: branches/Cog/spursrc/vm/interp.h
===================================================================
--- branches/Cog/spursrc/vm/interp.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spursrc/vm/interp.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
#define VM_PROXY_MAJOR 1
Modified: branches/Cog/spursrc/vm/vmCallback.h
===================================================================
--- branches/Cog/spursrc/vm/vmCallback.h 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spursrc/vm/vmCallback.h 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
#define VM_CALLBACK_INC 1
Modified: branches/Cog/spurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/spurstacksrc/vm/gcc3x-interp.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spurstacksrc/vm/gcc3x-interp.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- StackInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ StackInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1962,7 +1962,7 @@
0 };
char * breakSelector;
sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.597]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.600]";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
@@ -48079,6 +48079,10 @@
if (firstTime) {
mapInterpreterOops();
/* begin mapExtraRoots */
+ if ((((longAt(GIV(specialObjectsOop))) & 0x3FFFFF) == 8)
+ || (isYoungObject(GIV(specialObjectsOop)))) {
+ GIV(specialObjectsOop) = remapObj(GIV(specialObjectsOop));
+ }
assert(GIV(remapBufferCount) == 0);
for (i = 1; i <= GIV(extraRootCount); i += 1) {
oop = (GIV(extraRoots)[i])[0];
@@ -48481,6 +48485,7 @@
sqInt object6;
sqInt object7;
sqInt object8;
+ sqInt object9;
sqInt rcvr;
char *sp;
char *sp1;
@@ -48512,7 +48517,8 @@
}
/* begin saveCStackStateForCallbackContext: */
/* begin push: */
- longAtput((sp8 = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object8 = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp8 = GIV(stackPointer) - BytesPerWord), object8);
GIV(stackPointer) = sp8;
# if BytesPerWord == 8
@@ -48582,8 +48588,8 @@
assert((headerOf(GIV(method))) == methodHeader);
/* begin push: */
- object8 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object8);
+ object9 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object9);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp51 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
@@ -48661,6 +48667,7 @@
sqInt object2;
sqInt object3;
sqInt object4;
+ sqInt object5;
sqInt rcvr;
char *sp;
char *sp1;
@@ -48689,23 +48696,24 @@
return 0;
}
/* begin push: */
- longAtput((sp = GIV(stackPointer) - BytesPerWord), longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2)));
+ object = longAt((GIV(specialObjectsOop) + (BaseHeaderSize)) + (ClassAlien << 2));
+ longAtput((sp = GIV(stackPointer) - BytesPerWord), object);
GIV(stackPointer) = sp;
/* begin push: */
- object = positive32BitIntegerFor(thunkPtr);
- longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object);
+ object1 = positive32BitIntegerFor(thunkPtr);
+ longAtput((sp1 = GIV(stackPointer) - BytesPerWord), object1);
GIV(stackPointer) = sp1;
/* begin push: */
- object1 = positive32BitIntegerFor(stackPtr);
- longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object1);
+ object2 = positive32BitIntegerFor(stackPtr);
+ longAtput((sp2 = GIV(stackPointer) - BytesPerWord), object2);
GIV(stackPointer) = sp2;
/* begin push: */
- object2 = positive32BitIntegerFor(regsPtr);
- longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object2);
+ object3 = positive32BitIntegerFor(regsPtr);
+ longAtput((sp3 = GIV(stackPointer) - BytesPerWord), object3);
GIV(stackPointer) = sp3;
/* begin push: */
- object3 = positive32BitIntegerFor(jmpBufPtr);
- longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object3);
+ object4 = positive32BitIntegerFor(jmpBufPtr);
+ longAtput((sp4 = GIV(stackPointer) - BytesPerWord), object4);
GIV(stackPointer) = sp4;
/* begin ifAppropriateCompileToNativeCode:selector: */
/* begin justActivateNewMethod */
@@ -48732,8 +48740,8 @@
assert((headerOf(GIV(method))) == methodHeader);
/* begin push: */
- object4 = ((1 + (numArgs << 8)) + (0)) + (0);
- longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object4);
+ object5 = ((1 + (numArgs << 8)) + (0)) + (0);
+ longAtput((sp41 = GIV(stackPointer) - BytesPerWord), object5);
GIV(stackPointer) = sp41;
/* begin push: */
longAtput((sp5 = GIV(stackPointer) - BytesPerWord), GIV(nilObj));
@@ -51426,7 +51434,7 @@
GIV(stackPointer) += BytesPerWord;
GIV(instructionPointer) = ((sqInt) top);
/* begin assertValidExecutionPointe:r:s: */
- assertValidExecutionPointersimbarline(GIV(instructionPointer) + 1, GIV(framePointer), GIV(stackPointer), !0, __LINE__);
+ assertValidExecutionPointersimbarline(GIV(instructionPointer), GIV(framePointer), GIV(stackPointer), !0, __LINE__);
}
sqInt
Modified: branches/Cog/spurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/spurstacksrc/vm/interp.c 2014-01-31 18:41:22 UTC (rev 2864)
+++ branches/Cog/spurstacksrc/vm/interp.c 2014-02-01 01:04:05 UTC (rev 2865)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
from
- StackInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220
+ StackInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.597 uuid: c9a71dd4-c394-4a8f-aa4d-a6d4dc3ff220 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.600 uuid: 48f5953c-233c-4026-96a0-ffef9cea1c72 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1959,7 +1959,7 @@
0 };
char * breakSelector;
sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.597]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.600]";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
@@ -48070,6 +48070,10 @@
if (firstTime) {
mapInterpreterOops();
/* begin mapExtraRoots */
+ if ((((longAt(GIV(specialObjectsOop))) & 0x3FFFFF) == 8)
+ || (isYoungObject(GIV(specialObjectsOop)))) {
+ GIV(specialObjectsOop) = remapObj(GIV(specialObjectsOop));
+ }
assert(GIV(remapBufferCount) == 0);
for (i = 1; i <= GIV(extraRootCount); i += 1) {
@@ Diff output truncated at 50000 characters. @@
More information about the Vm-dev
mailing list