[Vm-dev] [commit][2859] CogVM source as per VMMaker.oscog-eem.595
commits at squeakvm.org
commits at squeakvm.org
Wed Jan 29 01:37:19 UTC 2014
Revision: 2859
Author: eliot
Date: 2014-01-28 17:37:18 -0800 (Tue, 28 Jan 2014)
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.595
Fix PIC entry alignment in Newspeak VMs. It's been working so far
only because entry-point alignment covered up the bug.
Allow more opcodes for the trampolines. The implicit receiver
trampoline is larger in Spur (alignment? need to check).
Modified Paths:
--------------
branches/Cog/nscogsrc/vm/cogit.c
branches/Cog/nscogsrc/vm/cogit.h
branches/Cog/nscogsrc/vm/cogmethod.h
branches/Cog/spursrc/vm/cogit.c
branches/Cog/spursrc/vm/cogit.h
branches/Cog/spursrc/vm/cogmethod.h
branches/Cog/src/vm/cogit.c
branches/Cog/src/vm/cogit.h
branches/Cog/src/vm/cogmethod.h
Property Changed:
----------------
branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
Modified: branches/Cog/nscogsrc/vm/cogit.c
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.c 2014-01-29 00:33:44 UTC (rev 2858)
+++ branches/Cog/nscogsrc/vm/cogit.c 2014-01-29 01:37:18 UTC (rev 2859)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -4371,6 +4371,11 @@
static AbstractInstruction *
compileCPICEntry(void)
{
+ /* begin Nop */
+ gen(Nop);
+ /* begin Nop */
+ dynSuperEntry = gen(Nop);
+
entry = getInlineCacheClassTagFrominto(ReceiverResultReg, TempReg);
/* begin CmpR:R: */
genoperandoperand(CmpRR, ClassReg, TempReg);
@@ -4880,7 +4885,12 @@
sqInt routine;
compilePICProlog(numArgs);
+ /* begin Nop */
+ gen(Nop);
+ /* begin Nop */
+ dynSuperEntry = gen(Nop);
+
/* Do first of three probes. See CoInterpreter>>lookupInMethodCacheSel:classTag: */
entry = genGetClassTagOfintoscratchReg(ReceiverResultReg, ClassReg, TempReg);
@@ -11866,7 +11876,7 @@
sqInt selector;
methodZoneStart = methodZoneBase;
- allocateOpcodesbytecodes(40, 0);
+ allocateOpcodesbytecodes(42, 0);
initialPC = 0;
endPC = numAbstractOpcodes - 1;
hasYoungReferent = 0;
Modified: branches/Cog/nscogsrc/vm/cogit.h
===================================================================
--- branches/Cog/nscogsrc/vm/cogit.h 2014-01-29 00:33:44 UTC (rev 2858)
+++ branches/Cog/nscogsrc/vm/cogit.h 2014-01-29 01:37:18 UTC (rev 2859)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
*/
Modified: branches/Cog/nscogsrc/vm/cogmethod.h
===================================================================
--- branches/Cog/nscogsrc/vm/cogmethod.h 2014-01-29 00:33:44 UTC (rev 2858)
+++ branches/Cog/nscogsrc/vm/cogmethod.h 2014-01-29 01:37:18 UTC (rev 2859)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
*/
typedef struct {
Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
- Tue Jan 28 15:03:50 PST 2014
+ Tue Jan 28 17:36:47 PST 2014
Modified: branches/Cog/spursrc/vm/cogit.c
===================================================================
--- branches/Cog/spursrc/vm/cogit.c 2014-01-29 00:33:44 UTC (rev 2858)
+++ branches/Cog/spursrc/vm/cogit.c 2014-01-29 01:37:18 UTC (rev 2859)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -3926,6 +3926,7 @@
static AbstractInstruction *
compileCPICEntry(void)
{
+
entry = getInlineCacheClassTagFrominto(ReceiverResultReg, TempReg);
/* begin CmpR:R: */
genoperandoperand(CmpRR, ClassReg, TempReg);
@@ -4431,6 +4432,7 @@
sqInt routine;
compilePICProlog(numArgs);
+
/* Do first of three probes. See CoInterpreter>>lookupInMethodCacheSel:classTag: */
@@ -11075,7 +11077,7 @@
sqInt selector;
methodZoneStart = methodZoneBase;
- allocateOpcodesbytecodes(40, 0);
+ allocateOpcodesbytecodes(42, 0);
initialPC = 0;
endPC = numAbstractOpcodes - 1;
hasYoungReferent = 0;
Modified: branches/Cog/spursrc/vm/cogit.h
===================================================================
--- branches/Cog/spursrc/vm/cogit.h 2014-01-29 00:33:44 UTC (rev 2858)
+++ branches/Cog/spursrc/vm/cogit.h 2014-01-29 01:37:18 UTC (rev 2859)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
*/
Modified: branches/Cog/spursrc/vm/cogmethod.h
===================================================================
--- branches/Cog/spursrc/vm/cogmethod.h 2014-01-29 00:33:44 UTC (rev 2858)
+++ branches/Cog/spursrc/vm/cogmethod.h 2014-01-29 01:37:18 UTC (rev 2859)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
*/
typedef struct {
Modified: branches/Cog/src/vm/cogit.c
===================================================================
--- branches/Cog/src/vm/cogit.c 2014-01-29 00:33:44 UTC (rev 2858)
+++ branches/Cog/src/vm/cogit.c 2014-01-29 01:37:18 UTC (rev 2859)
@@ -1,9 +1,9 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
from
- StackToRegisterMappingCogit VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
*/
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662 " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd " __DATE__ ;
char *__cogitBuildInfo = __buildInfo;
@@ -3925,6 +3925,7 @@
static AbstractInstruction *
compileCPICEntry(void)
{
+
entry = getInlineCacheClassTagFrominto(ReceiverResultReg, TempReg);
/* begin CmpR:R: */
genoperandoperand(CmpRR, ClassReg, TempReg);
@@ -4430,6 +4431,7 @@
sqInt routine;
compilePICProlog(numArgs);
+
/* Do first of three probes. See CoInterpreter>>lookupInMethodCacheSel:classTag: */
@@ -10911,7 +10913,7 @@
sqInt selector;
methodZoneStart = methodZoneBase;
- allocateOpcodesbytecodes(40, 0);
+ allocateOpcodesbytecodes(42, 0);
initialPC = 0;
endPC = numAbstractOpcodes - 1;
hasYoungReferent = 0;
Modified: branches/Cog/src/vm/cogit.h
===================================================================
--- branches/Cog/src/vm/cogit.h 2014-01-29 00:33:44 UTC (rev 2858)
+++ branches/Cog/src/vm/cogit.h 2014-01-29 01:37:18 UTC (rev 2859)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
*/
Modified: branches/Cog/src/vm/cogmethod.h
===================================================================
--- branches/Cog/src/vm/cogmethod.h 2014-01-29 00:33:44 UTC (rev 2858)
+++ branches/Cog/src/vm/cogmethod.h 2014-01-29 01:37:18 UTC (rev 2859)
@@ -1,5 +1,5 @@
/* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.590 uuid: 8f6d2060-b948-464c-89d9-341f775e8662
+ CCodeGenerator VMMaker.oscog-eem.595 uuid: 918a4400-df96-4b55-bdee-cbf3576f27dd
*/
typedef struct {
More information about the Vm-dev
mailing list