[Vm-dev] [commit][3282] CogVM source as per VMMaker.oscog-eem.1096

commits at squeakvm.org commits at squeakvm.org
Wed Mar 18 01:46:21 UTC 2015


Revision: 3282
Author:   eliot
Date:     2015-03-17 18:46:21 -0700 (Tue, 17 Mar 2015)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.1096

Fix regression in generateObjectRepresentationTrampolines.
Of /course/ ceScheduleScavengeTrampoline needs to be a safe trampoline.

Modified Paths:
--------------
    branches/Cog/nsspursrc/vm/cogit.c
    branches/Cog/nsspursrc/vm/cogit.h
    branches/Cog/spursistasrc/vm/cogit.c
    branches/Cog/spursistasrc/vm/cogit.h
    branches/Cog/spursrc/vm/cogit.c
    branches/Cog/spursrc/vm/cogit.h

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

Modified: branches/Cog/nsspursrc/vm/cogit.c
===================================================================
--- branches/Cog/nsspursrc/vm/cogit.c	2015-03-18 01:13:54 UTC (rev 3281)
+++ branches/Cog/nsspursrc/vm/cogit.c	2015-03-18 01:46:21 UTC (rev 3282)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808
+	CCodeGenerator VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd
    from
-	StackToRegisterMappingCogit VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808
+	StackToRegisterMappingCogit VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd
  */
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808 " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd " __DATE__ ;
 char *__cogitBuildInfo = __buildInfo;
 
 
@@ -666,6 +666,7 @@
 static sqInt genInnerPICAbortTrampoline(char *name) NoDbgRegParms;
 static sqInt genLoadCStackPointersForPrimCall(void);
 static sqInt genNonLocalReturnTrampoline(void);
+static sqInt genSafeTrampolineForcalled(void *aRoutine, char *aString) NoDbgRegParms;
 static sqInt genSafeTrampolineForcalledarg(void *aRoutine, char *aString, sqInt regOrConst0) NoDbgRegParms;
 static sqInt genSafeTrampolineForcalledargarg(void *aRoutine, char *aString, sqInt regOrConst0, sqInt regOrConst1) NoDbgRegParms;
 static sqInt genSmalltalkToCStackSwitch(void);
@@ -11452,6 +11453,16 @@
 }
 
 
+/*	Generate a trampoline with no arguments that will
+	save and restore all registers around the call */
+
+static sqInt
+genSafeTrampolineForcalled(void *aRoutine, char *aString)
+{
+	return genTrampolineForcallednumArgsargargargargsaveRegspushLinkRegresultRegappendOpcodes(aRoutine, aString, 0, null, null, null, null, 1, 1, null, 0);
+}
+
+
 /*	Generate a trampoline with one argument that will
 	save and restore all registers around the call */
 
@@ -17667,7 +17678,7 @@
 generateObjectRepresentationTrampolines(void)
 {
 	ceStoreCheckTrampoline = genTrampolineForcalledargresult(remember, "ceStoreCheckTrampoline", ReceiverResultReg, returnRegForStoreCheck());
-	ceScheduleScavengeTrampoline = genTrampolineForcalled(ceScheduleScavenge, "ceScheduleScavengeTrampoline");
+	ceScheduleScavengeTrampoline = genSafeTrampolineForcalled(ceScheduleScavenge, "ceScheduleScavengeTrampoline");
 	ceSmallActiveContextInMethodTrampoline = genActiveContextTrampolineLargeinBlockcalled(0, 0, "ceSmallMethodContext");
 	ceSmallActiveContextInBlockTrampoline = genActiveContextTrampolineLargeinBlockcalled(0, 1, "ceSmallBlockContext");
 	ceLargeActiveContextInMethodTrampoline = genActiveContextTrampolineLargeinBlockcalled(1, 0, "ceLargeMethodContext");

Modified: branches/Cog/nsspursrc/vm/cogit.h
===================================================================
--- branches/Cog/nsspursrc/vm/cogit.h	2015-03-18 01:13:54 UTC (rev 3281)
+++ branches/Cog/nsspursrc/vm/cogit.h	2015-03-18 01:46:21 UTC (rev 3282)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808
+	CCodeGenerator VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd
  */
 
 


Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
   - Tue Mar 17 18:10:28 PDT 2015
   + Tue Mar 17 18:46:40 PDT 2015

Modified: branches/Cog/spursistasrc/vm/cogit.c
===================================================================
--- branches/Cog/spursistasrc/vm/cogit.c	2015-03-18 01:13:54 UTC (rev 3281)
+++ branches/Cog/spursistasrc/vm/cogit.c	2015-03-18 01:46:21 UTC (rev 3282)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808
+	CCodeGenerator VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd
    from
-	SistaStackToRegisterMappingCogit VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808
+	SistaStackToRegisterMappingCogit VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd
  */
-static char __buildInfo[] = "SistaStackToRegisterMappingCogit VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808 " __DATE__ ;
+static char __buildInfo[] = "SistaStackToRegisterMappingCogit VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd " __DATE__ ;
 char *__cogitBuildInfo = __buildInfo;
 
 
@@ -663,6 +663,7 @@
 static sqInt genInnerPICAbortTrampoline(char *name) NoDbgRegParms;
 static sqInt genLoadCStackPointersForPrimCall(void);
 static sqInt genNonLocalReturnTrampoline(void);
+static sqInt genSafeTrampolineForcalled(void *aRoutine, char *aString) NoDbgRegParms;
 static sqInt genSafeTrampolineForcalledarg(void *aRoutine, char *aString, sqInt regOrConst0) NoDbgRegParms;
 static sqInt genSafeTrampolineForcalledargarg(void *aRoutine, char *aString, sqInt regOrConst0, sqInt regOrConst1) NoDbgRegParms;
 static sqInt genSmalltalkToCStackSwitch(void);
@@ -11207,6 +11208,16 @@
 }
 
 
+/*	Generate a trampoline with no arguments that will
+	save and restore all registers around the call */
+
+static sqInt
+genSafeTrampolineForcalled(void *aRoutine, char *aString)
+{
+	return genTrampolineForcallednumArgsargargargargsaveRegspushLinkRegresultRegappendOpcodes(aRoutine, aString, 0, null, null, null, null, 1, 1, null, 0);
+}
+
+
 /*	Generate a trampoline with one argument that will
 	save and restore all registers around the call */
 
@@ -16974,7 +16985,7 @@
 generateObjectRepresentationTrampolines(void)
 {
 	ceStoreCheckTrampoline = genTrampolineForcalledargresult(remember, "ceStoreCheckTrampoline", ReceiverResultReg, returnRegForStoreCheck());
-	ceScheduleScavengeTrampoline = genTrampolineForcalled(ceScheduleScavenge, "ceScheduleScavengeTrampoline");
+	ceScheduleScavengeTrampoline = genSafeTrampolineForcalled(ceScheduleScavenge, "ceScheduleScavengeTrampoline");
 	ceSmallActiveContextInMethodTrampoline = genActiveContextTrampolineLargeinBlockcalled(0, 0, "ceSmallMethodContext");
 	ceSmallActiveContextInBlockTrampoline = genActiveContextTrampolineLargeinBlockcalled(0, 1, "ceSmallBlockContext");
 	ceLargeActiveContextInMethodTrampoline = genActiveContextTrampolineLargeinBlockcalled(1, 0, "ceLargeMethodContext");
@@ -24952,7 +24963,7 @@
 {
     sqInt i;
     sqInt lastPreferred;
-    sqInt liveRegs;
+    usqInt liveRegs;
     sqInt preferredMask;
     sqInt reg;
 

Modified: branches/Cog/spursistasrc/vm/cogit.h
===================================================================
--- branches/Cog/spursistasrc/vm/cogit.h	2015-03-18 01:13:54 UTC (rev 3281)
+++ branches/Cog/spursistasrc/vm/cogit.h	2015-03-18 01:46:21 UTC (rev 3282)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808
+	CCodeGenerator VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd
  */
 
 

Modified: branches/Cog/spursrc/vm/cogit.c
===================================================================
--- branches/Cog/spursrc/vm/cogit.c	2015-03-18 01:13:54 UTC (rev 3281)
+++ branches/Cog/spursrc/vm/cogit.c	2015-03-18 01:46:21 UTC (rev 3282)
@@ -1,9 +1,9 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808
+	CCodeGenerator VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd
    from
-	StackToRegisterMappingCogit VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808
+	StackToRegisterMappingCogit VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd
  */
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808 " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd " __DATE__ ;
 char *__cogitBuildInfo = __buildInfo;
 
 
@@ -660,6 +660,7 @@
 static sqInt genInnerPICAbortTrampoline(char *name) NoDbgRegParms;
 static sqInt genLoadCStackPointersForPrimCall(void);
 static sqInt genNonLocalReturnTrampoline(void);
+static sqInt genSafeTrampolineForcalled(void *aRoutine, char *aString) NoDbgRegParms;
 static sqInt genSafeTrampolineForcalledarg(void *aRoutine, char *aString, sqInt regOrConst0) NoDbgRegParms;
 static sqInt genSafeTrampolineForcalledargarg(void *aRoutine, char *aString, sqInt regOrConst0, sqInt regOrConst1) NoDbgRegParms;
 static sqInt genSmalltalkToCStackSwitch(void);
@@ -10932,6 +10933,16 @@
 }
 
 
+/*	Generate a trampoline with no arguments that will
+	save and restore all registers around the call */
+
+static sqInt
+genSafeTrampolineForcalled(void *aRoutine, char *aString)
+{
+	return genTrampolineForcallednumArgsargargargargsaveRegspushLinkRegresultRegappendOpcodes(aRoutine, aString, 0, null, null, null, null, 1, 1, null, 0);
+}
+
+
 /*	Generate a trampoline with one argument that will
 	save and restore all registers around the call */
 
@@ -16453,7 +16464,7 @@
 generateObjectRepresentationTrampolines(void)
 {
 	ceStoreCheckTrampoline = genTrampolineForcalledargresult(remember, "ceStoreCheckTrampoline", ReceiverResultReg, returnRegForStoreCheck());
-	ceScheduleScavengeTrampoline = genTrampolineForcalled(ceScheduleScavenge, "ceScheduleScavengeTrampoline");
+	ceScheduleScavengeTrampoline = genSafeTrampolineForcalled(ceScheduleScavenge, "ceScheduleScavengeTrampoline");
 	ceSmallActiveContextInMethodTrampoline = genActiveContextTrampolineLargeinBlockcalled(0, 0, "ceSmallMethodContext");
 	ceSmallActiveContextInBlockTrampoline = genActiveContextTrampolineLargeinBlockcalled(0, 1, "ceSmallBlockContext");
 	ceLargeActiveContextInMethodTrampoline = genActiveContextTrampolineLargeinBlockcalled(1, 0, "ceLargeMethodContext");

Modified: branches/Cog/spursrc/vm/cogit.h
===================================================================
--- branches/Cog/spursrc/vm/cogit.h	2015-03-18 01:13:54 UTC (rev 3281)
+++ branches/Cog/spursrc/vm/cogit.h	2015-03-18 01:46:21 UTC (rev 3282)
@@ -1,5 +1,5 @@
 /* Automatically generated by
-	CCodeGenerator VMMaker.oscog-eem.1095 uuid: 87e54293-385c-427c-8c96-3d8b934aa808
+	CCodeGenerator VMMaker.oscog-eem.1096 uuid: a138f73f-adc5-4a10-af7b-b1a8276295dd
  */
 
 



More information about the Vm-dev mailing list