[Vm-dev] [OpenSmalltalk/opensmalltalk-vm] fc26c6: CogVM source as per VMMaker.oscog-eem.2671
Eliot Miranda
noreply at github.com
Thu Jan 23 17:43:54 UTC 2020
Branch: refs/heads/Cog
Home: https://github.com/OpenSmalltalk/opensmalltalk-vm
Commit: fc26c6398750a0c72d5341cbd97b342d20bba718
https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/fc26c6398750a0c72d5341cbd97b342d20bba718
Author: Eliot Miranda <eliot.miranda at gmail.com>
Date: 2020-01-22 (Wed, 22 Jan 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 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/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:
-----------
CogVM source as per VMMaker.oscog-eem.2671
Spur:
Succumb to temptation and avoid moving the value through the FPU in 64-bit
floatAt:[put:]. Rename the primitives to fit the house style
(primitiveSpurFoo, not primitiveFooSpur).
Refactor smallFloatObjectOf: to avoid duplication.
Cogit:
Refactor simulation of flushICacheFrom:to: so that it actually runs on
processors which we can and do choose to implement this in machine code. The
implementation is now in the backEnd and defers to the simulator if required.
Compute numTrampolines more accurately, deferring to the backEnd class for
backEnd specific trampolines such as ceCheckFeatures.
Add AddCqRR (useful for ARMv8 cache flushing).
Clean up the definition of the optional trampolines for ZeroCount, low-level
locks, processor feature checks and cache flushing.
Commit: 2aaf1b919b15e14e01ef083e260e3011150cb6fc
https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/2aaf1b919b15e14e01ef083e260e3011150cb6fc
Author: Eliot Miranda <eliot.miranda at gmail.com>
Date: 2020-01-23 (Thu, 23 Jan 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 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/ADPCMCodecPlugin/ADPCMCodecPlugin.c
M src/plugins/AioPlugin/AioPlugin.c
M src/plugins/AsynchFilePlugin/AsynchFilePlugin.c
M src/plugins/B2DPlugin/B2DPlugin.c
M src/plugins/B3DAcceleratorPlugin/B3DAcceleratorPlugin.c
M src/plugins/BMPReadWriterPlugin/BMPReadWriterPlugin.c
M src/plugins/BitBltPlugin/BitBltPlugin.c
M src/plugins/BochsIA32Plugin/BochsIA32Plugin.c
M src/plugins/BochsX64Plugin/BochsX64Plugin.c
M src/plugins/CameraPlugin/CameraPlugin.c
M src/plugins/CroquetPlugin/CroquetPlugin.c
M src/plugins/DESPlugin/DESPlugin.c
M src/plugins/DSAPrims/DSAPrims.c
M src/plugins/DropPlugin/DropPlugin.c
M src/plugins/FFTPlugin/FFTPlugin.c
M src/plugins/FileAttributesPlugin/FileAttributesPlugin.c
M src/plugins/FileCopyPlugin/FileCopyPlugin.c
M src/plugins/FilePlugin/FilePlugin.c
M src/plugins/FloatArrayPlugin/FloatArrayPlugin.c
M src/plugins/FloatMathPlugin/FloatMathPlugin.c
M src/plugins/GdbARMPlugin/GdbARMPlugin.c
M src/plugins/GdbARMv8Plugin/GdbARMv8Plugin.c
M src/plugins/GeniePlugin/GeniePlugin.c
M src/plugins/HostWindowPlugin/HostWindowPlugin.c
M src/plugins/IA32ABI/IA32ABI.c
M src/plugins/ImmX11Plugin/ImmX11Plugin.c
M src/plugins/InternetConfigPlugin/InternetConfigPlugin.c
M src/plugins/JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.c
M src/plugins/JPEGReaderPlugin/JPEGReaderPlugin.c
M src/plugins/JoystickTabletPlugin/JoystickTabletPlugin.c
M src/plugins/Klatt/Klatt.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/Matrix2x3Plugin/Matrix2x3Plugin.c
M src/plugins/MiscPrimitivePlugin/MiscPrimitivePlugin.c
M src/plugins/Mpeg3Plugin/Mpeg3Plugin.c
M src/plugins/QuicktimePlugin/QuicktimePlugin.c
M src/plugins/RePlugin/RePlugin.c
M src/plugins/SHA256Plugin/SHA256Plugin.c
M src/plugins/ScratchPlugin/ScratchPlugin.c
M src/plugins/SecurityPlugin/SecurityPlugin.c
M src/plugins/SerialPlugin/SerialPlugin.c
M src/plugins/SocketPlugin/SocketPlugin.c
M src/plugins/SoundCodecPrims/SoundCodecPrims.c
M src/plugins/SoundGenerationPlugin/SoundGenerationPlugin.c
M src/plugins/SoundPlugin/SoundPlugin.c
M src/plugins/Squeak3D/Squeak3D.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/plugins/SqueakSSL/SqueakSSL.c
M src/plugins/StarSqueakPlugin/StarSqueakPlugin.c
M src/plugins/UUIDPlugin/UUIDPlugin.c
M src/plugins/UnicodePlugin/UnicodePlugin.c
M src/plugins/UnixOSProcessPlugin/UnixOSProcessPlugin.c
M src/plugins/VMProfileLinuxSupportPlugin/VMProfileLinuxSupportPlugin.c
M src/plugins/VMProfileMacSupportPlugin/VMProfileMacSupportPlugin.c
M src/plugins/WeDoPlugin/WeDoPlugin.c
M src/plugins/Win32OSProcessPlugin/Win32OSProcessPlugin.c
M src/plugins/XDisplayControlPlugin/XDisplayControlPlugin.c
M src/plugins/ZipPlugin/ZipPlugin.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:
-----------
CogVM source as per VMMaker.oscog-eem.2672
Slang/Cogit:
Declare the ceTryLockVMOwner & ceUnlockVMOwner routines as conditional on
COGMTVM (as they should be). Clean up the variable emission code to handle
this kind of (ugly) hack more cleanly. Fixes a regression introduced by
VMMaker.oscog-eem.2671 where these variables would be mis-declared as sqInts
in COGMTVM=0 compiles.
Commit: c21e41a649d95395ec721ef3d47d4031d16f0ffd
https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/c21e41a649d95395ec721ef3d47d4031d16f0ffd
Author: Eliot Miranda <eliot.miranda at gmail.com>
Date: 2020-01-23 (Thu, 23 Jan 2020)
Changed paths:
M spurlowcode64src/vm/exampleSqNamedPrims.h
M spurlowcodesrc/vm/exampleSqNamedPrims.h
M spurlowcodestack64src/vm/exampleSqNamedPrims.h
M src/plugins/ADPCMCodecPlugin/ADPCMCodecPlugin.c
M src/plugins/AioPlugin/AioPlugin.c
M src/plugins/AsynchFilePlugin/AsynchFilePlugin.c
M src/plugins/B2DPlugin/B2DPlugin.c
M src/plugins/B3DAcceleratorPlugin/B3DAcceleratorPlugin.c
M src/plugins/BMPReadWriterPlugin/BMPReadWriterPlugin.c
M src/plugins/BitBltPlugin/BitBltPlugin.c
M src/plugins/BochsIA32Plugin/BochsIA32Plugin.c
M src/plugins/BochsX64Plugin/BochsX64Plugin.c
M src/plugins/CameraPlugin/CameraPlugin.c
M src/plugins/CroquetPlugin/CroquetPlugin.c
M src/plugins/DESPlugin/DESPlugin.c
M src/plugins/DSAPrims/DSAPrims.c
M src/plugins/DropPlugin/DropPlugin.c
M src/plugins/FFTPlugin/FFTPlugin.c
M src/plugins/FileAttributesPlugin/FileAttributesPlugin.c
M src/plugins/FileCopyPlugin/FileCopyPlugin.c
M src/plugins/FilePlugin/FilePlugin.c
M src/plugins/FloatArrayPlugin/FloatArrayPlugin.c
M src/plugins/FloatMathPlugin/FloatMathPlugin.c
M src/plugins/GdbARMPlugin/GdbARMPlugin.c
M src/plugins/GdbARMv8Plugin/GdbARMv8Plugin.c
M src/plugins/GeniePlugin/GeniePlugin.c
M src/plugins/HostWindowPlugin/HostWindowPlugin.c
M src/plugins/IA32ABI/IA32ABI.c
M src/plugins/ImmX11Plugin/ImmX11Plugin.c
M src/plugins/InternetConfigPlugin/InternetConfigPlugin.c
M src/plugins/JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.c
M src/plugins/JPEGReaderPlugin/JPEGReaderPlugin.c
M src/plugins/JoystickTabletPlugin/JoystickTabletPlugin.c
M src/plugins/Klatt/Klatt.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/Matrix2x3Plugin/Matrix2x3Plugin.c
M src/plugins/MiscPrimitivePlugin/MiscPrimitivePlugin.c
M src/plugins/Mpeg3Plugin/Mpeg3Plugin.c
M src/plugins/QuicktimePlugin/QuicktimePlugin.c
M src/plugins/RePlugin/RePlugin.c
M src/plugins/SHA256Plugin/SHA256Plugin.c
M src/plugins/ScratchPlugin/ScratchPlugin.c
M src/plugins/SecurityPlugin/SecurityPlugin.c
M src/plugins/SerialPlugin/SerialPlugin.c
M src/plugins/SocketPlugin/SocketPlugin.c
M src/plugins/SoundCodecPrims/SoundCodecPrims.c
M src/plugins/SoundGenerationPlugin/SoundGenerationPlugin.c
M src/plugins/SoundPlugin/SoundPlugin.c
M src/plugins/Squeak3D/Squeak3D.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/plugins/SqueakSSL/SqueakSSL.c
M src/plugins/StarSqueakPlugin/StarSqueakPlugin.c
M src/plugins/UUIDPlugin/UUIDPlugin.c
M src/plugins/UnicodePlugin/UnicodePlugin.c
M src/plugins/UnixOSProcessPlugin/UnixOSProcessPlugin.c
M src/plugins/VMProfileLinuxSupportPlugin/VMProfileLinuxSupportPlugin.c
M src/plugins/VMProfileMacSupportPlugin/VMProfileMacSupportPlugin.c
M src/plugins/WeDoPlugin/WeDoPlugin.c
M src/plugins/Win32OSProcessPlugin/Win32OSProcessPlugin.c
M src/plugins/XDisplayControlPlugin/XDisplayControlPlugin.c
M src/plugins/ZipPlugin/ZipPlugin.c
Log Message:
-----------
CogVM source as per VMMaker.oscog-eem.2673
Placate Slang by adding a macro for the internal vs external tag on the end of
the plugin moduleName, so that we keep the changes in VMMaker.oscog-eem.2671 &
VMMaker.oscog-eem.2672 for hack #if declarations, and don't have to add yet
another hack to handle the old style (and more verbose) moduleName declaration.
And move declareModuleName: to VMPluginCodeGenerator where it belongs.
Alas this means that we regenerate all plugins, but just this once.
Fix the unofficial exampleSqNamedPrims.h files in some lowcode dirs.
Compare: https://github.com/OpenSmalltalk/opensmalltalk-vm/compare/ea1a65c66c48...c21e41a649d9
More information about the Vm-dev
mailing list