[commit][2915] CogVM source as per VMMaker.oscog-eem.704.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[commit][2915] CogVM source as per VMMaker.oscog-eem.704.

commits-3
 
Revision: 2915
Author:   eliot
Date:     2014-05-04 17:52:47 -0700 (Sun, 04 May 2014)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.704.
Fix compilation warnings re compaction memcpy calls.
Fix stack backtrace printing when frameCallerContext is forwarded.

Modified Paths:
--------------
    branches/Cog/nsspursrc/vm/cointerp.c
    branches/Cog/nsspursrc/vm/cointerp.h
    branches/Cog/nsspursrc/vm/gcc3x-cointerp.c
    branches/Cog/nsspursrc/vm/interp.h
    branches/Cog/nsspursrc/vm/vmCallback.h
    branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c
    branches/Cog/nsspurstacksrc/vm/interp.c
    branches/Cog/nsspurstacksrc/vm/interp.h
    branches/Cog/nsspurstacksrc/vm/vmCallback.h
    branches/Cog/spursistasrc/vm/cointerp.c
    branches/Cog/spursistasrc/vm/cointerp.h
    branches/Cog/spursistasrc/vm/gcc3x-cointerp.c
    branches/Cog/spursistasrc/vm/interp.h
    branches/Cog/spursistasrc/vm/vmCallback.h
    branches/Cog/spursrc/vm/cointerp.c
    branches/Cog/spursrc/vm/cointerp.h
    branches/Cog/spursrc/vm/gcc3x-cointerp.c
    branches/Cog/spursrc/vm/interp.h
    branches/Cog/spursrc/vm/vmCallback.h
    branches/Cog/spurstacksrc/vm/gcc3x-interp.c
    branches/Cog/spurstacksrc/vm/interp.c
    branches/Cog/spurstacksrc/vm/interp.h
    branches/Cog/spurstacksrc/vm/vmCallback.h

Property Changed:
----------------
    branches/Cog/platforms/Cross/vm/sqSCCSVersion.h

Modified: branches/Cog/nsspursrc/vm/cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/nsspursrc/vm/cointerp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,9 +1,9 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2218,7 +2218,7 @@
  /* 574 */ (void (*)(void))0,
  /* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.702";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.704";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -37452,7 +37452,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -37579,7 +37579,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -57035,6 +57035,7 @@
     sqInt ctxt;
     sqInt index;
     sqInt index1;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     StackPage *thePage1;
@@ -57078,6 +57079,16 @@
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
  ctxt = callerContextOrNil;
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -63696,9 +63707,11 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     sqInt callerContextOrNil;
     char *callerFP;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
 
@@ -63725,7 +63738,18 @@
  assert(addressCouldBeObj(callerContextOrNil));
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
- return callerContextOrNil;
+ caller = callerContextOrNil;
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/nsspursrc/vm/cointerp.h
===================================================================
--- branches/Cog/nsspursrc/vm/cointerp.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/nsspursrc/vm/cointerp.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 

Modified: branches/Cog/nsspursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/nsspursrc/vm/gcc3x-cointerp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/nsspursrc/vm/gcc3x-cointerp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2221,7 +2221,7 @@
  /* 574 */ (void (*)(void))0,
  /* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.702";
+const char *interpreterVersion = "Newspeak Virtual Machine CoInterpreter_VMMaker.oscog-eem.704";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -37461,7 +37461,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -37588,7 +37588,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -57044,6 +57044,7 @@
     sqInt ctxt;
     sqInt index;
     sqInt index1;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     StackPage *thePage1;
@@ -57087,6 +57088,16 @@
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
  ctxt = callerContextOrNil;
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -63705,9 +63716,11 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     sqInt callerContextOrNil;
     char *callerFP;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
 
@@ -63734,7 +63747,18 @@
  assert(addressCouldBeObj(callerContextOrNil));
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
- return callerContextOrNil;
+ caller = callerContextOrNil;
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/nsspursrc/vm/interp.h
===================================================================
--- branches/Cog/nsspursrc/vm/interp.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/nsspursrc/vm/interp.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/nsspursrc/vm/vmCallback.h
===================================================================
--- branches/Cog/nsspursrc/vm/vmCallback.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/nsspursrc/vm/vmCallback.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_CALLBACK_INC 1

Modified: branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- StackInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ StackInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2008,7 +2008,7 @@
  0 };
 char * breakSelector;
 sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreter_VMMaker.oscog-eem.702";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreter_VMMaker.oscog-eem.704";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -32101,7 +32101,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -32228,7 +32228,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -51037,6 +51037,7 @@
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
     sqInt ctxt;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     sqInt value;
@@ -51065,6 +51066,16 @@
  shortPrintFrameAndCallers(theFP);
  theFP = (thePage->baseFP);
  ctxt = longAt(theFP + FoxCallerContext);
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -56758,7 +56769,9 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     char *callerFP;
+    sqInt referent;
     char *theFP;
 
  if (aFramePointer == 0) {
@@ -56772,7 +56785,18 @@
  if (!(callerFP != 0)) break;
  theFP = callerFP;
  }
- return longAt(theFP + FoxCallerContext);
+ caller = longAt(theFP + FoxCallerContext);
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/nsspurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/nsspurstacksrc/vm/interp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/nsspurstacksrc/vm/interp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,9 +1,9 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- StackInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ StackInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2005,7 +2005,7 @@
  0 };
 char * breakSelector;
 sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreter_VMMaker.oscog-eem.702";
+const char *interpreterVersion = "Newspeak Virtual Machine StackInterpreter_VMMaker.oscog-eem.704";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -32092,7 +32092,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -32219,7 +32219,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -51028,6 +51028,7 @@
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
     sqInt ctxt;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     sqInt value;
@@ -51056,6 +51057,16 @@
  shortPrintFrameAndCallers(theFP);
  theFP = (thePage->baseFP);
  ctxt = longAt(theFP + FoxCallerContext);
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -56749,7 +56760,9 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     char *callerFP;
+    sqInt referent;
     char *theFP;
 
  if (aFramePointer == 0) {
@@ -56763,7 +56776,18 @@
  if (!(callerFP != 0)) break;
  theFP = callerFP;
  }
- return longAt(theFP + FoxCallerContext);
+ caller = longAt(theFP + FoxCallerContext);
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/nsspurstacksrc/vm/interp.h
===================================================================
--- branches/Cog/nsspurstacksrc/vm/interp.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/nsspurstacksrc/vm/interp.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/nsspurstacksrc/vm/vmCallback.h
===================================================================
--- branches/Cog/nsspurstacksrc/vm/vmCallback.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/nsspurstacksrc/vm/vmCallback.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_CALLBACK_INC 1


Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
   - Sun May  4 09:33:41 PDT 2014
   + Sun May  4 17:50:58 PDT 2014

Modified: branches/Cog/spursistasrc/vm/cointerp.c
===================================================================
--- branches/Cog/spursistasrc/vm/cointerp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursistasrc/vm/cointerp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,9 +1,9 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1314,7 +1314,7 @@
 static void setSignalLowSpaceFlagAndSaveProcess(void);
 static void setTraceFlagOnContextsFramesPageIfNeeded(sqInt aContext);
 sqInt shiftForWord(void);
-static usqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize);
+static sqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize);
 static sqInt shortPrintContext(sqInt aContext);
 static sqInt shortPrintFrameAndCallers(char *theFP);
 EXPORT(void) shortPrintFramesInPage(StackPage *thePage);
@@ -2213,7 +2213,7 @@
  /* 574 */ (void (*)(void))0,
  /* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.702]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.704]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -32292,7 +32292,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -32419,7 +32419,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -51821,6 +51821,7 @@
     sqInt ctxt;
     sqInt index;
     sqInt index1;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     StackPage *thePage1;
@@ -51864,6 +51865,16 @@
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
  ctxt = callerContextOrNil;
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -58238,7 +58249,7 @@
  zero if no change
  was possible. */
 
-static usqInt
+static sqInt
 shortentoIndexableSize(sqInt objOop, sqInt indexableSize)
 {
     usqInt bytesAfter;
@@ -58474,9 +58485,11 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     sqInt callerContextOrNil;
     char *callerFP;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
 
@@ -58503,7 +58516,18 @@
  assert(addressCouldBeObj(callerContextOrNil));
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
- return callerContextOrNil;
+ caller = callerContextOrNil;
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/spursistasrc/vm/cointerp.h
===================================================================
--- branches/Cog/spursistasrc/vm/cointerp.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursistasrc/vm/cointerp.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 

Modified: branches/Cog/spursistasrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spursistasrc/vm/gcc3x-cointerp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursistasrc/vm/gcc3x-cointerp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1317,7 +1317,7 @@
 static void setSignalLowSpaceFlagAndSaveProcess(void);
 static void setTraceFlagOnContextsFramesPageIfNeeded(sqInt aContext);
 sqInt shiftForWord(void);
-static usqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize);
+static sqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize);
 static sqInt shortPrintContext(sqInt aContext);
 static sqInt shortPrintFrameAndCallers(char *theFP);
 EXPORT(void) shortPrintFramesInPage(StackPage *thePage);
@@ -2216,7 +2216,7 @@
  /* 574 */ (void (*)(void))0,
  /* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.702]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.704]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -32301,7 +32301,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -32428,7 +32428,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -51830,6 +51830,7 @@
     sqInt ctxt;
     sqInt index;
     sqInt index1;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     StackPage *thePage1;
@@ -51873,6 +51874,16 @@
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
  ctxt = callerContextOrNil;
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -58247,7 +58258,7 @@
  zero if no change
  was possible. */
 
-static usqInt
+static sqInt
 shortentoIndexableSize(sqInt objOop, sqInt indexableSize)
 {
     usqInt bytesAfter;
@@ -58483,9 +58494,11 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     sqInt callerContextOrNil;
     char *callerFP;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
 
@@ -58512,7 +58525,18 @@
  assert(addressCouldBeObj(callerContextOrNil));
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
- return callerContextOrNil;
+ caller = callerContextOrNil;
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/spursistasrc/vm/interp.h
===================================================================
--- branches/Cog/spursistasrc/vm/interp.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursistasrc/vm/interp.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/spursistasrc/vm/vmCallback.h
===================================================================
--- branches/Cog/spursistasrc/vm/vmCallback.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursistasrc/vm/vmCallback.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_CALLBACK_INC 1

Modified: branches/Cog/spursrc/vm/cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/cointerp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursrc/vm/cointerp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,9 +1,9 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2208,7 +2208,7 @@
  /* 574 */ (void (*)(void))0,
  /* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.702]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.704]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -32153,7 +32153,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -32280,7 +32280,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -51618,6 +51618,7 @@
     sqInt ctxt;
     sqInt index;
     sqInt index1;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     StackPage *thePage1;
@@ -51661,6 +51662,16 @@
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
  ctxt = callerContextOrNil;
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -58235,9 +58246,11 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     sqInt callerContextOrNil;
     char *callerFP;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
 
@@ -58264,7 +58277,18 @@
  assert(addressCouldBeObj(callerContextOrNil));
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
- return callerContextOrNil;
+ caller = callerContextOrNil;
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/spursrc/vm/cointerp.h
===================================================================
--- branches/Cog/spursrc/vm/cointerp.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursrc/vm/cointerp.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 

Modified: branches/Cog/spursrc/vm/gcc3x-cointerp.c
===================================================================
--- branches/Cog/spursrc/vm/gcc3x-cointerp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursrc/vm/gcc3x-cointerp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "CoInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2211,7 +2211,7 @@
  /* 574 */ (void (*)(void))0,
  /* 575 */ (void (*)(void))0,
  0 };
-const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.702]";
+const char *interpreterVersion = "Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.704]";
 sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 10 */;
 volatile int sendTrace;
 
@@ -32162,7 +32162,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -32289,7 +32289,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -51627,6 +51627,7 @@
     sqInt ctxt;
     sqInt index;
     sqInt index1;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     StackPage *thePage1;
@@ -51670,6 +51671,16 @@
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
  ctxt = callerContextOrNil;
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -58244,9 +58255,11 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     sqInt callerContextOrNil;
     char *callerFP;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
 
@@ -58273,7 +58286,18 @@
  assert(addressCouldBeObj(callerContextOrNil));
  assert((callerContextOrNil == (nilObject()))
  || (isContext(callerContextOrNil)));
- return callerContextOrNil;
+ caller = callerContextOrNil;
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/spursrc/vm/interp.h
===================================================================
--- branches/Cog/spursrc/vm/interp.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursrc/vm/interp.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/spursrc/vm/vmCallback.h
===================================================================
--- branches/Cog/spursrc/vm/vmCallback.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spursrc/vm/vmCallback.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_CALLBACK_INC 1

Modified: branches/Cog/spurstacksrc/vm/gcc3x-interp.c
===================================================================
--- branches/Cog/spurstacksrc/vm/gcc3x-interp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spurstacksrc/vm/gcc3x-interp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -2,11 +2,11 @@
 
 
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- StackInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ StackInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -2001,7 +2001,7 @@
  0 };
 char * breakSelector;
 sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.702]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.704]";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -27165,7 +27165,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -27292,7 +27292,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -45933,6 +45933,7 @@
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
     sqInt ctxt;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     sqInt value;
@@ -45961,6 +45962,16 @@
  shortPrintFrameAndCallers(theFP);
  theFP = (thePage->baseFP);
  ctxt = longAt(theFP + FoxCallerContext);
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -51607,7 +51618,9 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     char *callerFP;
+    sqInt referent;
     char *theFP;
 
  if (aFramePointer == 0) {
@@ -51621,7 +51634,18 @@
  if (!(callerFP != 0)) break;
  theFP = callerFP;
  }
- return longAt(theFP + FoxCallerContext);
+ caller = longAt(theFP + FoxCallerContext);
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/spurstacksrc/vm/interp.c
===================================================================
--- branches/Cog/spurstacksrc/vm/interp.c 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spurstacksrc/vm/interp.c 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,9 +1,9 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
    from
- StackInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ StackInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
-static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465 " __DATE__ ;
+static char __buildInfo[] = "StackInterpreter VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e " __DATE__ ;
 char *__interpBuildInfo = __buildInfo;
 
 
@@ -1998,7 +1998,7 @@
  0 };
 char * breakSelector;
 sqInt breakSelectorLength = -1;
-const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.702]";
+const char *interpreterVersion = "Croquet Closure Stack VM [StackInterpreter VMMaker.oscog-eem.704]";
 volatile int sendTrace;
 sqInt suppressHeartbeatFlag;
 
@@ -27156,7 +27156,7 @@
  && ((freeBytes > ((there - here) + 8))
  || (freeBytes == (there - here))))) break;
  moved = 1;
- memcpy(destination, here, there - here);
+ memcpy(((void *)destination), ((void *)here), there - here);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(destination + (hereObj - here))));
@@ -27283,7 +27283,7 @@
  chunkBytes = (addressAfter(freeChunk)) - dest;
  if ((chunkBytes == pigBytes)
  || (chunkBytes > (pigBytes + 8))) {
- memcpy(dest, here, pigBytes);
+ memcpy(((void *)dest), ((void *)here), pigBytes);
  /* begin forwardUnchecked:to: */
  assert((isInOldSpace(hereObj))
  && (isInOldSpace(dest + (hereObj - here))));
@@ -45924,6 +45924,7 @@
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
     sqInt ctxt;
     sqInt index;
+    sqInt referent;
     char *theFP;
     StackPage *thePage;
     sqInt value;
@@ -45952,6 +45953,16 @@
  shortPrintFrameAndCallers(theFP);
  theFP = (thePage->baseFP);
  ctxt = longAt(theFP + FoxCallerContext);
+ if (((longAt(ctxt)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(ctxt));
+ referent = longAt((ctxt + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ ctxt = referent;
+ }
  }
  else {
  print("widowed caller frame ");
@@ -51598,7 +51609,9 @@
 static sqInt
 shortReversePrintFrameAndCallers(char *aFramePointer)
 {   DECL_MAYBE_SQ_GLOBAL_STRUCT
+    sqInt caller;
     char *callerFP;
+    sqInt referent;
     char *theFP;
 
  if (aFramePointer == 0) {
@@ -51612,7 +51625,18 @@
  if (!(callerFP != 0)) break;
  theFP = callerFP;
  }
- return longAt(theFP + FoxCallerContext);
+ caller = longAt(theFP + FoxCallerContext);
+ if (((longAt(caller)) & 0x3FFFFF) == 8) {
+ /* begin followForwarded: */
+ assert(isForwarded(caller));
+ referent = longAt((caller + (BaseHeaderSize)) + (0 << 2));
+ while (((referent & 3) == 0)
+ && (((longAt(referent)) & 0x3FFFFF) == 8)) {
+ referent = longAt((referent + (BaseHeaderSize)) + (0 << 2));
+ }
+ caller = referent;
+ }
+ return caller;
 }
 
 

Modified: branches/Cog/spurstacksrc/vm/interp.h
===================================================================
--- branches/Cog/spurstacksrc/vm/interp.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spurstacksrc/vm/interp.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_PROXY_MAJOR 1

Modified: branches/Cog/spurstacksrc/vm/vmCallback.h
===================================================================
--- branches/Cog/spurstacksrc/vm/vmCallback.h 2014-05-04 16:34:55 UTC (rev 2914)
+++ branches/Cog/spurstacksrc/vm/vmCallback.h 2014-05-05 00:52:47 UTC (rev 2915)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGeneratorGlobalStructure VMMaker.oscog-eem.702 uuid: 2f753471-9a18-4f13-aaef-58ffb0702465
+ CCodeGeneratorGlobalStructure VMMaker.oscog-eem.704 uuid: 5a1a2624-b349-4d95-aeb3-097087219b4e
  */
 
 #define VM_CALLBACK_INC 1