[Vm-dev] New Cog VMs available
karlramberg at gmail.com
Tue Sep 30 12:42:26 UTC 2014
With latest windows SpurVm the test 1 to: 50 do:[: i | Browser open] runs
without any crash.
I have not tested the VM much othervice, but it looks much more stable.
On Tue, Sep 30, 2014 at 5:21 AM, Eliot Miranda <eliot.miranda at gmail.com>
> ... at http://www.mirandabanda.org/files/Cog/VM/VM.r3085/.
> CogVM binaries as per VMMaker.oscog-eem.887/r3085
> Change become to flush method caches for becommed classes.
> Changes are to
> - add a BecameActiveClassFlag to becomeEffectsFlags
> - refuse to do an in-place become on active classes.
> - flush the caches before the post-become scan of the class table so that
> forwarded classes can be spotted. i.e. if a class index in a method cache
> is that of a forwarded class then it was becommed and the cache entry can
> be voided.
> Fix bug in sweepToFollowForwardersForPigCompact which failed to update and
> answer lowest forwarder. Fixes numForwarders == 0 assert failures.
> Fix bug with become and class table not removing
> classes which become causes them to be unhashed.
> Fix bogus assert fail in synchronousSignal:. Refactor following code into
> ensureSemaphoreForwardedThroughContext: and fix the assert there-in.
> Use rawOverflowSlotsOf: in bytesInObject:.
> Make sure voidImplicitReceiverCacheAt: sets codeModified if IRCs are
> Make sure freeMethod: clears cmRefersToYoung
> Fix assert in cogitPostGCAction: that would fire erroneously in Spur
> Fix regression in V3 become youngReferrers management in
> We /must/ prune young referrers if
> removes a cog method from youngReferrers because it may get added back and
> youngReferrers cannot contain duplicates.
> Fix potential bug in Spur become argument validation. Check for immediates
> needs to come /after/ following forwarders since an object can
> to an immediate.
> Fix cPICHasForwardedClass:; this did /not/
> enumerate the classIndices in a Spur Closed PIC.
> Install the callPrimitiveBytecode in the Interpreter's
> bytecodeDispatchTable on Spur.
> Modify callPrimitiveBytecode to not invoke unknownBytecode processing if
> at the
> first bytecode of a primitive method.
> Correct sign comparison of instructionPointer in justActivateNewMethod.
> Relax the validInstructionPointer:inMethod:framePointer:
> assert to accept any pc in initialPC to self size range
> now that callPrimitiveBytecode is more forgiving.
> Speed up primitiveMarkUnwindMethod & primitiveMarkHandlerMethod in the
> StackInterpreter by setting them to 0 in the primitive table.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Vm-dev