[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] c80633: CogVM source as per VMMaker.oscog-eem.3268

Eliot Miranda noreply at github.com
Tue Nov 8 20:05:58 UTC 2022


  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: c80633de4995150e366846fbfe8ef627793f4803
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/c80633de4995150e366846fbfe8ef627793f4803
  Author: Eliot Miranda <eliot.miranda at gmail.com>
  Date:   2022-11-08 (Tue, 08 Nov 2022)

  Changed paths:
    M platforms/Cross/plugins/SqueakFFIPrims/sqFFI.h
    M platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c
    M src/plugins/B3DAcceleratorPlugin/B3DAcceleratorPlugin.c
    M src/plugins/BitBltPlugin/BitBltPlugin.c
    M src/plugins/BochsIA32Plugin/BochsIA32Plugin.c
    M src/plugins/BochsX64Plugin/BochsX64Plugin.c
    M src/plugins/FileDialogPlugin/FileDialogPlugin.c
    M src/plugins/GdbARMPlugin/GdbARMPlugin.c
    M src/plugins/GdbARMv8Plugin/GdbARMv8Plugin.c
    M src/plugins/HostWindowPlugin/HostWindowPlugin.c
    M src/plugins/MacMenubarPlugin/MacMenubarPlugin.c
    M src/plugins/SoundPlugin/SoundPlugin.c
    M src/plugins/Squeak3D/Squeak3D.c
    M src/plugins/SqueakFFIPrims/ARM32FFIPlugin.c
    M src/plugins/SqueakFFIPrims/ARM64AppleFFIPlugin.c
    M src/plugins/SqueakFFIPrims/ARM64FFIPlugin.c
    M src/plugins/SqueakFFIPrims/IA32FFIPlugin.c
    M src/plugins/SqueakFFIPrims/RiscV64FFIPlugin.c
    M src/plugins/SqueakFFIPrims/X64SysVFFIPlugin.c
    M src/plugins/SqueakFFIPrims/X64Win64FFIPlugin.c
    M src/plugins/UnixOSProcessPlugin/UnixOSProcessPlugin.c
    M src/plugins/VMProfileMacSupportPlugin/VMProfileMacSupportPlugin.c
    M src/spur32.cog.lowcode/cointerp.c
    M src/spur32.cog.lowcode/cointerp.h
    M src/spur32.cog.lowcode/gcc3x-cointerp.c
    M src/spur32.cog/cointerp.c
    M src/spur32.cog/cointerp.h
    M src/spur32.cog/cointerpmt.c
    M src/spur32.cog/cointerpmt.h
    M src/spur32.cog/gcc3x-cointerp.c
    M src/spur32.cog/gcc3x-cointerpmt.c
    M src/spur32.sista/cointerp.c
    M src/spur32.sista/cointerp.h
    M src/spur32.sista/gcc3x-cointerp.c
    M src/spur32.stack.lowcode/gcc3x-interp.c
    M src/spur32.stack.lowcode/interp.c
    M src/spur32.stack/gcc3x-interp.c
    M src/spur32.stack/interp.c
    M src/spur64.cog.lowcode/cointerp.c
    M src/spur64.cog.lowcode/cointerp.h
    M src/spur64.cog.lowcode/gcc3x-cointerp.c
    M src/spur64.cog/cointerp.c
    M src/spur64.cog/cointerp.h
    M src/spur64.cog/cointerpmt.c
    M src/spur64.cog/cointerpmt.h
    M src/spur64.cog/gcc3x-cointerp.c
    M src/spur64.cog/gcc3x-cointerpmt.c
    M src/spur64.sista/cointerp.c
    M src/spur64.sista/cointerp.h
    M src/spur64.sista/gcc3x-cointerp.c
    M src/spur64.stack.lowcode/gcc3x-interp.c
    M src/spur64.stack.lowcode/interp.c
    M src/spur64.stack/gcc3x-interp.c
    M src/spur64.stack/interp.c
    M src/v3.cog/cointerp.c
    M src/v3.cog/cointerp.h
    M src/v3.cog/gcc3x-cointerp.c
    M src/v3.stack/gcc3x-interp.c
    M src/v3.stack/interp.c

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

Fix several sends of [positive|signed]MachineIntegerFor: which is implemented
in InterpreterPlugin, not InterpreterProxy.

Refactor call logging in the ThreadedFFIPlugin to get as much of the logging
code out of the critical path as possible.

Fix issues with spur primitive metadata in plugin primitives.
stackFloatValue: stackStringValue: et al look inside the object on the stack.
stackValue: stackIntegerValue: et al do not. So extend
StackInterpreter class>>isObjectAccessor: to include those stack accessors
that look inside the object on the stack.  This fixes the metadata calculations
for things like B3DAcceleratorPlugin>>primitiveSetLights,
FileDialogPlugin>>primitiveFileDialogAddFilter, etc.




More information about the Vm-dev mailing list