[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] 6f2853: CogVM source as per VMMaker.oscog-eem.3050

Eliot Miranda noreply at github.com
Tue Aug 31 23:29:44 UTC 2021

  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: 6f28534793512f33f04e9a7b483322d3f7657fa3
  Author: Eliot Miranda <eliot.miranda at gmail.com>
  Date:   2021-08-31 (Tue, 31 Aug 2021)

  Changed paths:
    M src/spur32.cog/cogit.h
    M src/spur32.cog/cogitARMv5.c
    M src/spur32.cog/cogitIA32.c
    M src/spur32.cog/cointerp.c
    M src/spur32.cog/cointerp.h
    M src/spur32.cog/gcc3x-cointerp.c
    M src/spur32.sista/cogit.h
    M src/spur32.sista/cogitARMv5.c
    M src/spur32.sista/cogitIA32.c
    M src/spur32.sista/cointerp.c
    M src/spur32.sista/cointerp.h
    M src/spur32.sista/gcc3x-cointerp.c
    M src/spur64.cog/cogit.h
    M src/spur64.cog/cogitARMv8.c
    M src/spur64.cog/cogitX64SysV.c
    M src/spur64.cog/cogitX64WIN64.c
    M src/spur64.cog/cointerp.c
    M src/spur64.cog/cointerp.h
    M src/spur64.cog/gcc3x-cointerp.c
    M src/spur64.sista/cogit.h
    M src/spur64.sista/cogitARMv8.c
    M src/spur64.sista/cogitX64SysV.c
    M src/spur64.sista/cogitX64WIN64.c
    M src/spur64.sista/cointerp.c
    M src/spur64.sista/cointerp.h
    M src/spur64.sista/gcc3x-cointerp.c
    M src/v3.cog/cogit.h
    M src/v3.cog/cogitARMv5.c
    M src/v3.cog/cogitIA32.c

  Log Message:
  CogVM source as per VMMaker.oscog-eem.3050

Cogit: avoid using the Context store check for the Spur extended push/pop/store
receiver var bytecodes by extending receiverTags with a bit for "maybe Context
class".  This is good for a 35% speedup in ReadStream>>#next et al, e.g.

	| string stream |
	string := (SourceFiles at: 2) contentsOfEntireFile.
	string := string first: (string size roundDownTo: 10000).
	stream := ReadStream on: string.
	[[stream next isNil] whileFalse] timeToRun

More information about the Vm-dev mailing list