[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] 2238b2: CogVM source as per VMMaker.oscog-eem.2493

GitHub noreply at github.com
Wed Dec 19 02:39:49 UTC 2018


  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: 2238b2e8818580c182061f811a444268b30a5c20
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/2238b2e8818580c182061f811a444268b30a5c20
  Author: Eliot Miranda <eliot.miranda at gmail.com>
  Date:   2018-12-18 (Tue, 18 Dec 2018)

  Changed paths:
    M image/Slang Test Workspace.text
    M nsspur64src/vm/cogit.h
    M nsspur64src/vm/cointerp.c
    M nsspur64src/vm/cointerp.h
    M nsspur64src/vm/gcc3x-cointerp.c
    M nsspursrc/vm/cogit.h
    M nsspursrc/vm/cointerp.c
    M nsspursrc/vm/cointerp.h
    M nsspursrc/vm/gcc3x-cointerp.c
    M nsspurstack64src/vm/gcc3x-interp.c
    M nsspurstack64src/vm/interp.c
    M nsspurstacksrc/vm/gcc3x-interp.c
    M nsspurstacksrc/vm/interp.c
    M platforms/Cross/vm/sqVirtualMachine.c
    M platforms/Cross/vm/sqVirtualMachine.h
    M spur64src/vm/cogit.h
    M spur64src/vm/cointerp.c
    M spur64src/vm/cointerp.h
    M spur64src/vm/cointerpmt.c
    M spur64src/vm/cointerpmt.h
    M spur64src/vm/gcc3x-cointerp.c
    M spur64src/vm/gcc3x-cointerpmt.c
    M spurlowcode64src/vm/cogit.h
    M spurlowcode64src/vm/cointerp.c
    M spurlowcode64src/vm/cointerp.h
    M spurlowcode64src/vm/gcc3x-cointerp.c
    M spurlowcodesrc/vm/cogit.h
    M spurlowcodesrc/vm/cointerp.c
    M spurlowcodesrc/vm/cointerp.h
    M spurlowcodesrc/vm/gcc3x-cointerp.c
    M spurlowcodestack64src/vm/gcc3x-interp.c
    M spurlowcodestack64src/vm/interp.c
    M spurlowcodestacksrc/vm/gcc3x-interp.c
    M spurlowcodestacksrc/vm/interp.c
    M spursista64src/vm/cogit.h
    M spursista64src/vm/cointerp.c
    M spursista64src/vm/cointerp.h
    M spursista64src/vm/gcc3x-cointerp.c
    M spursistasrc/vm/cogit.h
    M spursistasrc/vm/cointerp.c
    M spursistasrc/vm/cointerp.h
    M spursistasrc/vm/gcc3x-cointerp.c
    M spursrc/vm/cogit.h
    M spursrc/vm/cointerp.c
    M spursrc/vm/cointerp.h
    M spursrc/vm/cointerpmt.c
    M spursrc/vm/cointerpmt.h
    M spursrc/vm/gcc3x-cointerp.c
    M spursrc/vm/gcc3x-cointerpmt.c
    M spurstack64src/vm/gcc3x-interp.c
    M spurstack64src/vm/interp.c
    M spurstacksrc/vm/gcc3x-interp.c
    M spurstacksrc/vm/interp.c
    M src/plugins/AsynchFilePlugin/AsynchFilePlugin.c
    M src/plugins/BitBltPlugin/BitBltPlugin.c
    M src/plugins/BochsIA32Plugin/BochsIA32Plugin.c
    M src/plugins/BochsX64Plugin/BochsX64Plugin.c
    M src/plugins/FileCopyPlugin/FileCopyPlugin.c
    M src/plugins/GdbARMPlugin/GdbARMPlugin.c
    M src/plugins/GeniePlugin/GeniePlugin.c
    M src/plugins/HostWindowPlugin/HostWindowPlugin.c
    M src/plugins/ImmX11Plugin/ImmX11Plugin.c
    M src/plugins/InternetConfigPlugin/InternetConfigPlugin.c
    M src/plugins/JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.c
    M src/plugins/JoystickTabletPlugin/JoystickTabletPlugin.c
    M src/plugins/LargeIntegers/LargeIntegers.c
    M src/plugins/LocalePlugin/LocalePlugin.c
    M src/plugins/MD5Plugin/MD5Plugin.c
    M src/plugins/MIDIPlugin/MIDIPlugin.c
    M src/plugins/MacMenubarPlugin/MacMenubarPlugin.c
    M src/plugins/Mpeg3Plugin/Mpeg3Plugin.c
    M src/plugins/QuicktimePlugin/QuicktimePlugin.c
    M src/plugins/SHA256Plugin/SHA256Plugin.c
    M src/plugins/SerialPlugin/SerialPlugin.c
    M src/plugins/SocketPlugin/SocketPlugin.c
    M src/plugins/SoundPlugin/SoundPlugin.c
    M src/vm/cogit.h
    M src/vm/cointerp.c
    M src/vm/cointerp.h
    M src/vm/cointerpmt.c
    M src/vm/cointerpmt.h
    M src/vm/gcc3x-cointerp.c
    M src/vm/gcc3x-cointerpmt.c
    M stacksrc/vm/gcc3x-interp.c
    M stacksrc/vm/interp.c

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

SmartSyntaxPlugin Slang:
Improve failure guard & result returning interleaving to avoid extra returns
and tests of failed (see fixUpReturnOneStmt:on:).  Eliminate the unused
suppressFailureGuards: support and inst vars.

Separate argument validation from argument marshalling to fix the bug Levente
identified in SocketPlugin>>primitiveSocket:connectTo:port:/primitiveSocketConnectToPort.
Because the old scheme interleaved validation and marshalling, marshalling
could be done on invalid objects and cause crashes.  See
http://lists.squeakfoundation.org/pipermail/vm-dev/2018-December/029511.html.
Also have teh primitives answer primErrBadArgument if validation fails.

To this end add InterpreterProxy>>isPositiveMachineIntegerObject: &
InterpreterProxy>>isBooleanObject:, bumping up the API version to 1.15.

Update Slang Test Workspace.text for plugin generation.



      **NOTE:** This service has been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.


More information about the Vm-dev mailing list