[Vm-dev] New Cog VMs available

Eliot Miranda eliot.miranda at gmail.com
Thu Mar 5 21:22:34 UTC 2015


Hi All,

    recent instability seems to have been cured.  Please find new VMs at
http://www.mirandabanda.org/files/Cog/VM/VM.r3266.  For Squeakers, these
are close to release candidates for the upcoming 5.0 release.  I have one
last modification to do with free space handling on start-up in Spur (the
current VMs over-allocate free space), and maybe a minor speed-up of the
LargeIntegersPlugin; other than that I intend bug fixes only.


CogVM binaries as per VMMaker.oscog-eem.1085/r3266

Avoid duplication in fetching active process and scheduler in
process-switch machinery.

Take advantage of endianness for simpler large integer initialization.

Simplify primitiveMakePoint. Include primitiveMethodXray to introspect on
Cog state of methods.

Refactor positive32BitIntegerFor: and signed32BitIntegerFor: in the
realization that these
reduce to essentially integerObjectOf: in 64-bit Spur.  The idea is to
inline if in 64-bit Spur
but not if in the 32-bit VMs.  Add notOption: processing to allow excluding
noInlineSigned32BitIntegerFor: et al.  Add hasSixtyFourBitImmediates to no
longer assume that
wordSize = 8 implies 64-bit immediates.

Use positiveMachineIntegerFor: in place of positive32BitIntegerFor: in some
plugins.

Simplify primitiveDisplayString given isArray:.
Simplify two B3DAcceleratorPlugin prims given topRemappableOop and isArray:

Slang:
Changes to type inferrence/propagation and inlining to better support
64-bit Spur.
See change log of VMMaker.oscog in 1067-1085 range for exhaustive details.
-- 
best,
Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20150305/707e395b/attachment.htm


More information about the Vm-dev mailing list