Eliot Miranda uploaded a new version of VMMaker to project VM Maker: http://source.squeak.org/VMMaker/VMMaker.oscog-eem.2899.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.2899 Author: eem Time: 25 November 2020, 7:36:40.903792 pm UUID: 977272e3-1e46-496a-ad49-a29453fce189 Ancestors: VMMaker.oscog-eem.2898
MTVM: Minor cleanup. In the simulator the REPL is able to compute 3+4, 3*4, 3<<4, 3 raisedTo: 4, etc, without error.
=============== Diff against VMMaker.oscog-eem.2898 ===============
Item was changed: ----- Method: CogThreadManager>>setVMOwner: (in category 'public api') ----- + setVMOwner: indexOrZero + "An ugly accessor used in only three cases: + 1. by ownVMFromUnidentifiedThread when the VM is first locked to the thread id + of the unidentified thread, and then, once identified, to the thread's index. + 2. by wakeVMThreadFor: used by the two-level scheduler to switch threads when + a Smalltalk process switch occurs to a process affined to another thread. + 3. to release the VM (set the owner to zero)" + <inline: #always> + vmOwner := indexOrZero. - setVMOwner: index - <inline: false> - vmOwner := index. self sqLowLevelMFence!
Item was changed: ----- Method: CogThreadManager>>startThreadSubsystem (in category 'public api') ----- startThreadSubsystem "Initialize the threading subsystem, aborting if there is an error." | vmThread | <inline: false> self assert: threads = nil. vmOSThread := self ioCurrentOSThread. numThreadsIncrement := (self ioNumProcessors max: 2) min: 16. (self growThreadInfosToAtLeast: numThreadsIncrement * 2) ifFalse: [self error: 'no memory to start thread system']. + vmThread := threads at: (vmOwner := 1). - vmThread := threads at: 1. vmThread state: CTMInitializing. self registerVMThread: vmThread. + vmThread state: CTMAssignableOrInVM! - vmThread state: CTMAssignableOrInVM. - self setVMOwner: 1!
vm-dev@lists.squeakfoundation.org