[Vm-dev] New Cog VMs available

Eliot Miranda eliot.miranda at gmail.com
Sat Oct 4 00:17:08 UTC 2014


...at http://www.mirandabanda.org/files/Cog/VM/VM.r3095/.

CogVM binaries as per VMMaker.oscog-eem.890/r3095

Fix line-buffered input in sqFilePluginBasicPrims.c when buffer size > 1.
fread cannot be relied upon to answer lines.

Fix bug in Cogit>>lookup:for:methodAndErrorSelectorInto: which if cogging a
method found through an MNU would set the cog method's selector to the
original
selector that was not understood instead of #doesNotUnderstand:.

Fix the description of the blockonwarn flag (not blockonwarning).

Spur:
Fix one-way become for classes with and without copyHash, primarily by
fixing
allInstances.  One-way become for classes causes duplicates in the class
table
(either that or an allInstances scan would be needed as part of the become
to
change instances referring to the deleted class index, which would be slow).
So allInstances must be able to cope with duplicates.  Hence split it into a
fast path common case when the class in question is not duplicated, and a
slower
path when it is.  Make both the marking phase of GC and allInstances check
for
and eliminate refereces to duplicate entries at wrong/obsolete class
indices.

Fix markAndShouldScan: to not scan the pun classes of non-objects on the
heap
such as implicit receiver caches and Sista counters.

Eliminate the classTableBitmap premature optimization.  All the information
we
need is in the cassTable and the class's hashes therein.

Change pinObject: to answer 0 on failure and the (possibly moved) object on
success.  Much easier than having to check and follow forwarding pointer.
The changes to platforms/Cross/plugins/FilePlugin/sqFilePluginBasicPrims.c
in r3092 in a Spur MT VM depend on this.
-- 
best,
Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20141003/87ec7403/attachment.htm


More information about the Vm-dev mailing list