Branch: refs/heads/Cog Home: https://github.com/OpenSmalltalk/opensmalltalk-vm Commit: c14b7173411680b35353844aa619d0b091d10e13 https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/c14b7173411680b35353844aa619d0b091d10e13 Author: Eliot Miranda <[hidden email]> Date: 2020-10-29 (Thu, 29 Oct 2020) Changed paths: M build.macos64x64/bochsx64/exploration/Makefile M nsspur64src/vm/cogit.h M nsspur64src/vm/cogitARMv8.c 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 nsspur64src/vm/vmCallback.h 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 nsspursrc/vm/vmCallback.h M nsspurstack64src/vm/gcc3x-interp.c M nsspurstack64src/vm/interp.c M nsspurstack64src/vm/vmCallback.h M nsspurstacksrc/vm/gcc3x-interp.c M nsspurstacksrc/vm/interp.c M nsspurstacksrc/vm/vmCallback.h M platforms/iOS/vm/OSX/sqPlatformSpecific.h M processors/IA32/bochs/explorationx64/printcpu.c M processors/IA32/bochs/explorationx64/printcpucr.c M processors/IA32/bochs/explorationx64/printcpuxmm.c M scripts/gitrevert M spur64src/vm/cogit.h M spur64src/vm/cogitARMv8.c 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 spur64src/vm/vmCallback.h M spurlowcode64src/vm/cogit.h M spurlowcode64src/vm/cogitARMv8.c 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 spurlowcode64src/vm/vmCallback.h 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 spurlowcodesrc/vm/vmCallback.h M spurlowcodestack64src/vm/gcc3x-interp.c M spurlowcodestack64src/vm/interp.c M spurlowcodestack64src/vm/vmCallback.h M spurlowcodestacksrc/vm/gcc3x-interp.c M spurlowcodestacksrc/vm/interp.c M spurlowcodestacksrc/vm/vmCallback.h M spursista64src/vm/cogit.h M spursista64src/vm/cogitARMv8.c 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 spursista64src/vm/vmCallback.h 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 spursistasrc/vm/vmCallback.h 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 spursrc/vm/vmCallback.h M spurstack64src/vm/gcc3x-interp.c M spurstack64src/vm/interp.c M spurstack64src/vm/validImage.c M spurstack64src/vm/vmCallback.h M spurstacksrc/vm/gcc3x-interp.c M spurstacksrc/vm/interp.c M spurstacksrc/vm/validImage.c M spurstacksrc/vm/vmCallback.h M src/plugins/B2DPlugin/B2DPlugin.c M src/plugins/FilePlugin/FilePlugin.c M src/plugins/SocketPlugin/SocketPlugin.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/UnixOSProcessPlugin/UnixOSProcessPlugin.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 src/vm/vmCallback.h M stacksrc/vm/gcc3x-interp.c M stacksrc/vm/interp.c M stacksrc/vm/vmCallback.h Log Message: ----------- CogVM source as per Name: VMMaker.oscog-eem.2862 Cogit: Revise deriving the varBaseAddress after finding on MacOS that the linker may not "follow orders". So take the minimum of several likely addresses, secretly hoping the minimum is something like stackLimit, which likely has the highest dynamic frequency (well done clang). Eliminate ceEnterInterpreterOnReturnFromCogCode and have the ceReturnToInterpreterTrampoline invoke interpret directly, using the same code as ceInvokeInterpret. Do this by moving the setMethod: send into interpret from senders; setMethod: is key because it sets the bytecodeSetSelector to enable multiple bytecode set support, but machine code is (and should remain) ignorant of the details of bytecode set selection in compiled method headers. cogitARMv8.c Add __ARM_ARCH >= 8 to cogit.c's ARMv8 identifying macros. CoInterpreterMT: Get rid of vmOwnerLock; what a bogus idea. Just use CAS on vmOwner as God (DS) intended. Fix a bug in CoInterpreterMT>>wakeHighestPriority. Refactor ABI callout marshalling on X64 to use the same CArg0Reg thru CArg3Reg pattern as on ARMv8. Make CPUID the first processor specific opcode on Intel. Eliminate use of reenterInterpreter, this is StackInterpreter only now. FilePlugin: Add FilePlugin>>primitiveFileReadPinningAndDisowning, for file read in COGMTVM. Use methodReturnInteger: rather than methodReturnValue: ... integerObjectOf:: Slang: generate neater code for pointer indirection. Instead of indexing with zero, dereference with *. Eliminate a space in function type printing. |
Free forum by Nabble | Edit this page |