[OpenSmalltalk/opensmalltalk-vm] 568ec2: CogVM source as per VMMaker.oscog-eem.2258

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[OpenSmalltalk/opensmalltalk-vm] 568ec2: CogVM source as per VMMaker.oscog-eem.2258

Eliot Miranda-3
 
  Branch: refs/heads/Cog
  Home:   https://github.com/OpenSmalltalk/opensmalltalk-vm
  Commit: 568ec25bb56893b65c1de13c322f88acb626dd51
      https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/568ec25bb56893b65c1de13c322f88acb626dd51
  Author: Eliot Miranda <[hidden email]>
  Date:   2017-07-21 (Fri, 21 Jul 2017)

  Changed paths:
    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 spur64src/vm/cogit.h
    M spur64src/vm/cointerp.c
    M spur64src/vm/cointerp.h
    M spur64src/vm/gcc3x-cointerp.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/gcc3x-cointerp.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/BochsIA32Plugin/BochsIA32Plugin.c
    M src/plugins/BochsX64Plugin/BochsX64Plugin.c
    M src/plugins/CroquetPlugin/CroquetPlugin.c
    M src/plugins/GdbARMPlugin/GdbARMPlugin.c
    M src/plugins/HostWindowPlugin/HostWindowPlugin.c
    M src/plugins/IA32ABI/IA32ABI.c
    M src/plugins/MacMenubarPlugin/MacMenubarPlugin.c
    M src/plugins/SqueakFFIPrims/ARM32FFIPlugin.c
    M src/plugins/SqueakFFIPrims/IA32FFIPlugin.c
    M src/plugins/SqueakFFIPrims/X64SysVFFIPlugin.c
    M src/plugins/SqueakFFIPrims/X64Win64FFIPlugin.c
    M src/plugins/VMProfileLinuxSupportPlugin/VMProfileLinuxSupportPlugin.c
    M src/plugins/VMProfileMacSupportPlugin/VMProfileMacSupportPlugin.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.2258

Interpreter:
Provide primitive 248 as a don't-copy-hash alternative to primitive 72
(primitiveArrayBecomeForward, the primitive in elementsForwardIdentityTo:
which implements becomeForward:.

Rewrite remaining pop:;push: users in primitives to use pop:thenPush:

InterpreterPlugins:
Fix integer promotion in the plugin hierarchy, which is compiled as either
32 or 64 bits.  Use a functional hack; size all types that are either
32 or 64 bits as 48 bits.

Add the Terf primitives to the HostWindowPlugin as <option: #TerfVM>.
Make positive/signedMachineIntegerFor: <inline: #always> since they're merely
indirections to 64-bit and 32-bit functions, and with #always we don't bother
to generate the method itself.