[Vm-dev] [commit][3305] CogVM source as per VMMaker.oscog-eem.1155
commits at squeakvm.org
commits at squeakvm.org
Thu Apr 2 18:54:59 UTC 2015
Revision: 3305
Author: eliot
Date: 2015-04-02 11:54:58 -0700 (Thu, 02 Apr 2015)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.1155
and fix that compiler warning properly. If one defines
a function return type the arguments are typed there-in.
Sista:
Fix inline primitive for at: and at:put: to be 1 relative. This simplifies the
JIT in 64 bits because the 1 relative correponds to the 1 word difference
between baseHeader and first object field hence generating one less instruction.
Modified Paths:
--------------
branches/Cog/nsspursrc/vm/cogit.c
branches/Cog/nsspursrc/vm/cogit.h
branches/Cog/nsspursrc/vm/cointerp.c
branches/Cog/nsspursrc/vm/cointerp.h
branches/Cog/nsspursrc/vm/gcc3x-cointerp.c
branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c
branches/Cog/nsspurstacksrc/vm/interp.c
branches/Cog/spursistasrc/vm/cogit.c
branches/Cog/spursistasrc/vm/cogit.h
branches/Cog/spursistasrc/vm/cointerp.c
branches/Cog/spursistasrc/vm/cointerp.h
branches/Cog/spursistasrc/vm/gcc3x-cointerp.c
branches/Cog/spursrc/vm/cogit.c
branches/Cog/spursrc/vm/cogit.h
branches/Cog/spursrc/vm/cointerp.c
branches/Cog/spursrc/vm/cointerp.h
branches/Cog/spursrc/vm/gcc3x-cointerp.c
branches/Cog/spurstack64src/vm/gcc3x-interp.c
branches/Cog/spurstack64src/vm/interp.c
branches/Cog/spurstacksrc/vm/gcc3x-interp.c
branches/Cog/spurstacksrc/vm/interp.c
branches/Cog/src/vm/cogit.c
branches/Cog/src/vm/cogit.h
branches/Cog/src/vm/cointerp.c
branches/Cog/src/vm/cointerp.h
branches/Cog/src/vm/cointerpmt.c
branches/Cog/src/vm/cointerpmt.h
branches/Cog/src/vm/gcc3x-cointerp.c
branches/Cog/src/vm/gcc3x-cointerpmt.c
branches/Cog/stacksrc/vm/gcc3x-interp.c
branches/Cog/stacksrc/vm/interp.c
Removed Paths:
-------------
branches/Cog/build.linux32x86/newspeak.sista.v3/
branches/Cog/build.win32x86/newspeak.sista.v3/
branches/Cog/sistasrc/examplePlugins.ext
branches/Cog/sistasrc/examplePlugins.int
branches/Cog/sistasrc/plugins.ext
branches/Cog/sistasrc/plugins.int
branches/Cog/sistasrc/vm/cogit.c
branches/Cog/sistasrc/vm/cogit.h
branches/Cog/sistasrc/vm/cogmethod.h
branches/Cog/sistasrc/vm/cointerp.c
branches/Cog/sistasrc/vm/cointerp.h
branches/Cog/sistasrc/vm/exampleSqNamedPrims.h
branches/Cog/sistasrc/vm/gcc3x-cointerp.c
branches/Cog/sistasrc/vm/interp.h
branches/Cog/sistasrc/vm/vmCallback.h
Property Changed:
----------------
branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
Modified: branches/Cog/nsspursrc/vm/cogit.c
===================================================================
--- branches/Cog/nsspursrc/vm/cogit.c 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/nsspursrc/vm/cogit.c 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.1148 uuid: b67f9693-ad92-4951-ad6b-a62a64bf4ddb
+ CCodeGenerator VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.1148 uuid: b67f9693-ad92-4951-ad6b-a62a64bf4ddb
+ StackToRegisterMappingCogit VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.1148 uuid: b67f9693-ad92-4951-ad6b-a62a64bf4ddb " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1 " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -567,7 +567,7 @@
static void freePICsWithFreedTargets(void);
void freeUnmarkedMachineCode(void);
static sqInt genCheckForInterruptsTrampoline(void);
-static void (*genEnilopmartForandandforCallcalled(sqInt regArg1, sqInt regArg2, sqInt regArg3, sqInt forCall, sqInt trampolineName))(void) NoDbgRegParms;
+static void (*genEnilopmartForandandforCallcalled(sqInt regArg1, sqInt regArg2, sqInt regArg3, sqInt forCall, char *trampolineName))(void) NoDbgRegParms;
static void genEnilopmartReturn(sqInt forCall) NoDbgRegParms;
static void generateCaptureCStackPointers(sqInt captureFramePointer) NoDbgRegParms;
static void generateClosedPICPrototype(void);
@@ -8763,7 +8763,7 @@
reg2val
stackPointer -> reg3val */
-static void (*genEnilopmartForandandforCallcalled(sqInt regArg1, sqInt regArg2, sqInt regArg3, sqInt forCall, sqInt trampolineName))(void)
+static void (*genEnilopmartForandandforCallcalled(sqInt regArg1, sqInt regArg2, sqInt regArg3, sqInt forCall, char *trampolineName))(void)
{
sqInt endAddress;
Modified: branches/Cog/nsspursrc/vm/cogit.h
===================================================================
--- branches/Cog/nsspursrc/vm/cogit.h 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/nsspursrc/vm/cogit.h 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.1148 uuid: b67f9693-ad92-4951-ad6b-a62a64bf4ddb
+ CCodeGenerator VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
*/
Modified: branches/Cog/nsspursrc/vm/cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.c 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/nsspursrc/vm/cointerp.c 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
from
- CoInterpreter VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24
+ CoInterpreter VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1178,7 +1178,7 @@
static sqInt storeImageSegmentIntooutPointersroots(sqInt segmentWordArray, sqInt outPointerArray, sqInt arrayOfRoots) NoDbgRegParms;
sqInt storePointerUncheckedofObjectwithValue(sqInt fieldIndex, sqInt objOop, sqInt valuePointer);
sqInt storePointerofObjectwithValue(sqInt fieldIndex, sqInt objOop, sqInt valuePointer);
-usqInt stringForCString(const char *aCString);
+sqInt stringForCString(const char *aCString);
static sqInt sufficientSpaceAfterGC(sqInt numBytes) NoDbgRegParms;
static sqInt swizzleObjStackAt(sqInt objStackRootIndex) NoDbgRegParms;
void tenuringIncrementalGC(void);
@@ -2371,7 +2371,7 @@
/*560*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
};
char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1153";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1155";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -28656,8 +28656,8 @@
sqInt totalLength1;
sqInt value;
sqInt value1;
- sqInt valueToStore;
- sqInt valueToStore1;
+ usqInt valueToStore;
+ usqInt valueToStore1;
/* begin commonAtPut: */
value = longAt(GIV(stackPointer));
@@ -29910,7 +29910,7 @@
usqInt newObj;
usqInt numBytes;
sqInt numSlots;
- usqInt s;
+ sqInt s;
char *sp;
sqInt sz;
@@ -35348,7 +35348,7 @@
sqInt err;
sqInt hash;
sqInt instSpec;
- usqInt newObj;
+ sqInt newObj;
usqInt newObj1;
usqInt numBytes;
sqInt numSlots;
@@ -35538,7 +35538,7 @@
GIV(needGCFlag) = 1;
forceInterruptCheck();
}
- newObj = ((usqInt) (allocateSlotsInOldSpacebytesformatclassIndex(numSlots, numBytes, instSpec, classIndex)));
+ newObj = allocateSlotsInOldSpacebytesformatclassIndex(numSlots, numBytes, instSpec, classIndex);
goto l1;
}
if (numSlots >= 0xFF) {
@@ -38680,8 +38680,8 @@
sqInt totalLength1;
sqInt value;
sqInt value1;
- sqInt valueToStore;
- sqInt valueToStore1;
+ usqInt valueToStore;
+ usqInt valueToStore1;
/* begin commonAtPut: */
value = longAt(GIV(stackPointer));
@@ -41254,7 +41254,7 @@
sqInt fillValue;
sqInt hash;
sqInt instSpec;
- usqInt newObj;
+ sqInt newObj;
usqInt newObj1;
usqInt numBytes;
usqInt numSlots;
@@ -43147,7 +43147,7 @@
sqInt entry;
sqInt expectedIndex;
sqInt expectedIndex1;
- usqInt freeChunk;
+ sqInt freeChunk;
sqInt i;
sqInt i1;
sqInt index;
@@ -43186,8 +43186,8 @@
sqInt ptr1;
sqInt ptr2;
sqInt slotBytes;
- usqInt smallObj;
- usqInt start;
+ sqInt smallObj;
+ sqInt start;
classIndex = (long32At(aClass + 4)) & 0x3FFFFF;
if (classIndex == 0) {
@@ -46106,7 +46106,7 @@
GIV(needGCFlag) = 1;
forceInterruptCheck();
}
- newObj = ((usqInt) (allocateSlotsInOldSpacebytesformatclassIndex(numSlots, numBytes, fmt, (longAt(objOop)) & 0x3FFFFF)));
+ newObj = allocateSlotsInOldSpacebytesformatclassIndex(numSlots, numBytes, fmt, (longAt(objOop)) & 0x3FFFFF);
goto l1;
}
if (numSlots >= 0xFF) {
@@ -57157,13 +57157,13 @@
sqInt obj21;
sqInt pigBytes;
usqInt prevFree;
- usqInt prevFreeChunk;
+ sqInt prevFreeChunk;
usqInt prevPrevFree;
- usqInt prevPrevFreeChunk;
+ sqInt prevPrevFreeChunk;
sqInt slotBytes;
sqInt slotBytes1;
usqInt there;
- usqInt thisFreeChunk;
+ sqInt thisFreeChunk;
sqInt usedChunk;
here = startAddress;
@@ -60394,8 +60394,8 @@
sqInt prevPrevObj;
sqInt prevPrevObj1;
sqInt ptr;
- usqInt savedInHashes;
- usqInt savedOutHashes;
+ sqInt savedInHashes;
+ sqInt savedOutHashes;
sqInt segAddr;
sqInt segStart;
sqInt slotBytes;
@@ -60862,13 +60862,13 @@
/* Answer a new String copied from a null-terminated C string,
or nil if out of memory. */
-usqInt
+sqInt
stringForCString(const char *aCString)
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
sqInt formatField;
sqInt len;
usqInt newObj;
- usqInt newString;
+ sqInt newString;
usqInt numBytes;
sqInt numSlots;
@@ -61553,7 +61553,7 @@
bridgeFromto(SpurSegmentInfo *aSegment, SpurSegmentInfo *nextSegmentOrNil)
{
sqInt bridgeSpan;
- sqInt clifton;
+ usqInt clifton;
usqInt segEnd;
segEnd = ((aSegment->segSize)) + ((aSegment->segStart));
@@ -61784,7 +61784,7 @@
sqInt largeChild;
sqInt newEndOfMemory;
sqInt next;
- sqInt node;
+ usqInt node;
SpurSegmentInfo *seg;
sqInt smallChild;
sqInt treeNode;
@@ -73373,7 +73373,7 @@
sqInt sp1;
sqInt stSize;
sqInt totalLength;
- sqInt valueToStore;
+ usqInt valueToStore;
hdr = long64At(array);
fmt = (((unsigned sqLong)hdr) >> 24) & 0x1F;
@@ -74636,8 +74636,8 @@
sqInt totalLength;
sqInt totalLength1;
sqInt value;
- sqInt valueToStore;
- sqInt valueToStore1;
+ usqInt valueToStore;
+ usqInt valueToStore1;
value = longAt(GIV(stackPointer));
index = longAt(GIV(stackPointer) + (1 * BytesPerWord));
@@ -76409,7 +76409,7 @@
sqInt rcvr;
char *sp;
sqInt totalLength;
- sqInt valueToStore;
+ usqInt valueToStore;
newValue = longAt(GIV(stackPointer));
/* begin stackIntegerValue: */
@@ -76644,7 +76644,7 @@
sqInt header1;
sqInt i;
sqInt methodHeader;
- usqInt numSlots;
+ sqInt numSlots;
usqInt numSlots1;
sqInt rcvr;
char *sp;
@@ -76700,9 +76700,9 @@
flag("endianness");
assert((classIndexOf(rcvr)) > (isForwardedObjectClassIndexPun()));
numSlots1 = byteAt(rcvr + 7);
- numSlots = (numSlots1 == 0xFF
- ? longAt(rcvr - BaseHeaderSize)
- : numSlots1);
+ numSlots = ((usqInt) ((numSlots1 == 0xFF
+ ? longAt(rcvr - BaseHeaderSize)
+ : numSlots1)));
}
}
else {
Modified: branches/Cog/nsspursrc/vm/cointerp.h
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.h 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/nsspursrc/vm/cointerp.h 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
*/
@@ -256,7 +256,7 @@
sqInt splObj(sqInt index);
usqInt storeCheckBoundary(void);
sqInt storePointerUncheckedofObjectwithValue(sqInt fieldIndex, sqInt objOop, sqInt valuePointer);
-usqInt stringForCString(const char *aCString);
+sqInt stringForCString(const char *aCString);
void tenuringIncrementalGC(void);
sqInt topRemappableOop(void);
sqInt validFreeTree(void);
Modified: branches/Cog/nsspursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/gcc3x-cointerp.c 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/nsspursrc/vm/gcc3x-cointerp.c 2015-04-02 18:54:58 UTC (rev 3305)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
from
- CoInterpreter VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24
+ CoInterpreter VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
*/
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -1181,7 +1181,7 @@
static sqInt storeImageSegmentIntooutPointersroots(sqInt segmentWordArray, sqInt outPointerArray, sqInt arrayOfRoots) NoDbgRegParms;
sqInt storePointerUncheckedofObjectwithValue(sqInt fieldIndex, sqInt objOop, sqInt valuePointer);
sqInt storePointerofObjectwithValue(sqInt fieldIndex, sqInt objOop, sqInt valuePointer);
-usqInt stringForCString(const char *aCString);
+sqInt stringForCString(const char *aCString);
static sqInt sufficientSpaceAfterGC(sqInt numBytes) NoDbgRegParms;
static sqInt swizzleObjStackAt(sqInt objStackRootIndex) NoDbgRegParms;
void tenuringIncrementalGC(void);
@@ -2374,7 +2374,7 @@
/*560*/ -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0,-1,-1
};
char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1153";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreterPrimitives_VMMaker.oscog-eem.1155";
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
volatile int sendTrace;
@@ -28665,8 +28665,8 @@
sqInt totalLength1;
sqInt value;
sqInt value1;
- sqInt valueToStore;
- sqInt valueToStore1;
+ usqInt valueToStore;
+ usqInt valueToStore1;
/* begin commonAtPut: */
value = longAt(GIV(stackPointer));
@@ -29919,7 +29919,7 @@
usqInt newObj;
usqInt numBytes;
sqInt numSlots;
- usqInt s;
+ sqInt s;
char *sp;
sqInt sz;
@@ -35357,7 +35357,7 @@
sqInt err;
sqInt hash;
sqInt instSpec;
- usqInt newObj;
+ sqInt newObj;
usqInt newObj1;
usqInt numBytes;
sqInt numSlots;
@@ -35547,7 +35547,7 @@
GIV(needGCFlag) = 1;
forceInterruptCheck();
}
- newObj = ((usqInt) (allocateSlotsInOldSpacebytesformatclassIndex(numSlots, numBytes, instSpec, classIndex)));
+ newObj = allocateSlotsInOldSpacebytesformatclassIndex(numSlots, numBytes, instSpec, classIndex);
goto l1;
}
if (numSlots >= 0xFF) {
@@ -38689,8 +38689,8 @@
sqInt totalLength1;
sqInt value;
sqInt value1;
- sqInt valueToStore;
- sqInt valueToStore1;
+ usqInt valueToStore;
+ usqInt valueToStore1;
/* begin commonAtPut: */
value = longAt(GIV(stackPointer));
@@ -41263,7 +41263,7 @@
sqInt fillValue;
sqInt hash;
sqInt instSpec;
- usqInt newObj;
+ sqInt newObj;
usqInt newObj1;
usqInt numBytes;
usqInt numSlots;
@@ -43156,7 +43156,7 @@
sqInt entry;
sqInt expectedIndex;
sqInt expectedIndex1;
- usqInt freeChunk;
+ sqInt freeChunk;
sqInt i;
sqInt i1;
sqInt index;
@@ -43195,8 +43195,8 @@
sqInt ptr1;
sqInt ptr2;
sqInt slotBytes;
- usqInt smallObj;
- usqInt start;
+ sqInt smallObj;
+ sqInt start;
classIndex = (long32At(aClass + 4)) & 0x3FFFFF;
if (classIndex == 0) {
@@ -46115,7 +46115,7 @@
GIV(needGCFlag) = 1;
forceInterruptCheck();
}
- newObj = ((usqInt) (allocateSlotsInOldSpacebytesformatclassIndex(numSlots, numBytes, fmt, (longAt(objOop)) & 0x3FFFFF)));
+ newObj = allocateSlotsInOldSpacebytesformatclassIndex(numSlots, numBytes, fmt, (longAt(objOop)) & 0x3FFFFF);
goto l1;
}
if (numSlots >= 0xFF) {
@@ -57166,13 +57166,13 @@
sqInt obj21;
sqInt pigBytes;
usqInt prevFree;
- usqInt prevFreeChunk;
+ sqInt prevFreeChunk;
usqInt prevPrevFree;
- usqInt prevPrevFreeChunk;
+ sqInt prevPrevFreeChunk;
sqInt slotBytes;
sqInt slotBytes1;
usqInt there;
- usqInt thisFreeChunk;
+ sqInt thisFreeChunk;
sqInt usedChunk;
here = startAddress;
@@ -60403,8 +60403,8 @@
sqInt prevPrevObj;
sqInt prevPrevObj1;
sqInt ptr;
- usqInt savedInHashes;
- usqInt savedOutHashes;
+ sqInt savedInHashes;
+ sqInt savedOutHashes;
sqInt segAddr;
sqInt segStart;
sqInt slotBytes;
@@ -60871,13 +60871,13 @@
/* Answer a new String copied from a null-terminated C string,
or nil if out of memory. */
-usqInt
+sqInt
stringForCString(const char *aCString)
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
sqInt formatField;
sqInt len;
usqInt newObj;
- usqInt newString;
+ sqInt newString;
usqInt numBytes;
sqInt numSlots;
@@ -61562,7 +61562,7 @@
bridgeFromto(SpurSegmentInfo *aSegment, SpurSegmentInfo *nextSegmentOrNil)
{
sqInt bridgeSpan;
- sqInt clifton;
+ usqInt clifton;
usqInt segEnd;
segEnd = ((aSegment->segSize)) + ((aSegment->segStart));
@@ -61793,7 +61793,7 @@
sqInt largeChild;
sqInt newEndOfMemory;
sqInt next;
- sqInt node;
+ usqInt node;
SpurSegmentInfo *seg;
sqInt smallChild;
sqInt treeNode;
@@ -73382,7 +73382,7 @@
sqInt sp1;
sqInt stSize;
sqInt totalLength;
- sqInt valueToStore;
+ usqInt valueToStore;
hdr = long64At(array);
fmt = (((unsigned sqLong)hdr) >> 24) & 0x1F;
@@ -74645,8 +74645,8 @@
sqInt totalLength;
sqInt totalLength1;
sqInt value;
- sqInt valueToStore;
- sqInt valueToStore1;
+ usqInt valueToStore;
+ usqInt valueToStore1;
value = longAt(GIV(stackPointer));
index = longAt(GIV(stackPointer) + (1 * BytesPerWord));
@@ -76418,7 +76418,7 @@
sqInt rcvr;
char *sp;
sqInt totalLength;
- sqInt valueToStore;
+ usqInt valueToStore;
newValue = longAt(GIV(stackPointer));
/* begin stackIntegerValue: */
@@ -76653,7 +76653,7 @@
sqInt header1;
sqInt i;
sqInt methodHeader;
- usqInt numSlots;
+ sqInt numSlots;
usqInt numSlots1;
sqInt rcvr;
char *sp;
@@ -76709,9 +76709,9 @@
flag("endianness");
assert((classIndexOf(rcvr)) > (isForwardedObjectClassIndexPun()));
numSlots1 = byteAt(rcvr + 7);
- numSlots = (numSlots1 == 0xFF
- ? longAt(rcvr - BaseHeaderSize)
- : numSlots1);
+ numSlots = ((usqInt) ((numSlots1 == 0xFF
+ ? longAt(rcvr - BaseHeaderSize)
+ : numSlots1)));
}
}
else {
Modified: branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2015-04-02 18:54:58 UTC (rev 3305)
@@ -2,11 +2,11 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
from
- StackInterpreter VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24
+ StackInterpreter VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2117,7 +2117,7 @@
/* 575 */ (void (*)(void))0,
0 };
char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1153";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1155";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
Modified: branches/Cog/nsspurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/interp.c 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/nsspurstacksrc/vm/interp.c 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
from
- StackInterpreter VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24
+ StackInterpreter VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1
*/
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1153 uuid: 078f2fbd-0bb3-4773-a8b7-73a06a398a24 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.1155 uuid: 5b49a52a-92ca-464e-b0cc-bdda9118a6a1 " __DATE__ ;
char *__interpBuildInfo = __buildInfo;
@@ -2114,7 +2114,7 @@
/* 575 */ (void (*)(void))0,
0 };
char expensiveAsserts = 0;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1153";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreterPrimitives_VMMaker.oscog-eem.1155";
volatile int sendTrace;
sqInt suppressHeartbeatFlag;
Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
- Thu Apr 2 11:11:59 PDT 2015
+ Thu Apr 2 11:48:20 PDT 2015
Deleted: branches/Cog/sistasrc/examplePlugins.ext
===================================================================
--- branches/Cog/sistasrc/examplePlugins.ext 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/sistasrc/examplePlugins.ext 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,11 +0,0 @@
-# This is an example external plugin list.
-# Edit plugins.ext in vm build dir to specify the external plugins to be built.
-EXTERNAL_PLUGINS = \
-BochsIA32Plugin \
-CroquetPlugin \
-SqueakFFIPrims \
-SqueakSSL \
-FloatArrayPlugin \
-FloatMathPlugin \
-Mpeg3Plugin \
-UnixOSProcessPlugin
Deleted: branches/Cog/sistasrc/examplePlugins.int
===================================================================
--- branches/Cog/sistasrc/examplePlugins.int 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/sistasrc/examplePlugins.int 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,39 +0,0 @@
-# This is an example internal plugin list.
-# Edit plugins.int in vm build dir to specify internal plugins to be built and
-# linked into the vm.
-INTERNAL_PLUGINS = \
-ADPCMCodecPlugin \
-AsynchFilePlugin \
-B3DAcceleratorPlugin \
-B2DPlugin \
-BitBltPlugin \
-BMPReadWriterPlugin \
-ZipPlugin \
-DropPlugin \
-DSAPrims \
-FFTPlugin \
-FilePlugin \
-HostWindowPlugin \
-IA32ABI \
-InternetConfigPlugin \
-JoystickTabletPlugin \
-JPEGReaderPlugin \
-JPEGReadWriter2Plugin \
-Klatt \
-LargeIntegers \
-LocalePlugin \
-MacMenubarPlugin \
-Matrix2x3Plugin \
-MIDIPlugin \
-MiscPrimitivePlugin \
-RePlugin \
-SecurityPlugin \
-SerialPlugin \
-SocketPlugin \
-SoundCodecPrims \
-SoundGenerationPlugin \
-SoundPlugin \
-StarSqueakPlugin \
-SurfacePlugin \
-UUIDPlugin \
-VMProfileMacSupportPlugin \
Deleted: branches/Cog/sistasrc/plugins.ext
===================================================================
--- branches/Cog/sistasrc/plugins.ext 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/sistasrc/plugins.ext 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,10 +0,0 @@
-# Copied, perhaps edited, from ../src/examplePlugins.ext
-EXTERNAL_PLUGINS = \
-BochsIA32Plugin \
-CroquetPlugin \
-SqueakFFIPrims \
-SqueakSSL \
-FloatArrayPlugin \
-FloatMathPlugin \
-Mpeg3Plugin \
-UnixOSProcessPlugin
Deleted: branches/Cog/sistasrc/plugins.int
===================================================================
--- branches/Cog/sistasrc/plugins.int 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/sistasrc/plugins.int 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,37 +0,0 @@
-# Copied, perhaps edited, from ../src/examplePlugins.int
-INTERNAL_PLUGINS = \
-ADPCMCodecPlugin \
-AsynchFilePlugin \
-B3DAcceleratorPlugin \
-B2DPlugin \
-BitBltPlugin \
-BMPReadWriterPlugin \
-ZipPlugin \
-DropPlugin \
-DSAPrims \
-FFTPlugin \
-FilePlugin \
-HostWindowPlugin \
-IA32ABI \
-InternetConfigPlugin \
-JoystickTabletPlugin \
-JPEGReaderPlugin \
-JPEGReadWriter2Plugin \
-Klatt \
-LargeIntegers \
-LocalePlugin \
-MacMenubarPlugin \
-Matrix2x3Plugin \
-MIDIPlugin \
-MiscPrimitivePlugin \
-RePlugin \
-SecurityPlugin \
-SerialPlugin \
-SocketPlugin \
-SoundCodecPrims \
-SoundGenerationPlugin \
-SoundPlugin \
-StarSqueakPlugin \
-SurfacePlugin \
-UUIDPlugin \
-VMProfileMacSupportPlugin \
Deleted: branches/Cog/sistasrc/vm/cogit.c
===================================================================
--- branches/Cog/sistasrc/vm/cogit.c 2015-04-02 18:11:56 UTC (rev 3304)
+++ branches/Cog/sistasrc/vm/cogit.c 2015-04-02 18:54:58 UTC (rev 3305)
@@ -1,21673 +0,0 @@
-/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.1148 uuid: b67f9693-ad92-4951-ad6b-a62a64bf4ddb
- from
- SistaStackToRegisterMappingCogit VMMaker.oscog-eem.1148 uuid: b67f9693-ad92-4951-ad6b-a62a64bf4ddb
- */
-static char __buildInfo[] = "SistaStackToRegisterMappingCogit VMMaker.oscog-eem.1148 uuid: b67f9693-ad92-4951-ad6b-a62a64bf4ddb " __DATE__ ;
-char *__cogitBuildInfo = __buildInfo;
-
-
-
-#include <stddef.h>
-#include "sq.h"
-#include "sqCogStackAlignment.h"
-#include "dispdbg.h"
-#include "cogmethod.h"
-#if COGMTVM
-#include "cointerpmt.h"
-#else
-#include "cointerp.h"
-#endif
-#include "cogit.h"
-
-typedef struct _AbstractInstruction {
- char opcode;
- char machineCodeSize;
- char maxSize;
- unsigned long operands [3];
- unsigned long address;
- struct _AbstractInstruction *dependent;
- unsigned char machineCode [10];
- } AbstractInstruction;
-
-#define CogIA32Compiler AbstractInstruction
-
-
-typedef struct {
- AbstractInstruction *fakeHeader;
- AbstractInstruction *fillInstruction;
- sqInt numArgs;
- sqInt numCopied;
- sqInt numInitialNils;
- sqInt startpc;
- AbstractInstruction *entryLabel;
- AbstractInstruction *stackCheckLabel;
- sqInt span;
- } BlockStart;
-
-#define CogBlockStart BlockStart
-
-
-typedef struct _BytecodeDescriptor {
- sqInt (*generator )(void);
- sqInt (*spanFunction )(struct _BytecodeDescriptor *,sqInt,sqInt,sqInt);
- sqInt (*needsFrameFunction )(sqInt);
- signed char stackDelta;
- unsigned char opcode;
- unsigned char numBytes;
- unsigned isBranchTrue : 1;
- unsigned isBranchFalse : 1;
- unsigned isReturn : 1;
- unsigned isBlockCreation : 1;
- unsigned isMapped : 1;
- unsigned isMappedInBlock : 1;
- unsigned isExtension : 1;
- unsigned hasIRC : 1;
- } BytecodeDescriptor;
-
-#define CogBytecodeDescriptor BytecodeDescriptor
-
-
-typedef struct {
- sqInt annotation;
- AbstractInstruction *instruction;
- } InstructionAnnotation;
-
-#define CogInstructionAnnotation InstructionAnnotation
-
-
-typedef struct {
- sqInt (*primitiveGenerator )(void);
- sqInt primNumArgs;
- sqInt (*enabled )(sqInt);
- } PrimitiveDescriptor;
-
-#define CogPrimitiveDescriptor PrimitiveDescriptor
-
-
-typedef struct {
- AbstractInstruction *targetInstruction;
- sqInt instructionIndex;
- sqInt simStackPtr;
- } BytecodeFixup;
-
-#define CogSSBytecodeFixup BytecodeFixup
-
-
-typedef struct {
- char type;
- char spilled;
- char annotateUse;
- sqInt registerr;
- sqInt offset;
- sqInt constant;
- sqInt bcptr;
- } CogSimStackEntry;
-
-
-typedef struct {
- sqInt isReceiverResultRegLive;
- CogSimStackEntry *ssEntry;
- } CogSSOptStatus;
-
-
-
-/*** Constants ***/
-#define AddCqR 91
-#define AddCwR 98
-#define AddRdRd 106
-#define AddRR 84
-#define AlignmentNops 2
-#define AllButTypeMask 0xFFFFFFFCUL
-#define AltBlockCreationBytecodeSize 3
-#define AltFirstSpecialSelector 96
-#define AndCqR 93
-#define AndCwR 100
-#define AndRR 86
-#define AnnotationShift 5
-#define Arg0Reg -7
-#define Arg1Reg -8
-#define ArithmeticShiftRightCqR 77
-#define ArithmeticShiftRightRR 78
-#define BadRegisterSet 1
-#define BlockCreationBytecodeSize 4
-#define Call 9
-#define CDQ 113
-#define ClassArrayCompactIndex 3
-#define ClassFloatCompactIndex 6
-#define ClassMethodContextCompactIndex 14
-#define ClassReg -5
-#define ClassSmallInteger 5
-#define ClosureFirstCopiedValueIndex 3
-#define ClosureNumArgsIndex 2
-#define ClosureOuterContextIndex 0
-#define ClosureStartPCIndex 1
-#define CMBlock 3
-#define CMClosedPIC 4
-#define CMFree 1
-#define CMMaxUsageCount 7
-#define CMMethod 2
-#define CMOpenPIC 5
-#define CMPXCHGAwR 121
-#define CMPXCHGMwrR 122
-#define CmpCqR 90
-#define CmpCwR 97
-#define CmpRdRd 105
-#define CmpRR 83
-#define CompactClasses 28
-#define ConstZero 1
-#define ConvertRRd 112
-#define CounterBytes 4
-#define CPUID 116
-#define Debug DEBUGVM
-#define DisplacementMask 0x1F
-#define DisplacementX2N 32
-#define DivRdRd 109
-#define DPFPReg0 -9
-#define DPFPReg1 -10
-#define DPFPReg2 -11
-#define DPFPReg3 -12
-#define DPFPReg4 -13
-#define DPFPReg5 -14
-#define DPFPReg6 -15
-#define DPFPReg7 -16
-#define EAX 0
-#define EBP 5
-#define EBX 3
-#define ECX 1
-#define EDI 7
-#define EDX 2
-#define EncounteredUnknownBytecode -6
-#define ESI 6
-#define ESP 4
-#define Fill16 5
-#define Fill32 6
-#define FillFromWord 7
-#define FirstAnnotation 64
-#define FirstJump 12
-#define FirstShortJump 15
-#define FirstSpecialSelector 176
-#define FoxCallerSavedIP 4
-#define FoxMethod -4
-#define FoxMFReceiver -12
-#define FoxThisContext -8
-#define FPReg -1
-#define GCModeBecome 8
-#define GCModeFull 1
-#define GCModeNewSpace 2
-#define GPRegMax -3
-#define GPRegMin -8
-#define HasBytecodePC 5
-#define HashBitsOffset 17
-#define HashMaskUnshifted 0xFFF
-#define HeaderIndex 0
-#define HeaderTypeShort 3
-#define HeaderTypeSizeAndClass 0
-#define IDIVR 114
-#define IMULRR 115
-#define InstanceSpecificationIndex 2
-#define InstructionPointerIndex 1
-#define InsufficientCodeSpace -2
-#define IsAbsPCReference 4
-#define IsDisplacementX2N 1
-#define IsNSSendCall null
-#define IsObjectReference 3
-#define IsRelativeCall 6
-#define IsSendCall 7
-#define Jump 15
-#define JumpAbove 30
-#define JumpAboveOrEqual 29
-#define JumpBelow 28
-#define JumpBelowOrEqual 31
-#define JumpCarry 22
-#define JumpFPEqual 32
-#define JumpFPGreater 36
-#define JumpFPGreaterOrEqual 37
-#define JumpFPLess 34
-#define JumpFPLessOrEqual 35
-#define JumpFPNotEqual 33
-#define JumpFPOrdered 38
-#define JumpFPUnordered 39
-#define JumpGreater 26
-#define JumpGreaterOrEqual 25
-#define JumpLess 24
-#define JumpLessOrEqual 27
-#define JumpLong 12
-#define JumpLongNonZero 14
-#define JumpLongZero 13
-#define JumpNegative 18
-#define JumpNoCarry 23
-#define JumpNonNegative 19
-#define JumpNonZero 17
-#define JumpNoOverflow 21
-#define JumpOverflow 20
-#define JumpR 11
-#define JumpZero 16
-#define Label 1
-#define LastJump 39
-#define LFENCE 117
-#define LinkReg -17
-#define LOCK 120
-#define LoadEffectiveAddressMwrR 74
-#define LogicalShiftLeftCqR 81
-#define LogicalShiftLeftRR 82
-#define LogicalShiftRightCqR 79
-#define LogicalShiftRightRR 80
-#define LongSizeMask 0xFFFFFFFCUL
-#define MapEnd 0
-#define MaxCompiledPrimitiveIndex 222
-#define MaxCounterValue 0xFFFF
-#define MaxMethodSize 65535
-#define MaxNegativeErrorCode -8
-#define MaxNumArgs 15
-#define MaxStackAllocSize 1572864
-#define MaxStackCheckOffset 0xFFF
-#define MaxUnitDisplacement 31
-#define MaxX2NDisplacement 992
-#define MethodCacheClass 2
-#define MethodCacheMask 0xFFC
-#define MethodCacheMethod 3
-#define MethodCacheSelector 1
-#define MethodIndex 3
-#define MethodTooBig -4
-#define MFENCE 118
-#define MFMethodFlagHasContextFlag 1
-#define MFMethodFlagIsBlockFlag 2
-#define ModReg 3
-#define ModRegInd 0
-#define ModRegRegDisp32 2
-#define ModRegRegDisp8 1
-#define MoveAwR 41
-#define MoveCqR 63
-#define MoveCwR 64
-#define MoveM16rR 51
-#define MoveM64rRd 68
-#define MoveMbrR 59
-#define MoveMwrR 45
-#define MoveRAw 42
-#define MoveRdM64r 69
-#define MoveRdRd 67
-#define MoveRMbr 60
-#define MoveRMwr 46
-#define MoveRR 40
-#define MoveRXbrR 62
-#define MoveRXwrR 48
-#define MoveXbrRR 61
-#define MoveXwrRR 47
-#define MULTIPLEBYTECODESETS 1
-#define MulRdRd 108
-#define NegateR 76
-#define NewspeakVM 0
-#define Nop 8
-#define NotFullyInitialized -1
-#define NumObjRefsInRuntime 0
-#define NumOopsPerNSC 5
-#define NumSendTrampolines 4
-#define NumTrampolines 52
-#define OrCqR 94
-#define OrCwR 101
-#define OrRR 87
-#define PCReg -19
-#define PopR 70
-#define PrefetchAw 73
-#define PrimCallCollectsProfileSamples 8
-#define PrimCallDoNotJIT 32
-#define PrimCallMayCallBack 4
-#define PrimCallNeedsNewMethod 1
-#define PrimCallNeedsPrimitiveFunction 2
-#define PrimErrNoMemory 9
-#define PrimErrWritePastObject 17
-#define PushCw 72
-#define PushR 71
-#define ReceiverIndex 5
-#define ReceiverResultReg -3
-#define RetN 10
-#define RISCTempReg -18
-#define RootBit 0x40000000
-#define RootBitDigitLength 4
-#define SelectorCannotInterpret 34
-#define SelectorDoesNotUnderstand 20
-#define SenderIndex 0
-#define SendNumArgsReg -6
-#define SFENCE 119
-#define ShouldNotJIT -8
-#define SIB1 0
-#define SIB4 2
-#define SistaVM 1
-#define Size4Bit 0
-#define SizeMask 0xFC
-#define SPReg -2
-#define SqrtRd 111
-#define SSBaseOffset 1
-#define SSConstant 2
-#define SSRegister 3
-#define SSSpill 4
-#define SubCqR 92
-#define SubCwR 99
-#define SubRdRd 107
-#define SubRR 85
-#define TempReg -4
-#define TypeMask 0x3
-#define UnimplementedPrimitive -7
-#define ValueIndex 1
-#define VarBaseReg -20
-#define XCHGAwR 123
-#define XCHGMwrR 124
-#define XCHGRR 125
-#define XMM0L 0
-#define XMM1L 2
-#define XMM2L 4
-#define XMM3L 6
-#define XMM4L 8
-#define XMM5L 10
-#define XMM6L 12
-#define XMM7L 14
-#define XorCwR 102
-#define XorRR 88
-#define YoungSelectorInPIC -5
-
-
-/*** Function Prototypes ***/
-
-
-#if !PRODUCTION && defined(__GNUC__) && !defined(NoDbgRegParms)
-# define NoDbgRegParms __attribute__ ((regparm (0)))
-#endif
-
-#if !defined(NoDbgRegParms)
-# define NoDbgRegParms /*empty*/
-#endif
-
-
-
-#if defined(__GNUC__) && !defined(NeverInline)
-# define NeverInline __attribute__ ((noinline))
-#endif
-
-#if !defined(NeverInline)
-# define NeverInline /*empty*/
-#endif
-
-static sqInt abstractRegisterForConcreteRegister(AbstractInstruction * self_in_abstractRegisterForConcreteRegister, sqInt reg) NoDbgRegParms;
-static AbstractInstruction * addDependent(AbstractInstruction * self_in_addDependent, AbstractInstruction *anInstruction) NoDbgRegParms;
-static sqInt availableRegisterOrNilFor(AbstractInstruction * self_in_availableRegisterOrNilFor, sqInt liveRegsMask) NoDbgRegParms;
-static sqInt genAlignCStackSavingRegistersnumArgswordAlignment(AbstractInstruction * self_in_genAlignCStackSavingRegistersnumArgswordAlignment, sqInt saveRegs, sqInt numArgs, sqInt alignment) NoDbgRegParms;
-static AbstractInstruction * generateICacheFlush(AbstractInstruction * self_in_generateICacheFlush) NoDbgRegParms;
-static AbstractInstruction * genWriteCResultIntoReg(AbstractInstruction * self_in_genWriteCResultIntoReg, sqInt abstractRegister) NoDbgRegParms;
-static AbstractInstruction * getJmpTarget(AbstractInstruction * self_in_getJmpTarget) NoDbgRegParms;
-static sqInt isAFixup(AbstractInstruction * self_in_isAFixup, void *fixupOrAddress) NoDbgRegParms;
-static sqInt isAnInstruction(AbstractInstruction * self_in_isAnInstruction, AbstractInstruction *addressOrInstruction) NoDbgRegParms;
-static sqInt isJump(AbstractInstruction * self_in_isJump) NoDbgRegParms;
-static sqInt isLongJump(AbstractInstruction * self_in_isLongJump) NoDbgRegParms;
-static unsigned long labelOffset(AbstractInstruction * self_in_labelOffset) NoDbgRegParms;
-static sqInt numICacheFlushOpcodes(AbstractInstruction * self_in_numICacheFlushOpcodes) NoDbgRegParms;
-static AbstractInstruction * resolveJumpTarget(AbstractInstruction * self_in_resolveJumpTarget) NoDbgRegParms;
-static sqInt setLabelOffset(AbstractInstruction * self_in_setLabelOffset, sqInt aValue) NoDbgRegParms;
-static AbstractInstruction * updateLabel(AbstractInstruction * self_in_updateLabel, AbstractInstruction *labelInstruction) NoDbgRegParms;
-static sqInt wantsNearAddressFor(AbstractInstruction * self_in_wantsNearAddressFor, sqInt anObject) NoDbgRegParms;
-static CogMethod * cmHomeMethod(CogBlockMethod * self_in_cmHomeMethod) NoDbgRegParms;
-static sqInt isBranch(BytecodeDescriptor * self_in_isBranch) NoDbgRegParms;
-static sqInt isUnconditionalBranch(BytecodeDescriptor * self_in_isUnconditionalBranch) NoDbgRegParms;
-static sqInt callerSavedRegisterMask(AbstractInstruction * self_in_callerSavedRegisterMask) NoDbgRegParms;
-static sqInt callInstructionByteSize(AbstractInstruction * self_in_callInstructionByteSize) NoDbgRegParms;
-static sqInt callTargetFromReturnAddress(AbstractInstruction * self_in_callTargetFromReturnAddress, sqInt callSiteReturnAddress) NoDbgRegParms;
-static sqInt computeMaximumSize(AbstractInstruction * self_in_computeMaximumSize) NoDbgRegParms;
-static sqInt computeShiftRRSize(AbstractInstruction * self_in_computeShiftRRSize) NoDbgRegParms;
-static sqInt concreteDPFPRegister(AbstractInstruction * self_in_concreteDPFPRegister, sqInt registerIndex) NoDbgRegParms;
-static sqInt concreteRegister(AbstractInstruction * self_in_concreteRegister, sqInt registerIndex) NoDbgRegParms;
-static sqInt concretizeAt(AbstractInstruction * self_in_concretizeAt, sqInt actualAddress) NoDbgRegParms;
-static sqInt concretizeFill16(AbstractInstruction * self_in_concretizeFill16) NoDbgRegParms;
-static sqInt concretizeFill32(AbstractInstruction * self_in_concretizeFill32) NoDbgRegParms;
-static sqInt concretizeFillFromWord(AbstractInstruction * self_in_concretizeFillFromWord) NoDbgRegParms;
-static sqInt cResultRegister(AbstractInstruction * self_in_cResultRegister) NoDbgRegParms;
-static void dispatchConcretize(AbstractInstruction * self_in_dispatchConcretize) NoDbgRegParms;
-static AbstractInstruction * genDivRRQuoRem(AbstractInstruction * self_in_genDivRRQuoRem, sqInt abstractRegDivisor, sqInt abstractRegDividend, sqInt abstractRegQuotient, sqInt abstractRegRemainder) NoDbgRegParms;
-static AbstractInstruction * generateCheckFeatures(AbstractInstruction * self_in_generateCheckFeatures) NoDbgRegParms;
-static AbstractInstruction * generateLowLevelTryLock(AbstractInstruction * self_in_generateLowLevelTryLock, sqInt vmOwnerLockAddress) NoDbgRegParms;
-static AbstractInstruction * generateLowLevelUnlock(AbstractInstruction * self_in_generateLowLevelUnlock, sqInt vmOwnerLockAddress) NoDbgRegParms;
-static AbstractInstruction * genGetLeafCallStackPointerFunction(AbstractInstruction * self_in_genGetLeafCallStackPointerFunction) NoDbgRegParms;
-static sqInt genLoadCStackPointer(AbstractInstruction * self_in_genLoadCStackPointer) NoDbgRegParms;
-static sqInt genLoadCStackPointers(AbstractInstruction * self_in_genLoadCStackPointers) NoDbgRegParms;
-static sqInt genLoadStackPointers(AbstractInstruction * self_in_genLoadStackPointers) NoDbgRegParms;
-static AbstractInstruction * genMulRR(AbstractInstruction * self_in_genMulRR, sqInt regSource, sqInt regDest) NoDbgRegParms;
-static sqInt genPassConstasArgument(AbstractInstruction * self_in_genPassConstasArgument, sqInt constant, sqInt zeroRelativeArgIndex) NoDbgRegParms;
-static sqInt genPassRegasArgument(AbstractInstruction * self_in_genPassRegasArgument, sqInt abstractRegister, sqInt zeroRelativeArgIndex) NoDbgRegParms;
-static AbstractInstruction * genPushRegisterArgsForAbortMissNumArgs(AbstractInstruction * self_in_genPushRegisterArgsForAbortMissNumArgs, sqInt numArgs) NoDbgRegParms;
-static AbstractInstruction * genPushRegisterArgsForNumArgs(AbstractInstruction * self_in_genPushRegisterArgsForNumArgs, sqInt numArgs) NoDbgRegParms;
-static sqInt genRemoveNArgsFromStack(AbstractInstruction * self_in_genRemoveNArgsFromStack, sqInt n) NoDbgRegParms;
-static sqInt genRestoreRegs(AbstractInstruction * self_in_genRestoreRegs) NoDbgRegParms;
-static sqInt genRestoreRegsExcept(AbstractInstruction * self_in_genRestoreRegsExcept, sqInt abstractReg) NoDbgRegParms;
-static sqInt genSaveRegisters(AbstractInstruction * self_in_genSaveRegisters) NoDbgRegParms;
-static sqInt genSaveStackPointers(AbstractInstruction * self_in_genSaveStackPointers) NoDbgRegParms;
-static AbstractInstruction * genSubstituteReturnAddress(AbstractInstruction * self_in_genSubstituteReturnAddress, sqInt retpc) NoDbgRegParms;
-static sqInt hasLinkRegister(AbstractInstruction * self_in_hasLinkRegister) NoDbgRegParms;
-static sqInt hasSSE2Instructions(AbstractInstruction * self_in_hasSSE2Instructions) NoDbgRegParms;
-static sqInt hasSSEInstructions(AbstractInstruction * self_in_hasSSEInstructions) NoDbgRegParms;
-static sqInt inlineCacheTagAt(AbstractInstruction * self_in_inlineCacheTagAt, sqInt callSiteReturnAddress) NoDbgRegParms;
-static sqInt instructionSizeAt(AbstractInstruction * self_in_instructionSizeAt, sqInt pc) NoDbgRegParms;
-static sqInt isCallPreceedingReturnPC(AbstractInstruction * self_in_isCallPreceedingReturnPC, sqInt mcpc) NoDbgRegParms;
-static sqInt isJumpAt(AbstractInstruction * self_in_isJumpAt, sqInt pc) NoDbgRegParms;
-static sqInt isPCDependent(AbstractInstruction * self_in_isPCDependent) NoDbgRegParms;
-static sqInt isQuick(AbstractInstruction * self_in_isQuick, unsigned long operand) NoDbgRegParms;
-static AbstractInstruction * jmpTarget(AbstractInstruction * self_in_jmpTarget, AbstractInstruction *anAbstractInstruction) NoDbgRegParms;
-static sqInt jumpLongByteSize(AbstractInstruction * self_in_jumpLongByteSize) NoDbgRegParms;
-static sqInt jumpLongConditionalByteSize(AbstractInstruction * self_in_jumpLongConditionalByteSize) NoDbgRegParms;
-static sqInt jumpLongTargetBeforeFollowingAddress(AbstractInstruction * self_in_jumpLongTargetBeforeFollowingAddress, sqInt mcpc) NoDbgRegParms;
-static sqInt jumpShortByteSize(AbstractInstruction * self_in_jumpShortByteSize) NoDbgRegParms;
-static sqInt jumpTargetPCAt(AbstractInstruction * self_in_jumpTargetPCAt, sqInt pc) NoDbgRegParms;
-static sqInt leafCallStackPointerDelta(AbstractInstruction * self_in_leafCallStackPointerDelta) NoDbgRegParms;
-static sqInt literalBeforeFollowingAddress(AbstractInstruction * self_in_literalBeforeFollowingAddress, sqInt followingAddress) NoDbgRegParms;
-static sqInt loadLiteralByteSize(AbstractInstruction * self_in_loadLiteralByteSize) NoDbgRegParms;
-static sqInt machineCodeBytes(AbstractInstruction * self_in_machineCodeBytes) NoDbgRegParms;
-static AbstractInstruction * maybeEstablishVarBase(AbstractInstruction * self_in_maybeEstablishVarBase) NoDbgRegParms;
-static sqInt modRMRO(AbstractInstruction * self_in_modRMRO, sqInt mod, sqInt regMode, sqInt regOpcode) NoDbgRegParms;
-static AbstractInstruction * nopsFromto(AbstractInstruction * self_in_nopsFromto, sqInt startAddr, sqInt endAddr) NoDbgRegParms;
-static sqInt numCheckFeaturesOpcodes(AbstractInstruction * self_in_numCheckFeaturesOpcodes) NoDbgRegParms;
-static sqInt numLowLevelLockOpcodes(AbstractInstruction * self_in_numLowLevelLockOpcodes) NoDbgRegParms;
-static AbstractInstruction * padIfPossibleWithNopsFromto(AbstractInstruction * self_in_padIfPossibleWithNopsFromto, sqInt startAddr, sqInt endAddr) NoDbgRegParms;
-static AbstractInstruction * relocateCallBeforeReturnPCby(AbstractInstruction * self_in_relocateCallBeforeReturnPCby, sqInt retpc, sqInt delta) NoDbgRegParms;
-static AbstractInstruction * relocateJumpBeforeFollowingAddressby(AbstractInstruction * self_in_relocateJumpBeforeFollowingAddressby, sqInt pc, sqInt delta) NoDbgRegParms;
-static AbstractInstruction * relocateMethodReferenceBeforeAddressby(AbstractInstruction * self_in_relocateMethodReferenceBeforeAddressby, sqInt pc, sqInt delta) NoDbgRegParms;
-static sqInt rewriteCallAttarget(AbstractInstruction * self_in_rewriteCallAttarget, usqInt callSiteReturnAddress, usqInt callTargetAddress) NoDbgRegParms;
-static sqInt rewriteInlineCacheAttagtarget(AbstractInstruction * self_in_rewriteInlineCacheAttagtarget, usqInt callSiteReturnAddress, sqInt cacheTag, usqInt callTargetAddress) NoDbgRegParms;
-static AbstractInstruction * rewriteInlineCacheTagat(AbstractInstruction * self_in_rewriteInlineCacheTagat, sqInt cacheTag, sqInt callSiteReturnAddress) NoDbgRegParms;
-static sqInt rewriteJumpLongAttarget(AbstractInstruction * self_in_rewriteJumpLongAttarget, sqInt callSiteReturnAddress, sqInt callTargetAddress) NoDbgRegParms;
-static sqInt setsConditionCodesFor(AbstractInstruction * self_in_setsConditionCodesFor, sqInt aConditionalJumpOpcode) NoDbgRegParms;
-static sqInt shiftSetsConditionCodesFor(AbstractInstruction * self_in_shiftSetsConditionCodesFor, sqInt aConditionalJumpOpcode) NoDbgRegParms;
-static sqInt sizeHasModrmat(AbstractInstruction * self_in_sizeHasModrmat, sqInt op, sqInt pc) NoDbgRegParms;
-static sqInt sizeImmediateGroup1at(AbstractInstruction * self_in_sizeImmediateGroup1at, sqInt op, sqInt pc) NoDbgRegParms;
-static sqInt sizePCDependentInstructionAt(AbstractInstruction * self_in_sizePCDependentInstructionAt, sqInt eventualAbsoluteAddress) NoDbgRegParms;
-static sqInt stackBytesForNumArgs(AbstractInstruction * self_in_stackBytesForNumArgs, sqInt numArgs) NoDbgRegParms;
-static sqInt stackPageInterruptHeadroomBytes(AbstractInstruction * self_in_stackPageInterruptHeadroomBytes) NoDbgRegParms;
-static AbstractInstruction * storeLiteralbeforeFollowingAddress(AbstractInstruction * self_in_storeLiteralbeforeFollowingAddress, sqInt literal, sqInt followingAddress) NoDbgRegParms;
-static sqInt sib(AbstractInstruction * self_in_sib, sqInt scale, sqInt indexReg, sqInt baseReg) NoDbgRegParms;
-static sqInt twoByteInstructionSizeAt(AbstractInstruction * self_in_twoByteInstructionSizeAt, sqInt pc) NoDbgRegParms;
-static sqInt unsignedShortAt(AbstractInstruction * self_in_unsignedShortAt, sqInt byteAddress) NoDbgRegParms;
-static AbstractInstruction * gAddCqR(sqInt quickConstant, sqInt reg) NoDbgRegParms;
-static AbstractInstruction * gAndCqR(sqInt quickConstant, sqInt reg) NoDbgRegParms;
-static AbstractInstruction * gArithmeticShiftRightRR(sqInt reg1, sqInt reg2) NoDbgRegParms;
-sqInt abortOffset(void);
-static sqInt abstractInstructionfollows(AbstractInstruction *theAbstractInstruction, AbstractInstruction *anAbstractInstruction) NoDbgRegParms;
-static void addCleanBlockStarts(void);
-void addCogMethodsToHeapMap(void);
-static sqInt addressIsInFixups(AbstractInstruction *address) NoDbgRegParms;
-static sqInt addressIsInInstructions(AbstractInstruction *address) NoDbgRegParms;
-static sqInt addressOfEndOfCaseinCPIC(sqInt n, CogMethod *cPIC) NoDbgRegParms;
-static sqInt alignUptoRoutineBoundary(sqInt anAddress) NoDbgRegParms;
-static sqInt allMachineCodeObjectReferencesValid(void);
-static sqInt allMethodsHaveCorrectHeader(void);
-static AbstractInstruction * annotateAbsolutePCRef(AbstractInstruction *abstractInstruction) NoDbgRegParms;
-static AbstractInstruction * annotateBytecode(AbstractInstruction *abstractInstruction) NoDbgRegParms;
-static AbstractInstruction * annotateobjRef(AbstractInstruction *abstractInstruction, sqInt anOop) NoDbgRegParms;
-static AbstractInstruction * annotatewith(AbstractInstruction *abstractInstruction, sqInt annotationFlag) NoDbgRegParms;
-static void assertSaneJumpTarget(AbstractInstruction *jumpTarget) NoDbgRegParms;
-static sqInt blockCreationBytecodeSizeForHeader(sqInt methodHeader) NoDbgRegParms;
-static sqInt blockDispatchTargetsForperformarg(CogMethod *cogMethod, usqInt (*binaryFunction)(sqInt mcpc, sqInt arg), sqInt arg) NoDbgRegParms;
-sqInt bytecodePCForstartBcpcin(sqInt mcpc, sqInt startbcpc, CogBlockMethod *cogMethod);
-static AbstractInstruction * CallRT(sqInt callTarget) NoDbgRegParms;
-static AbstractInstruction * CallRTregistersToBeSavedMask(sqInt callTarget, sqInt registersToBeSaved) NoDbgRegParms;
-static AbstractInstruction * CallSend(sqInt callTarget) NoDbgRegParms;
-static AbstractInstruction * gCall(sqInt callTarget) NoDbgRegParms;
-static AbstractInstruction * gCmpCqR(sqInt quickConstant, sqInt reg) NoDbgRegParms;
-static AbstractInstruction * gCmpCwR(sqInt wordConstant, sqInt reg) NoDbgRegParms;
-void callCogCodePopReceiver(void);
-void callCogCodePopReceiverAndClassRegs(void);
-sqInt ceCPICMissreceiver(CogMethod *cPIC, sqInt receiver);
-sqInt ceSICMiss(sqInt receiver);
-void checkAssertsEnabledInCogit(void);
-static sqInt checkIfValidOopRefAndTargetpccogMethod(sqInt annotation, char *mcpc, sqInt cogMethod) NoDbgRegParms;
-static sqInt checkIfValidOopRefpccogMethod(sqInt annotation, char *mcpc, sqInt cogMethod) NoDbgRegParms;
-sqInt checkIntegrityOfObjectReferencesInCode(sqInt gcModes);
-static sqInt checkMaybeObjRefAt(sqInt mcpc) NoDbgRegParms;
-static sqInt checkValidObjectReferencesInClosedPIC(CogMethod *cPIC) NoDbgRegParms;
-static sqInt closedPICRefersToUnmarkedObject(CogMethod *cPIC) NoDbgRegParms;
-char * codeEntryFor(char *address);
-char * codeEntryNameFor(char *address);
-sqInt cogCodeBase(void);
-sqInt cogCodeConstituents(void);
-static sqInt cogExtendPICCaseNMethodtagisMNUCase(CogMethod *cPIC, sqInt caseNMethod, sqInt caseNTag, sqInt isMNUCase) NoDbgRegParms;
-void cogitPostGCAction(sqInt gcMode);
-sqInt cogMethodDoesntLookKosher(CogMethod *cogMethod);
-CogMethod * cogMNUPICSelectorreceivermethodOperandnumArgs(sqInt selector, sqInt rcvr, sqInt methodOperand, sqInt numArgs);
-static CogMethod * cogOpenPICSelectornumArgs(sqInt selector, sqInt numArgs) NoDbgRegParms;
-static CogMethod * cogPICSelectornumArgsCase0MethodCase1MethodtagisMNUCase(sqInt selector, sqInt numArgs, CogMethod *case0CogMethod, sqInt case1MethodOrNil, sqInt case1Tag, sqInt isMNUCase) NoDbgRegParms;
-CogMethod * cogselector(sqInt aMethodObj, sqInt aSelectorOop);
-void compactCogCompiledCode(void);
-static AbstractInstruction * compileAbort(void);
-static sqInt compileBlockDispatchFromto(sqInt lowBlockStartIndex, sqInt highBlockStartIndex) NoDbgRegParms;
-static void compileBlockEntry(BlockStart *blockStart) NoDbgRegParms;
-static void compileCallFornumArgsargargargargresultRegsaveRegs(void *aRoutine, sqInt numArgs, sqInt regOrConst0, sqInt regOrConst1, sqInt regOrConst2, sqInt regOrConst3, sqInt resultRegOrNil, sqInt saveRegs) NoDbgRegParms;
-static sqInt compileClosedPICPrototype(void);
-static AbstractInstruction * compileCPICEntry(void);
-static sqInt compileCPICCase0Case1MethodtagisMNUCasenumArgs(CogMethod *cPIC, CogMethod *case0CogMethod, sqInt case1Method, sqInt case1Tag, sqInt isMNUCase, sqInt numArgs) NoDbgRegParms;
-static void compileEntry(void);
-static sqInt compileMethodBody(void);
-static sqInt compileMNUCPICmethodOperandnumArgs(CogMethod *cPIC, sqInt methodOperand, sqInt numArgs) NoDbgRegParms;
-static sqInt compilePICAbort(sqInt numArgs) NoDbgRegParms;
-static sqInt compilePrimitive(void);
-static void compileTrampolineFornumArgsargargargargsaveRegspushLinkRegresultReg(void *aRoutine, sqInt numArgs, sqInt regOrConst0, sqInt regOrConst1, sqInt regOrConst2, sqInt regOrConst3, sqInt saveRegs, sqInt pushLinkReg, sqInt resultRegOrNil) NoDbgRegParms;
-static void computeEntryOffsets(void);
-static void computeMaximumSizes(void);
-static sqInt cPICHasFreedTargets(CogMethod *cPIC) NoDbgRegParms;
-static sqInt cPICHasTarget(CogMethod *cPIC, CogMethod *targetMethod) NoDbgRegParms;
-static AbstractInstruction * gDivRRQuoRem(sqInt rDivisor, sqInt rDividend, sqInt rQuotient, sqInt rRemainder) NoDbgRegParms;
-static sqInt endPCOf(sqInt aMethod) NoDbgRegParms;
-void enterCogCodePopReceiver(void);
-static sqInt extABytecode(void);
-static sqInt extBBytecode(void);
-static sqInt fillInBlockHeadersAt(sqInt startAddress) NoDbgRegParms;
-static usqInt findBlockMethodWithEntrystartBcpc(sqInt blockEntryMcpc, sqInt startBcpc) NoDbgRegParms;
-static sqInt findMapLocationForMcpcinMethod(sqInt targetMcpc, CogMethod *cogMethod) NoDbgRegParms;
-CogBlockMethod * findMethodForStartBcpcinHomeMethod(sqInt startbcpc, CogMethod *cogMethod);
-static sqInt findIsBackwardBranchMcpcBcpcMatchingMcpc(BytecodeDescriptor *descriptor, sqInt isBackwardBranch, char *mcpc, sqInt bcpc, void *targetMcpc) NoDbgRegParms;
-static void freePICsWithFreedTargets(void);
-static sqInt genCheckForInterruptsTrampoline(void);
-static void (*genEnilopmartForandandforCallcalled(sqInt regArg1, sqInt regArg2, sqInt regArg3, sqInt forCall, sqInt trampolineName))(void) NoDbgRegParms;
-static void genEnilopmartReturn(sqInt forCall) NoDbgRegParms;
-static void generateCaptureCStackPointers(sqInt captureFramePointer) NoDbgRegParms;
-static void generateClosedPICPrototype(void);
-static CogMethod * generateCogMethod(sqInt selector) NoDbgRegParms;
@@ Diff output truncated at 50000 characters. @@
More information about the Vm-dev
mailing list