New Cog VMs available

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

New Cog VMs available

Eliot Miranda-2
at www.mirandabanda.org/files/Cog/VM/VM.r3390

Note that there's also a 64-bit Spur linux stack VM available for people (Hi Tobias!) who want to play with it.  The 64-bit image is in mirandabanda.org/files/Cog/SpurImages.

CogVM binaries as per VMMaker.oscog-eem.1388/r3390
Newspeak:
Enforce Newspeak access control in the interpreter, and enable it in Stack VMs.
Add a separate global lookup cache for non-ordinary sends.
Do proper lookups for self and super send misses from cogged code.
Do proper lookups for implicit receiver and outer send misses from cogged code.
Distinguish lookup for ordinary sends and for MNU processing in the JIT.
Skip private methods and stop on protected methods in ordinary lookup.
This should complete Newspeak access control.

Spur:
Add explicit read barriers to primitives which access an argument as the
receiver (i.e. the mirror primitives).  Don't check if the actual receiver is
used.  Simplify failure where appropriate because primitives will be retried.
Fix bogus assert in extSendBytecode.  Simplify
SpurMemoryManager>>classForClassTag:; its assert is superfluous.

ARM Cogit:
Add hardware FP support for ARM.
Runs all SUnit tests and assorted benchmarks ok, makes nbody 3X faster.
Probably some cleaning up to do, possibly more careful NaN handling etc.

Fix PIC parsing for out-of-line literals.  Add an assert to the closed PIC
prototype code to check all PIC parameters are accessible.  Add a
containsAddress: to abstract away the test for a target within the PIC.

--
best,
Eliot