[commit][2876] CogVm source as per VMMaker.oscog-eem.637

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

[commit][2876] CogVm source as per VMMaker.oscog-eem.637

commits-3
 
Revision: 2876
Author:   eliot
Date:     2014-03-10 16:54:08 -0700 (Mon, 10 Mar 2014)
Log Message:
-----------
CogVm source as per VMMaker.oscog-eem.637

Fix genSmallIntegerComparison:orDoubleComparison: (which lies behind
SmallInteger>>#= primitive 6) for Spur which has immediate Characters.

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

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

Modified: branches/Cog/nsspursrc/vm/cogit.c
===================================================================
--- branches/Cog/nsspursrc/vm/cogit.c 2014-03-10 20:26:23 UTC (rev 2875)
+++ branches/Cog/nsspursrc/vm/cogit.c 2014-03-10 23:54:08 UTC (rev 2876)
@@ -1,9 +1,9 @@
 /* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3
+ CCodeGenerator VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7
    from
- StackToRegisterMappingCogit VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3
+ StackToRegisterMappingCogit VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7
  */
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3 " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7 " __DATE__ ;
 char *__cogitBuildInfo = __buildInfo;
 
 
@@ -15981,6 +15981,7 @@
     AbstractInstruction *jumpCond;
     AbstractInstruction *jumpDouble;
     AbstractInstruction *jumpFail;
+    AbstractInstruction *jumpNonInt;
     AbstractInstruction *jumpTrue;
     sqInt quickConstant;
 
@@ -15997,6 +15998,10 @@
  /* begin RetN: */
  genoperand(RetN, 0);
  jmpTarget(jumpDouble, gLabel());
+ /* begin MoveR:R: */
+ genoperandoperand(MoveRR, ClassReg, TempReg);
+ jumpNonInt = genJumpImmediateInScratchReg(TempReg);
+
  genGetCompactClassIndexNonImmOfinto(Arg0Reg, SendNumArgsReg);
  /* begin CmpCq:R: */
  quickConstant = classFloatCompactIndex();
@@ -16019,7 +16024,8 @@
  jmpTarget(jumpCond, annotateobjRef(gMoveCwR(trueObject(), ReceiverResultReg), trueObject()));
  /* begin RetN: */
  genoperand(RetN, 0);
- jmpTarget(jumpFail, gLabel());
+ jmpTarget(jumpNonInt, jmpTarget(jumpFail, gLabel()));
+
  return 0;
 }
 

Modified: branches/Cog/nsspursrc/vm/cogit.h
===================================================================
--- branches/Cog/nsspursrc/vm/cogit.h 2014-03-10 20:26:23 UTC (rev 2875)
+++ branches/Cog/nsspursrc/vm/cogit.h 2014-03-10 23:54:08 UTC (rev 2876)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3
+ CCodeGenerator VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7
  */
 
 

Modified: branches/Cog/nsspursrc/vm/cogmethod.h
===================================================================
--- branches/Cog/nsspursrc/vm/cogmethod.h 2014-03-10 20:26:23 UTC (rev 2875)
+++ branches/Cog/nsspursrc/vm/cogmethod.h 2014-03-10 23:54:08 UTC (rev 2876)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3
+ CCodeGenerator VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7
  */
 
 typedef struct {


Property changes on: branches/Cog/platforms/Cross/vm/sqSCCSVersion.h
___________________________________________________________________
Modified: checkindate
   - Mon Mar 10 13:25:38 PDT 2014
   + Mon Mar 10 16:53:44 PDT 2014

Modified: branches/Cog/spursrc/vm/cogit.c
===================================================================
--- branches/Cog/spursrc/vm/cogit.c 2014-03-10 20:26:23 UTC (rev 2875)
+++ branches/Cog/spursrc/vm/cogit.c 2014-03-10 23:54:08 UTC (rev 2876)
@@ -1,9 +1,9 @@
 /* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3
+ CCodeGenerator VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7
    from
- StackToRegisterMappingCogit VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3
+ StackToRegisterMappingCogit VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7
  */
-static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3 " __DATE__ ;
+static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7 " __DATE__ ;
 char *__cogitBuildInfo = __buildInfo;
 
 
@@ -14790,6 +14790,7 @@
     AbstractInstruction *jumpCond;
     AbstractInstruction *jumpDouble;
     AbstractInstruction *jumpFail;
+    AbstractInstruction *jumpNonInt;
     AbstractInstruction *jumpTrue;
     sqInt quickConstant;
 
@@ -14806,6 +14807,10 @@
  /* begin RetN: */
  genoperand(RetN, 0);
  jmpTarget(jumpDouble, gLabel());
+ /* begin MoveR:R: */
+ genoperandoperand(MoveRR, ClassReg, TempReg);
+ jumpNonInt = genJumpImmediateInScratchReg(TempReg);
+
  genGetCompactClassIndexNonImmOfinto(Arg0Reg, SendNumArgsReg);
  /* begin CmpCq:R: */
  quickConstant = classFloatCompactIndex();
@@ -14828,7 +14833,8 @@
  jmpTarget(jumpCond, annotateobjRef(gMoveCwR(trueObject(), ReceiverResultReg), trueObject()));
  /* begin RetN: */
  genoperand(RetN, 0);
- jmpTarget(jumpFail, gLabel());
+ jmpTarget(jumpNonInt, jmpTarget(jumpFail, gLabel()));
+
  return 0;
 }
 

Modified: branches/Cog/spursrc/vm/cogit.h
===================================================================
--- branches/Cog/spursrc/vm/cogit.h 2014-03-10 20:26:23 UTC (rev 2875)
+++ branches/Cog/spursrc/vm/cogit.h 2014-03-10 23:54:08 UTC (rev 2876)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3
+ CCodeGenerator VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7
  */
 
 

Modified: branches/Cog/spursrc/vm/cogmethod.h
===================================================================
--- branches/Cog/spursrc/vm/cogmethod.h 2014-03-10 20:26:23 UTC (rev 2875)
+++ branches/Cog/spursrc/vm/cogmethod.h 2014-03-10 23:54:08 UTC (rev 2876)
@@ -1,5 +1,5 @@
 /* Automatically generated by
- CCodeGenerator VMMaker.oscog-eem.622 uuid: 7a33af68-b347-4a24-b960-e8755f7c49f3
+ CCodeGenerator VMMaker.oscog-eem.637 uuid: 313e51e8-63ef-40f1-a824-c26eaa2b39b7
  */
 
 typedef struct {