[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] 72cf32: CogV source as per VMMaker.oscog-eem.2761

Eliot Miranda noreply at github.com
Wed Jun 24 18:42:11 UTC 2020


  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: 72cf325e0ccd3bc6da3c73d12fc1fcfe08a4110d
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/72cf325e0ccd3bc6da3c73d12fc1fcfe08a4110d
  Author: Eliot Miranda <eliot.miranda at gmail.com>
  Date:   2020-06-24 (Wed, 24 Jun 2020)

  Changed paths:
    M nsspur64src/vm/cogit.h
    M nsspur64src/vm/cogitX64SysV.c
    M nsspur64src/vm/cogitX64WIN64.c
    M nsspur64src/vm/cointerp.c
    M nsspur64src/vm/cointerp.h
    M nsspur64src/vm/gcc3x-cointerp.c
    M nsspursrc/vm/cogit.h
    M nsspursrc/vm/cogitARMv5.c
    M nsspursrc/vm/cogitIA32.c
    M nsspursrc/vm/cogitMIPSEL.c
    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/iOS/plugins/CameraPlugin/AVFoundationVideoGrabber.m
    M scripts/revertIfEssentiallyUnchanged
    M spur64src/vm/cogit.h
    M spur64src/vm/cogitX64SysV.c
    M spur64src/vm/cogitX64WIN64.c
    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/cogitX64SysV.c
    M spurlowcode64src/vm/cogitX64WIN64.c
    M spurlowcode64src/vm/cointerp.c
    M spurlowcode64src/vm/cointerp.h
    M spurlowcode64src/vm/gcc3x-cointerp.c
    M spurlowcodesrc/vm/cogit.h
    M spurlowcodesrc/vm/cogitARMv5.c
    M spurlowcodesrc/vm/cogitIA32.c
    M spurlowcodesrc/vm/cogitMIPSEL.c
    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/cogitX64SysV.c
    M spursista64src/vm/cogitX64WIN64.c
    M spursista64src/vm/cointerp.c
    M spursista64src/vm/cointerp.h
    M spursista64src/vm/gcc3x-cointerp.c
    M spursistasrc/vm/cogit.h
    M spursistasrc/vm/cogitARMv5.c
    M spursistasrc/vm/cogitIA32.c
    M spursistasrc/vm/cogitMIPSEL.c
    M spursistasrc/vm/cointerp.c
    M spursistasrc/vm/cointerp.h
    M spursistasrc/vm/gcc3x-cointerp.c
    M spursrc/vm/cogit.h
    M spursrc/vm/cogitARMv5.c
    M spursrc/vm/cogitIA32.c
    M spursrc/vm/cogitMIPSEL.c
    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 spurstack64src/vm/validImage.c
    M spurstacksrc/vm/gcc3x-interp.c
    M spurstacksrc/vm/interp.c
    M spurstacksrc/vm/validImage.c
    M src/plugins/MiscPrimitivePlugin/MiscPrimitivePlugin.c
    M src/vm/cogit.h
    M src/vm/cogitARMv5.c
    M src/vm/cogitIA32.c
    M src/vm/cogitMIPSEL.c
    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:
  -----------
  CogV source as per VMMaker.oscog-eem.2761
Author: eem
Time: 24 June 2020, 11:15:52.846414 am
UUID: 34b29eae-6069-4cb7-8a89-7365fb398dfb
Ancestors: VMMaker.oscog-eem.2760

Cherry Picking from various recent commits, but avoiding the extremely desirable, but as yet unfinished, VMMaker.oscog-nice.2761 transformInAssignmentTo: changes.the "thisContext method includes: 42" crash.

MiscPrimitivePlugin: fix several uses of sizeOfSTArrayFromCPrimitive: that don''t check for potential failure if e.g. invoked on a CompiledMethod.  Returning from a primitive normally when the primtiive has failed leads to disaster since the stack gets cu back but shouldn't be.  For CompiledMethod isBytes: is true but isWordsOrBytes: is false.  sizeOfSTArrayFromCPrimitive: checks for isWordsOrBytes:.  The primtiives check that the argument is isBytes: but don't check if sizeOfSTArrayFromCPrimitive: fails.  More general fixes, such as fixing isBytes: to be false for CompiledMethod, or introducing isPureBytes: and using it, are not quick fixes.  hence this limited fix here.

Primitive infrastructure: consequently guard the various methodReturnXXX''s with an assert to check that a primitive has not failed.

Also make sure that the SpurNBitCoMemoryManagers do not follow any reference to a Cog method in the first field of a CompiledMethod.

Cosmetic changes for ThreadedFFIPlugins from VMMaker.oscog-nice.2762

Do not try to generate SHA256Plugin, it's obsolete and absent from latest cryptography packages. This from VMMaker.oscog-nice.2761.

Slang:
Fix TParseNode>>isSameAs: implementations to incluyde an identity check.  TReturnNode always answered false to this in the past.

Optimize inlineFunctionCall:in: to avoid a rewrite of the copied parse tree being inlined if the actuals match the formals.  Uses the improved bindVariablesIn:.

Use a setter for variable & expression in TAssignmentNode to ease breakpointing/debugging.

Scripts: Fix revertIfEssentiallyUnchanged to handle the threaded FFI plugins
now they include version info in the moduleName routine.


  Commit: 93b9f887c47d0e27104741ff4203f48a648a8f6e
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/93b9f887c47d0e27104741ff4203f48a648a8f6e
  Author: Eliot Miranda <eliot.miranda at gmail.com>
  Date:   2020-06-24 (Wed, 24 Jun 2020)

  Changed paths:
    M .travis.yml
    M third-party/libssh2.spec

  Log Message:
  -----------
  Merge branch 'Cog' of https://github.com/OpenSmalltalk/opensmalltalk-vm into Cog


Compare: https://github.com/OpenSmalltalk/opensmalltalk-vm/compare/32457868b901...93b9f887c47d


More information about the Vm-dev mailing list