[Vm-dev] New Cog VMs available

Eliot Miranda eliot.miranda at gmail.com
Thu May 21 22:25:21 UTC 2015


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

CogVM binaries as per VMMaker.oscog-eem.1318/r3354

Cogit:
Fix the performance regression on x86 in r3308 VMMaker.oscog-eem.1178
through
the use of XCHG instruction in
CogIA32Compiler>>genPushRegisterArgsForNumArgs:.
Since SendNumArgsReg is not live with small arity sends it can replace
TempReg.

Spur:
Fix bad C bug in nextInSortedFreeListLink:given:.  The result
type must be usqInt, otherwise the list can be wrongly
terminated and the second compaction pass can segfault.

Change printFreeChunk:isNextChunk: to printFreeChunk:printAsTreeNode:, and
use
it to implement printSortedFreeList.

Firm up the checkTraversableSortedFreeList assert routine to check that
the list is traversable from lastFreeChunk, not just firstFreeChunk.  Make
checkTraversableSortedFreeList robust in presence of empty sorted free list.

Slang:
Make promoteArithmeticTypes:and: obey C99's promotion rules more closely in
an
effort to generate more stable sources.  Types were flipping between sqInt &
usqInt for variables that were assigned both types, so that one generation
would produce one type and a subsequent one another (Set/Dictionary
hashing?).
-- 
best,
Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20150521/474e161b/attachment.htm


More information about the Vm-dev mailing list