[Vm-dev] [commit][3185] CogVM source as per VMMaker.oscog-eem.986
commits at squeakvm.org
commits at squeakvm.org
Mon Dec 15 20:45:39 UTC 2014
Revision: 3185
Author: eliot
Date: 2014-12-15 12:44:57 -0800 (Mon, 15 Dec 2014)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.986
Spur: Eliminate the erroneous and confusing setRawNumSlotsOf:to: and
setOverflowNumSlotsOf:to:. Use rawNumSlotsOf:put: & rawOverflowSlotsOf:put:
which match the getters. Hence fix 64-bit compaction.
Remember to update the fixed UnixOSProcessPlugin in Newspeak-land.
Modified Paths:
--------------
branches/Cog/nscogsrc/plugins/UnixOSProcessPlugin/UnixOSProcessPlugin.c
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/spursistasrc/vm/cointerp.c
branches/Cog/spursistasrc/vm/cointerp.h
branches/Cog/spursistasrc/vm/gcc3x-cointerp.c
branches/Cog/spursrc/vm/cointerp.c
branches/Cog/spursrc/vm/cointerp.h
branches/Cog/spursrc/vm/gcc3x-cointerp.c
branches/Cog/spurstack64src/vm/gcc3x-interp.c
branches/Cog/spurstack64src/vm/interp.c
branches/Cog/spurstacksrc/vm/gcc3x-interp.c
branches/Cog/spurstacksrc/vm/interp.c
Property Changed:
----------------
branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
Modified: branches/Cog/nscogsrc/plugins/UnixOSProcessPlugin/UnixOSProcessPlugin.c
===================================================================
--- branches/Cog/nscogsrc/plugins/UnixOSProcessPlugin/UnixOSProcessPlugin.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/nscogsrc/plugins/UnixOSProcessPlugin/UnixOSProcessPlugin.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -1,5 +1,5 @@
/* Automatically generated by
- VMPluginCodeGenerator VMMaker.oscog-eem.983 uuid: 4cdca841-6318-4c49-95de-8c47d0d7e91d
+ VMPluginCodeGenerator VMMaker.oscog-eem.985 uuid: f455e095-e61a-46a0-8994-c4bc33bb8a46
from
UnixOSProcessPlugin VMConstruction-Plugins-OSProcessPlugin.oscog-eem.49 uuid: dbbde2e2-9103-4ba8-96a9-33c29e7ee7e4
*/
@@ -95,6 +95,7 @@
static sqInt maskForThisThreadAndResend(int sigNum);
static sqInt maskSignalForThisThread(int sigNum);
EXPORT(sqInt) moduleUnloaded(char *aModuleName);
+static sqInt msg(char *s);
static sqInt needSigaltstack(void);
static sqInt newPthreadTypeByteArray(pthread_t aPthreadType);
static sqInt newSQFileByteArray(void);
@@ -1199,7 +1200,14 @@
{
}
+static sqInt
+msg(char *s)
+{
+ fprintf(stderr, "\n%s: %s", moduleName, s);
+ return 0;
+}
+
/* Answer if the plugin should use a signalstack to avoid delivering signals
on the native stack, which can interfere with the JIT. As a side-effect,
allocate one if one is not already available. We use GetAttributeString
Modified: branches/Cog/nsspursrc/vm/cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/nsspursrc/vm/cointerp.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
from
- CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2348,7 +2348,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.980";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.986";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -8852,7 +8852,7 @@
/* bytecodePrimBitShift */
{
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -8912,7 +8912,7 @@
null;
goto l76;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -11600,7 +11600,7 @@
/* bytecodePrimBitShift */
{
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -11660,7 +11660,7 @@
null;
goto l183;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -29418,7 +29418,7 @@
primitiveBitShift(void)
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -29465,7 +29465,7 @@
}
return;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -43230,9 +43230,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -43420,9 +43418,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -44445,8 +44441,6 @@
}
longAtput((obj1 + BaseHeaderSize) + (0 << (shiftForWord())), clone2);
if ((byteAt(obj1 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj1 + 7, 1);
}
/* begin forward:to: */
@@ -44472,8 +44466,6 @@
}
longAtput((obj2 + BaseHeaderSize) + (0 << (shiftForWord())), clone1);
if ((byteAt(obj2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj2 + 7, 1);
}
if (((isYoungObject(obj1)) != (isYoungObject(clone2)))
@@ -44594,8 +44586,6 @@
}
longAtput((obj11 + BaseHeaderSize) + (0 << (shiftForWord())), obj21);
if ((byteAt(obj11 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj11 + 7, 1);
}
if (copyHashFlag) {
@@ -47058,8 +47048,6 @@
if (firstOfFreeRun == 0) {
/* begin setObjectFree: */
if ((byteAt(objOop3 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop3 + 7, 1);
}
/* begin setFree: */
@@ -48663,8 +48651,6 @@
here = here1;
/* begin setObjectFree: */
if ((byteAt(here + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(here + 7, 1);
}
/* begin setFree: */
@@ -50636,8 +50622,6 @@
}
longAtput((objOop2 + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop2 + 7, 1);
}
}
@@ -50645,13 +50629,9 @@
objOop2 = objectAfterlimit(objOop2, segmentLimit);
}
if ((byteAt(segmentWordArray + 7)) == 0xFF) {
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
+ longAtput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
}
else {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(segmentWordArray + 7, 8 / BytesPerOop);
}
if ((checkForLeaks & 16) != 0) {
@@ -58933,8 +58913,6 @@
}
longAtput((objOop + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop + 7, 1);
}
}
@@ -70671,9 +70649,11 @@
if (((longAt(oop)) & 0x3FFFFF) == 0) {
print(" is a free chunk of size ");
printNum(sizeOfFree(oop));
+ print(" 0th: ");
+ printHex(longAt((oop + BaseHeaderSize) + (0 << (shiftForWord()))));
+
/* begin cr */
printf("\n");
-
return;
}
if (((longAt(oop)) & (0x3FFFFF - 8)) == 0) {
Modified: branches/Cog/nsspursrc/vm/cointerp.h
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.h 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/nsspursrc/vm/cointerp.h 2014-12-15 20:44:57 UTC (rev 3185)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
Modified: branches/Cog/nsspursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/gcc3x-cointerp.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/nsspursrc/vm/gcc3x-cointerp.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
from
- CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2351,7 +2351,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.980";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.986";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -8861,7 +8861,7 @@
/* bytecodePrimBitShift */
{
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -8921,7 +8921,7 @@
null;
goto l76;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -11609,7 +11609,7 @@
/* bytecodePrimBitShift */
{
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -11669,7 +11669,7 @@
null;
goto l183;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -29427,7 +29427,7 @@
primitiveBitShift(void)
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -29474,7 +29474,7 @@
}
return;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -43239,9 +43239,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -43429,9 +43427,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -44454,8 +44450,6 @@
}
longAtput((obj1 + BaseHeaderSize) + (0 << (shiftForWord())), clone2);
if ((byteAt(obj1 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj1 + 7, 1);
}
/* begin forward:to: */
@@ -44481,8 +44475,6 @@
}
longAtput((obj2 + BaseHeaderSize) + (0 << (shiftForWord())), clone1);
if ((byteAt(obj2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj2 + 7, 1);
}
if (((isYoungObject(obj1)) != (isYoungObject(clone2)))
@@ -44603,8 +44595,6 @@
}
longAtput((obj11 + BaseHeaderSize) + (0 << (shiftForWord())), obj21);
if ((byteAt(obj11 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj11 + 7, 1);
}
if (copyHashFlag) {
@@ -47067,8 +47057,6 @@
if (firstOfFreeRun == 0) {
/* begin setObjectFree: */
if ((byteAt(objOop3 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop3 + 7, 1);
}
/* begin setFree: */
@@ -48672,8 +48660,6 @@
here = here1;
/* begin setObjectFree: */
if ((byteAt(here + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(here + 7, 1);
}
/* begin setFree: */
@@ -50645,8 +50631,6 @@
}
longAtput((objOop2 + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop2 + 7, 1);
}
}
@@ -50654,13 +50638,9 @@
objOop2 = objectAfterlimit(objOop2, segmentLimit);
}
if ((byteAt(segmentWordArray + 7)) == 0xFF) {
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
+ longAtput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
}
else {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(segmentWordArray + 7, 8 / BytesPerOop);
}
if ((checkForLeaks & 16) != 0) {
@@ -58942,8 +58922,6 @@
}
longAtput((objOop + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop + 7, 1);
}
}
@@ -70680,9 +70658,11 @@
if (((longAt(oop)) & 0x3FFFFF) == 0) {
print(" is a free chunk of size ");
printNum(sizeOfFree(oop));
+ print(" 0th: ");
+ printHex(longAt((oop + BaseHeaderSize) + (0 << (shiftForWord()))));
+
/* begin cr */
printf("\n");
-
return;
}
if (((longAt(oop)) & (0x3FFFFF - 8)) == 0) {
Modified: branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
from
- StackInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ StackInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2097,7 +2097,7 @@
/* 574 */ (void (*)(void))0,
/* 575 */ (void (*)(void))0,
0 };
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.980";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.986";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
@@ -29269,9 +29269,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -29459,9 +29457,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -30471,8 +30467,6 @@
}
longAtput((obj1 + BaseHeaderSize) + (0 << (shiftForWord())), clone2);
if ((byteAt(obj1 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj1 + 7, 1);
}
/* begin forward:to: */
@@ -30498,8 +30492,6 @@
}
longAtput((obj2 + BaseHeaderSize) + (0 << (shiftForWord())), clone1);
if ((byteAt(obj2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj2 + 7, 1);
}
if (((isYoungObject(obj1)) != (isYoungObject(clone2)))
@@ -30620,8 +30612,6 @@
}
longAtput((obj11 + BaseHeaderSize) + (0 << (shiftForWord())), obj21);
if ((byteAt(obj11 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj11 + 7, 1);
}
if (copyHashFlag) {
@@ -33120,8 +33110,6 @@
if (firstOfFreeRun == 0) {
/* begin setObjectFree: */
if ((byteAt(objOop3 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop3 + 7, 1);
}
/* begin setFree: */
@@ -34725,8 +34713,6 @@
here = here1;
/* begin setObjectFree: */
if ((byteAt(here + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(here + 7, 1);
}
/* begin setFree: */
@@ -36719,8 +36705,6 @@
}
longAtput((objOop2 + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop2 + 7, 1);
}
}
@@ -36728,13 +36712,9 @@
objOop2 = objectAfterlimit(objOop2, segmentLimit);
}
if ((byteAt(segmentWordArray + 7)) == 0xFF) {
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
+ longAtput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
}
else {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(segmentWordArray + 7, 8 / BytesPerOop);
}
if ((checkForLeaks & 16) != 0) {
@@ -44888,8 +44868,6 @@
}
longAtput((objOop + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop + 7, 1);
}
}
@@ -59269,9 +59247,11 @@
if (((longAt(oop)) & 0x3FFFFF) == 0) {
print(" is a free chunk of size ");
printNum(sizeOfFree(oop));
+ print(" 0th: ");
+ printHex(longAt((oop + BaseHeaderSize) + (0 << (shiftForWord()))));
+
/* begin cr */
printf("\n");
-
return;
}
if (((longAt(oop)) & (0x3FFFFF - 8)) == 0) {
Modified: branches/Cog/nsspurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/interp.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/nsspurstacksrc/vm/interp.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
from
- StackInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ StackInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2094,7 +2094,7 @@
/* 574 */ (void (*)(void))0,
/* 575 */ (void (*)(void))0,
0 };
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.980";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.986";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
@@ -29260,9 +29260,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -29450,9 +29448,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -30462,8 +30458,6 @@
}
longAtput((obj1 + BaseHeaderSize) + (0 << (shiftForWord())), clone2);
if ((byteAt(obj1 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj1 + 7, 1);
}
/* begin forward:to: */
@@ -30489,8 +30483,6 @@
}
longAtput((obj2 + BaseHeaderSize) + (0 << (shiftForWord())), clone1);
if ((byteAt(obj2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj2 + 7, 1);
}
if (((isYoungObject(obj1)) != (isYoungObject(clone2)))
@@ -30611,8 +30603,6 @@
}
longAtput((obj11 + BaseHeaderSize) + (0 << (shiftForWord())), obj21);
if ((byteAt(obj11 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj11 + 7, 1);
}
if (copyHashFlag) {
@@ -33111,8 +33101,6 @@
if (firstOfFreeRun == 0) {
/* begin setObjectFree: */
if ((byteAt(objOop3 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop3 + 7, 1);
}
/* begin setFree: */
@@ -34716,8 +34704,6 @@
here = here1;
/* begin setObjectFree: */
if ((byteAt(here + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(here + 7, 1);
}
/* begin setFree: */
@@ -36710,8 +36696,6 @@
}
longAtput((objOop2 + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop2 + 7, 1);
}
}
@@ -36719,13 +36703,9 @@
objOop2 = objectAfterlimit(objOop2, segmentLimit);
}
if ((byteAt(segmentWordArray + 7)) == 0xFF) {
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
+ longAtput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
}
else {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(segmentWordArray + 7, 8 / BytesPerOop);
}
if ((checkForLeaks & 16) != 0) {
@@ -44879,8 +44859,6 @@
}
longAtput((objOop + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop + 7, 1);
}
}
@@ -59260,9 +59238,11 @@
if (((longAt(oop)) & 0x3FFFFF) == 0) {
print(" is a free chunk of size ");
printNum(sizeOfFree(oop));
+ print(" 0th: ");
+ printHex(longAt((oop + BaseHeaderSize) + (0 << (shiftForWord()))));
+
/* begin cr */
printf("\n");
-
return;
}
if (((longAt(oop)) & (0x3FFFFF - 8)) == 0) {
Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
- Mon Dec 15 09:43:54 PST 2014
+ Mon Dec 15 12:41:47 PST 2014
Modified: branches/Cog/spursistasrc/vm/cointerp.c
===================================================================
--- branches/Cog/spursistasrc/vm/cointerp.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/spursistasrc/vm/cointerp.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
from
- CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2344,7 +2344,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.980]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.986]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -5591,6 +5591,7 @@
GIV(framePointer) = localFP;
ceEnterCogCodePopReceiverReg();
+ null;
goto l256;
}
localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -5608,7 +5609,7 @@
/* begin fetchNextBytecode */
currentBytecode = (byteAtPointer(++localIP)) + GIV(bytecodeSetSelector);
- /* return self */
+ null;
l256: /* end baseFrameReturn */;
goto l255;
}
@@ -43474,9 +43475,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -43664,9 +43663,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -44689,8 +44686,6 @@
}
longAtput((obj1 + BaseHeaderSize) + (0 << (shiftForWord())), clone2);
if ((byteAt(obj1 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj1 + 7, 1);
}
/* begin forward:to: */
@@ -44716,8 +44711,6 @@
}
longAtput((obj2 + BaseHeaderSize) + (0 << (shiftForWord())), clone1);
if ((byteAt(obj2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj2 + 7, 1);
}
if (((isYoungObject(obj1)) != (isYoungObject(clone2)))
@@ -44838,8 +44831,6 @@
}
longAtput((obj11 + BaseHeaderSize) + (0 << (shiftForWord())), obj21);
if ((byteAt(obj11 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj11 + 7, 1);
}
if (copyHashFlag) {
@@ -47302,8 +47293,6 @@
if (firstOfFreeRun == 0) {
/* begin setObjectFree: */
if ((byteAt(objOop3 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop3 + 7, 1);
}
/* begin setFree: */
@@ -48896,8 +48885,6 @@
here = here1;
/* begin setObjectFree: */
if ((byteAt(here + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(here + 7, 1);
}
/* begin setFree: */
@@ -50869,8 +50856,6 @@
}
longAtput((objOop2 + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop2 + 7, 1);
}
}
@@ -50878,13 +50863,9 @@
objOop2 = objectAfterlimit(objOop2, segmentLimit);
}
if ((byteAt(segmentWordArray + 7)) == 0xFF) {
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
+ longAtput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
}
else {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(segmentWordArray + 7, 8 / BytesPerOop);
}
if ((checkForLeaks & 16) != 0) {
@@ -59151,8 +59132,6 @@
}
longAtput((objOop + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop + 7, 1);
}
}
@@ -70783,9 +70762,11 @@
if (((longAt(oop)) & 0x3FFFFF) == 0) {
print(" is a free chunk of size ");
printNum(sizeOfFree(oop));
+ print(" 0th: ");
+ printHex(longAt((oop + BaseHeaderSize) + (0 << (shiftForWord()))));
+
/* begin cr */
printf("\n");
-
return;
}
if (((longAt(oop)) & (0x3FFFFF - 8)) == 0) {
Modified: branches/Cog/spursistasrc/vm/cointerp.h
===================================================================
--- branches/Cog/spursistasrc/vm/cointerp.h 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/spursistasrc/vm/cointerp.h 2014-12-15 20:44:57 UTC (rev 3185)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
Modified: branches/Cog/spursistasrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spursistasrc/vm/gcc3x-cointerp.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/spursistasrc/vm/gcc3x-cointerp.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
from
- CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2347,7 +2347,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.980]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.986]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -5600,6 +5600,7 @@
GIV(framePointer) = localFP;
ceEnterCogCodePopReceiverReg();
+ null;
goto l256;
}
localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -5617,7 +5618,7 @@
/* begin fetchNextBytecode */
currentBytecode = (byteAtPointer(++localIP)) + GIV(bytecodeSetSelector);
- /* return self */
+ null;
l256: /* end baseFrameReturn */;
goto l255;
}
@@ -43483,9 +43484,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -43673,9 +43672,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -44698,8 +44695,6 @@
}
longAtput((obj1 + BaseHeaderSize) + (0 << (shiftForWord())), clone2);
if ((byteAt(obj1 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj1 + 7, 1);
}
/* begin forward:to: */
@@ -44725,8 +44720,6 @@
}
longAtput((obj2 + BaseHeaderSize) + (0 << (shiftForWord())), clone1);
if ((byteAt(obj2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj2 + 7, 1);
}
if (((isYoungObject(obj1)) != (isYoungObject(clone2)))
@@ -44847,8 +44840,6 @@
}
longAtput((obj11 + BaseHeaderSize) + (0 << (shiftForWord())), obj21);
if ((byteAt(obj11 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj11 + 7, 1);
}
if (copyHashFlag) {
@@ -47311,8 +47302,6 @@
if (firstOfFreeRun == 0) {
/* begin setObjectFree: */
if ((byteAt(objOop3 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop3 + 7, 1);
}
/* begin setFree: */
@@ -48905,8 +48894,6 @@
here = here1;
/* begin setObjectFree: */
if ((byteAt(here + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(here + 7, 1);
}
/* begin setFree: */
@@ -50878,8 +50865,6 @@
}
longAtput((objOop2 + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop2 + 7, 1);
}
}
@@ -50887,13 +50872,9 @@
objOop2 = objectAfterlimit(objOop2, segmentLimit);
}
if ((byteAt(segmentWordArray + 7)) == 0xFF) {
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
+ longAtput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
}
else {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(segmentWordArray + 7, 8 / BytesPerOop);
}
if ((checkForLeaks & 16) != 0) {
@@ -59160,8 +59141,6 @@
}
longAtput((objOop + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop + 7, 1);
}
}
@@ -70792,9 +70771,11 @@
if (((longAt(oop)) & 0x3FFFFF) == 0) {
print(" is a free chunk of size ");
printNum(sizeOfFree(oop));
+ print(" 0th: ");
+ printHex(longAt((oop + BaseHeaderSize) + (0 << (shiftForWord()))));
+
/* begin cr */
printf("\n");
-
return;
}
if (((longAt(oop)) & (0x3FFFFF - 8)) == 0) {
Modified: branches/Cog/spursrc/vm/cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/cointerp.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/spursrc/vm/cointerp.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
from
- CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2335,7 +2335,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.980]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.986]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -5474,7 +5474,6 @@
GIV(framePointer) = localFP;
ceEnterCogCodePopReceiverReg();
- null;
goto l129;
}
localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -5489,7 +5488,7 @@
/* begin fetchNextBytecode */
currentBytecode = byteAtPointer(++localIP);
- null;
+ /* return self */
l129: /* end baseFrameReturn */;
goto l128;
}
@@ -8673,7 +8672,7 @@
/* bytecodePrimBitShift */
{
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -8733,7 +8732,7 @@
null;
goto l75;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -24587,7 +24586,7 @@
primitiveBitShift(void)
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -24634,7 +24633,7 @@
}
return;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -38380,9 +38379,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -38570,9 +38567,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -39595,8 +39590,6 @@
}
longAtput((obj1 + BaseHeaderSize) + (0 << (shiftForWord())), clone2);
if ((byteAt(obj1 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj1 + 7, 1);
}
/* begin forward:to: */
@@ -39622,8 +39615,6 @@
}
longAtput((obj2 + BaseHeaderSize) + (0 << (shiftForWord())), clone1);
if ((byteAt(obj2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj2 + 7, 1);
}
if (((isYoungObject(obj1)) != (isYoungObject(clone2)))
@@ -39744,8 +39735,6 @@
}
longAtput((obj11 + BaseHeaderSize) + (0 << (shiftForWord())), obj21);
if ((byteAt(obj11 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj11 + 7, 1);
}
if (copyHashFlag) {
@@ -42208,8 +42197,6 @@
if (firstOfFreeRun == 0) {
/* begin setObjectFree: */
if ((byteAt(objOop3 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop3 + 7, 1);
}
/* begin setFree: */
@@ -43795,8 +43782,6 @@
here = here1;
/* begin setObjectFree: */
if ((byteAt(here + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(here + 7, 1);
}
/* begin setFree: */
@@ -45768,8 +45753,6 @@
}
longAtput((objOop2 + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop2 + 7, 1);
}
}
@@ -45777,13 +45760,9 @@
objOop2 = objectAfterlimit(objOop2, segmentLimit);
}
if ((byteAt(segmentWordArray + 7)) == 0xFF) {
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
+ longAtput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
}
else {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(segmentWordArray + 7, 8 / BytesPerOop);
}
if ((checkForLeaks & 16) != 0) {
@@ -54050,8 +54029,6 @@
}
longAtput((objOop + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop + 7, 1);
}
}
@@ -65668,9 +65645,11 @@
if (((longAt(oop)) & 0x3FFFFF) == 0) {
print(" is a free chunk of size ");
printNum(sizeOfFree(oop));
+ print(" 0th: ");
+ printHex(longAt((oop + BaseHeaderSize) + (0 << (shiftForWord()))));
+
/* begin cr */
printf("\n");
-
return;
}
if (((longAt(oop)) & (0x3FFFFF - 8)) == 0) {
Modified: branches/Cog/spursrc/vm/cointerp.h
===================================================================
--- branches/Cog/spursrc/vm/cointerp.h 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/spursrc/vm/cointerp.h 2014-12-15 20:44:57 UTC (rev 3185)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
Modified: branches/Cog/spursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/gcc3x-cointerp.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/spursrc/vm/gcc3x-cointerp.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
from
- CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60
+ CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.980 uuid: 3d7d339f-6a22-4bd1-b959-cddf9c41cc60 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2338,7 +2338,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.980]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreterPrimitives VMMaker.oscog-eem.986]";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -5483,7 +5483,6 @@
GIV(framePointer) = localFP;
ceEnterCogCodePopReceiverReg();
- null;
goto l129;
}
localIP = pointerForOop(longAt(localFP + FoxIFSavedIP));
@@ -5498,7 +5497,7 @@
/* begin fetchNextBytecode */
currentBytecode = byteAtPointer(++localIP);
- null;
+ /* return self */
l129: /* end baseFrameReturn */;
goto l128;
}
@@ -8682,7 +8681,7 @@
/* bytecodePrimBitShift */
{
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -8742,7 +8741,7 @@
null;
goto l75;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -24596,7 +24595,7 @@
primitiveBitShift(void)
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
sqInt integerArgument;
- sqLong integerReceiver;
+ usqInt integerReceiver;
sqInt shifted;
char *sp;
@@ -24643,7 +24642,7 @@
}
return;
}
- shifted = ((unsigned sqLong)integerReceiver) >> (0 - integerArgument);
+ shifted = ((usqInt) integerReceiver) >> (0 - integerArgument);
}
shifted = positive32BitIntegerFor(shifted);
/* begin pop:thenPush: */
@@ -38389,9 +38388,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -38579,9 +38576,7 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(freeChunk - BaseHeaderSize, count);
+ longAtput(freeChunk - BaseHeaderSize, count);
/* begin set:classIndexTo:formatTo: */
assert(((ClassArrayCompactIndex >= 0) && (ClassArrayCompactIndex <= (classIndexMask()))));
assert(((2 >= 0) && (2 <= (formatMask()))));
@@ -39604,8 +39599,6 @@
}
longAtput((obj1 + BaseHeaderSize) + (0 << (shiftForWord())), clone2);
if ((byteAt(obj1 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj1 + 7, 1);
}
/* begin forward:to: */
@@ -39631,8 +39624,6 @@
}
longAtput((obj2 + BaseHeaderSize) + (0 << (shiftForWord())), clone1);
if ((byteAt(obj2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj2 + 7, 1);
}
if (((isYoungObject(obj1)) != (isYoungObject(clone2)))
@@ -39753,8 +39744,6 @@
}
longAtput((obj11 + BaseHeaderSize) + (0 << (shiftForWord())), obj21);
if ((byteAt(obj11 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(obj11 + 7, 1);
}
if (copyHashFlag) {
@@ -42217,8 +42206,6 @@
if (firstOfFreeRun == 0) {
/* begin setObjectFree: */
if ((byteAt(objOop3 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop3 + 7, 1);
}
/* begin setFree: */
@@ -43804,8 +43791,6 @@
here = here1;
/* begin setObjectFree: */
if ((byteAt(here + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(here + 7, 1);
}
/* begin setFree: */
@@ -45777,8 +45762,6 @@
}
longAtput((objOop2 + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop2 + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop2 + 7, 1);
}
}
@@ -45786,13 +45769,9 @@
objOop2 = objectAfterlimit(objOop2, segmentLimit);
}
if ((byteAt(segmentWordArray + 7)) == 0xFF) {
- /* begin setOverflowNumSlotsOf:to: */
- flag("endian");
- long32Atput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
+ longAtput(segmentWordArray - BaseHeaderSize, 8 / BytesPerOop);
}
else {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(segmentWordArray + 7, 8 / BytesPerOop);
}
if ((checkForLeaks & 16) != 0) {
@@ -54059,8 +54038,6 @@
}
longAtput((objOop + BaseHeaderSize) + (0 << (shiftForWord())), oldClone);
if ((byteAt(objOop + 7)) == 0) {
- /* begin setRawNumSlotsOf:to: */
- flag("endian");
byteAtput(objOop + 7, 1);
}
}
@@ -65677,9 +65654,11 @@
if (((longAt(oop)) & 0x3FFFFF) == 0) {
print(" is a free chunk of size ");
printNum(sizeOfFree(oop));
+ print(" 0th: ");
+ printHex(longAt((oop + BaseHeaderSize) + (0 << (shiftForWord()))));
+
/* begin cr */
printf("\n");
-
return;
}
if (((longAt(oop)) & (0x3FFFFF - 8)) == 0) {
Modified: branches/Cog/spurstack64src/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/spurstack64src/vm/gcc3x-interp.c 2014-12-15 17:43:51 UTC (rev 3184)
+++ branches/Cog/spurstack64src/vm/gcc3x-interp.c 2014-12-15 20:44:57 UTC (rev 3185)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.984 uuid: 82523b67-016c-4327-b41e-658b54a99470
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
from
- StackInterpreter VMMaker.oscog-eem.984 uuid: 82523b67-016c-4327-b41e-658b54a99470
+ StackInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.984 uuid: 82523b67-016c-4327-b41e-658b54a99470 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.986 uuid: 62703abf-bfd4-4966-a13c-036fa3da9950 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2116,7 +2116,7 @@
/* 574 */ (void (*)(void))0,
/* 575 */ (void (*)(void))0,
0 };
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreterPrimitives VMMaker.oscog-eem.984]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreterPrimitives VMMaker.oscog-eem.986]";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
@@ -25182,9 +25182,10 @@
: freeChunk);
freeChunkWithBytesat((limit - start) - bytes, start + bytes);
GIV(totalFreeOldSpace) -= bytes;
@@ Diff output truncated at 50000 characters. @@
More information about the Vm-dev
mailing list