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 { |
Free forum by Nabble | Edit this page |