[Vm-dev] New Cog VMs available
eliot.miranda at gmail.com
Sat Oct 4 00:17:08 UTC 2014
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
selector that was not understood instead of #doesNotUnderstand:.
Fix the description of the blockonwarn flag (not blockonwarning).
Fix one-way become for classes with and without copyHash, primarily by
allInstances. One-way become for classes causes duplicates in the class
(either that or an allInstances scan would be needed as part of the become
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
path when it is. Make both the marking phase of GC and allInstances check
and eliminate refereces to duplicate entries at wrong/obsolete class
Fix markAndShouldScan: to not scan the pun classes of non-objects on the
such as implicit receiver caches and Sista counters.
Eliminate the classTableBitmap premature optimization. All the information
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.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Vm-dev