Author: eliot Date: 2011-07-13 12:44:06 -0700 (Wed, 13 Jul 2011) New Revision: 2458 Modified: branches/Cog/nscogsrc/vm/cogit.c branches/Cog/nscogsrc/vm/cogit.h branches/Cog/nscogsrc/vm/cogmethod.h branches/Cog/scripts/revertIfEssentiallyUnchanged branches/Cog/src/vm/cogit.c branches/Cog/src/vm/cogit.h branches/Cog/src/vm/cogmethod.h Log: CogVM source as per VMMaker.oscog-eem.100. Fix compilation of cogit for non- Newspeak VMs. Modified: branches/Cog/nscogsrc/vm/cogit.c =================================================================== --- branches/Cog/nscogsrc/vm/cogit.c 2011-07-13 19:10:17 UTC (rev 2457) +++ branches/Cog/nscogsrc/vm/cogit.c 2011-07-13 19:44:06 UTC (rev 2458) @@ -1,9 +1,9 @@ /* Automatically generated by - CCodeGenerator * VMMaker.oscog-eem.98 uuid: 120a176d-c5ad-4b31-829d-2236efbb9278 + CCodeGenerator VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 from - SimpleStackBasedCogit * VMMaker.oscog-eem.98 uuid: 120a176d-c5ad-4b31-829d-2236efbb9278 + SimpleStackBasedCogit VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 */ -static char __buildInfo[] = "SimpleStackBasedCogit * VMMaker.oscog-eem.98 uuid: 120a176d-c5ad-4b31-829d-2236efbb9278 " __DATE__ ; +static char __buildInfo[] = "SimpleStackBasedCogit VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 " __DATE__ ; char *__cogitBuildInfo = __buildInfo; Modified: branches/Cog/nscogsrc/vm/cogit.h =================================================================== --- branches/Cog/nscogsrc/vm/cogit.h 2011-07-13 19:10:17 UTC (rev 2457) +++ branches/Cog/nscogsrc/vm/cogit.h 2011-07-13 19:44:06 UTC (rev 2458) @@ -1,5 +1,5 @@ /* Automatically generated by - CCodeGenerator * VMMaker.oscog-eem.98 uuid: 120a176d-c5ad-4b31-829d-2236efbb9278 + CCodeGenerator VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 */ Modified: branches/Cog/nscogsrc/vm/cogmethod.h =================================================================== --- branches/Cog/nscogsrc/vm/cogmethod.h 2011-07-13 19:10:17 UTC (rev 2457) +++ branches/Cog/nscogsrc/vm/cogmethod.h 2011-07-13 19:44:06 UTC (rev 2458) @@ -1,5 +1,5 @@ /* Automatically generated by - CCodeGenerator VMMaker.oscog-eem.96 uuid: b9686449-0418-4b93-b40f-40049e108776 + CCodeGenerator VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 */ typedef struct { Modified: branches/Cog/scripts/revertIfEssentiallyUnchanged =================================================================== --- branches/Cog/scripts/revertIfEssentiallyUnchanged 2011-07-13 19:10:17 UTC (rev 2457) +++ branches/Cog/scripts/revertIfEssentiallyUnchanged 2011-07-13 19:44:06 UTC (rev 2458) @@ -2,4 +2,8 @@ # Revert the argument if its changes comprise only the generation metadata # such as date generated, VMMaker version etc. +case `svn st "$1"` in +M*) ;; +*) exit 0 +esac test -z "`svn diff \"$1\" | grep '^[+-]' | egrep -v ' VMMaker[-.][a-z][a-z-]*\.[0-9][0-9]* uuid:| Qwaq-Plugins-[a-z][a-z]*\.[0-9][0-9]* uuid:| VMMaker[-.][a-z][a-z-]*\.[0-9][0-9]* \([ie]\)| Qwaq-Plugins-[a-z][a-z]*\.[0-9][0-9]* \([ie]\)|^-\-\-|^+\+\+|^[+-]$'`" && svn revert "$1" Modified: branches/Cog/src/vm/cogit.c =================================================================== --- branches/Cog/src/vm/cogit.c 2011-07-13 19:10:17 UTC (rev 2457) +++ branches/Cog/src/vm/cogit.c 2011-07-13 19:44:06 UTC (rev 2458) @@ -1,9 +1,9 @@ /* Automatically generated by - CCodeGenerator VMMaker.oscog-eem.99 uuid: 3a15adab-a4d3-49c1-82a1-6ed02b158658 + CCodeGenerator VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 from - StackToRegisterMappingCogit VMMaker.oscog-eem.99 uuid: 3a15adab-a4d3-49c1-82a1-6ed02b158658 + StackToRegisterMappingCogit VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 */ -static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.99 uuid: 3a15adab-a4d3-49c1-82a1-6ed02b158658 " __DATE__ ; +static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 " __DATE__ ; char *__cogitBuildInfo = __buildInfo; @@ -389,7 +389,6 @@ static sqInt canMulRR(AbstractInstruction * self_in_canMulRR); static sqInt ceClosureCopyDescriptor(sqInt descriptor); sqInt ceCPICMissreceiver(CogMethod *cPIC, sqInt receiver); -static sqInt ceImplicitReceiverFor(sqInt selector); sqInt ceSICMiss(sqInt receiver); void checkAssertsEnabledInCogit(void); static sqInt checkIfValidObjectRefAndTargetpccogMethod(sqInt annotation, char *mcpc, sqInt cogMethod); @@ -578,7 +577,6 @@ static void generateLowLevelUnlock(AbstractInstruction * self_in_generateLowLevelUnlock, sqInt vmOwnerLockAddress); static sqInt generateMapAtstart(sqInt addressOrNull, sqInt startAddress); static void generateMissAbortTrampolines(void); -static void generateNewspeakRuntime(void); static void generateOpenPICPrototype(void); static void generateRunTimeTrampolines(void); static void generateSendTrampolines(void); @@ -1019,7 +1017,6 @@ static sqInt ceFetchContextInstVarTrampoline; static void (*ceFlushICache)(unsigned long from, unsigned long to); unsigned long (*ceGetSP)(void); -static sqInt ceImplicitReceiverTrampoline; static sqInt ceMethodAbortTrampoline; static sqInt ceNonLocalReturnTrampoline; static sqInt cePICAbortTrampoline; @@ -2198,50 +2195,6 @@ } -/* Cached implicit receiver implementation. Caller looks like - mov selector, ClassReg - call ceImplicitReceiver - br continue - Lclass .word - Lmixin: .word - continue: - If class matches class of receiver then mixin contains either 0 or the - implicit receiver. - If mixin is 0, answer the actual receiver, otherwise mixin. */ - -static sqInt -ceImplicitReceiverFor(sqInt selector) -{ - sqInt classpc; - sqInt mixin; - sqInt mixinpc; - sqInt rcvrClass; - sqInt receiver; - sqInt retpc; - - receiver = mframeReceiverExport(); - retpc = stackTop(); - classpc = retpc + (jumpShortByteSize(backEnd)); - mixinpc = (retpc + (jumpShortByteSize(backEnd))) + BytesPerOop; - rcvrClass = fetchClassOf(receiver); - if (rcvrClass != (unalignedLongAt(backEnd, classpc))) { - mixin = implicitReceiverFormixinimplementing(receiver, mMethodClass(), selector); - unalignedLongAtput(backEnd, classpc, rcvrClass); - unalignedLongAtput(backEnd, mixinpc, (mixin == receiver - ? (0) - : (mixin))); - return mixin; - } - if (breakOnImplicitReceiver()) { - sendBreakpointreceiver(selector + BaseHeaderSize, lengthOf(selector), null); - } - mixin = unalignedLongAt(backEnd, mixinpc); - return (mixin == 0 - ? (receiver) - : (mixin)); -} - - /* An in-line cache check in a method has failed. The failing entry check has jumped to the ceMethodAbort abort call at the start of the method which has called this routine. @@ -8368,27 +8321,7 @@ ; } -static void -generateNewspeakRuntime(void) -{ - sqInt ceExplicitReceiverTrampoline; - - /* Cached push implicit receiver implementation. Caller looks like - mov selector, ClassReg - call cePushImplicitReceiver - br continue - Lclass .word - Lmixin: .word - continue: - If class matches class of receiver then mixin contains either 0 or the implicit receiver. - If 0, push the actual receiver. */ - - ceExplicitReceiverTrampoline = genTrampolineForcalledargresult(ceExplicitReceiverAt, "ceExplicitReceiverTrampoline", SendNumArgsReg, ReceiverResultReg); - ceImplicitReceiverTrampoline = genTrampolineForcalledargresult(ceImplicitReceiverFor, "ceImplicitReceiverTrampoline", ClassReg, ReceiverResultReg); -} - - /* Generate the prototype ClosedPIC to determine how much space as full PIC takes. When we first allocate a closed PIC it only has one or two cases and we want to grow it. Modified: branches/Cog/src/vm/cogit.h =================================================================== --- branches/Cog/src/vm/cogit.h 2011-07-13 19:10:17 UTC (rev 2457) +++ branches/Cog/src/vm/cogit.h 2011-07-13 19:44:06 UTC (rev 2458) @@ -1,5 +1,5 @@ /* Automatically generated by - CCodeGenerator VMMaker.oscog-eem.99 uuid: 3a15adab-a4d3-49c1-82a1-6ed02b158658 + CCodeGenerator VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 */ Modified: branches/Cog/src/vm/cogmethod.h =================================================================== --- branches/Cog/src/vm/cogmethod.h 2011-07-13 19:10:17 UTC (rev 2457) +++ branches/Cog/src/vm/cogmethod.h 2011-07-13 19:44:06 UTC (rev 2458) @@ -1,5 +1,5 @@ /* Automatically generated by - CCodeGenerator VMMaker.oscog-eem.99 uuid: 3a15adab-a4d3-49c1-82a1-6ed02b158658 + CCodeGenerator VMMaker.oscog-eem.100 uuid: 0f2efd1e-0fd4-4544-b32b-91a0b38c6354 */ typedef struct { |
Free forum by Nabble | Edit this page |