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

Eliot Miranda noreply at github.com
Wed Sep 29 00:15:01 UTC 2021


  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: c6b70458764ba471a1602b2f5b43357387375504
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/c6b70458764ba471a1602b2f5b43357387375504
  Author: Eliot Miranda <eliot.miranda at gmail.com>
  Date:   2021-09-28 (Tue, 28 Sep 2021)

  Changed paths:
    M platforms/Cross/vm/sq.h
    M platforms/Cross/vm/sqVirtualMachine.c
    M platforms/Cross/vm/sqVirtualMachine.h
    M platforms/Mac OS/vm/sqMacMain.c
    M platforms/iOS/vm/Common/Classes/sqSqueakMainApp.m
    M platforms/minheadless/unix/sqPlatformSpecific-Unix.c
    M platforms/minheadless/windows/sqPlatformSpecific-Win32.c
    M platforms/unix/vm/sqUnixMain.c
    M platforms/win32/vm/sqWin32Main.c
    M src/plugins/BochsIA32Plugin/BochsIA32Plugin.c
    M src/plugins/BochsX64Plugin/BochsX64Plugin.c
    M src/plugins/FileAttributesPlugin/FileAttributesPlugin.c
    M src/plugins/FilePlugin/FilePlugin.c
    M src/plugins/GdbARMPlugin/GdbARMPlugin.c
    M src/plugins/GdbARMv8Plugin/GdbARMv8Plugin.c
    M src/plugins/SqueakFFIPrims/ARM32FFIPlugin.c
    M src/plugins/SqueakFFIPrims/ARM64FFIPlugin.c
    M src/plugins/SqueakFFIPrims/IA32FFIPlugin.c
    M src/plugins/SqueakFFIPrims/X64SysVFFIPlugin.c
    M src/plugins/SqueakFFIPrims/X64Win64FFIPlugin.c
    M src/spur32.cog.lowcode/cogit.h
    M src/spur32.cog.lowcode/cogitARMv5.c
    M src/spur32.cog.lowcode/cogitIA32.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.lowcode/interp.h
    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/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.cog/interp.h
    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/spur32.sista/interp.h
    M src/spur32.stack.lowcode/gcc3x-interp.c
    M src/spur32.stack.lowcode/interp.c
    M src/spur32.stack.lowcode/interp.h
    M src/spur32.stack/gcc3x-interp.c
    M src/spur32.stack/interp.c
    M src/spur32.stack/interp.h
    M src/spur32.stack/validImage.c
    M src/spur64.cog.lowcode/cogit.h
    M src/spur64.cog.lowcode/cogitARMv8.c
    M src/spur64.cog.lowcode/cogitX64SysV.c
    M src/spur64.cog.lowcode/cogitX64WIN64.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.lowcode/interp.h
    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/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.cog/interp.h
    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/spur64.sista/interp.h
    M src/spur64.stack.lowcode/gcc3x-interp.c
    M src/spur64.stack.lowcode/interp.c
    M src/spur64.stack.lowcode/interp.h
    M src/spur64.stack/gcc3x-interp.c
    M src/spur64.stack/interp.c
    M src/spur64.stack/interp.h
    M src/spur64.stack/validImage.c
    M src/v3.cog/cogit.h
    M src/v3.cog/cogitARMv5.c
    M src/v3.cog/cogitIA32.c
    M src/v3.cog/cointerp.c
    M src/v3.cog/cointerp.h
    M src/v3.cog/gcc3x-cointerp.c
    M src/v3.cog/interp.h
    M src/v3.stack/gcc3x-interp.c
    M src/v3.stack/interp.c
    M src/v3.stack/interp.h

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

StackInterpreter
Add primitiveFailFor:withSecondary: to allow the ThreadedFFIPlugin to
fail with the new PrimErrFFIMarshallingError and its own specific
marshalling error code as a parameter.

Make sure primitiveCallout is loaded only once from SqueakFFIPrims.
C initializer semantics may have meant it was being reloaded every time.

Major change to debug printing so that the platform error handlers can
print the call stack to a specific FILE * stream, not simply hack stdout
via pushOutputFile.

Linux, Mac & Windows now all produce crash.dmp containing C and Smalltalk
backtraces on fatal exception in 32 & 64 bits.




More information about the Vm-dev mailing list