Eliot Miranda uploaded a new version of VMMaker to project VM Maker: http://source.squeak.org/VMMaker/VMMaker.oscog-eem.3148.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.3148 Author: eem Time: 7 February 2022, 7:59:49.131441 pm UUID: 55858401-f9a2-4458-ab45-b576bac43a1c Ancestors: VMMaker.oscog-eem.3147
Spur CoInterpreter: fix crashes of vmParameterAt: on WIndows under Clang. The PrimCallOnSmalltalkStack needs PrimCallOnSmalltalkStackAlign2x also.
=============== Diff against VMMaker.oscog-eem.3147 ===============
Item was changed: ----- Method: CoInterpreter>>primitivePropertyFlagsForSpur:numArgs: (in category 'cog jit support') ----- primitivePropertyFlagsForSpur: primIndex numArgs: numArgs <inline: true> "Answer any special requirements of the given primitive. Spur needs to set newMethod if and when a primitive fails so primitives can retry on failure due to forwarders, but this isn't done until failure. The primitiveMetadataTable is populated based on the primitiveMetadata: pragma in internal primitives." | baseFlags | baseFlags := profileSemaphore = objectMemory nilObject ifTrue: [0] ifFalse: [PrimCallCollectsProfileSamples]. self cppIf: #LRPCheck ifTrue: [longRunningPrimitiveCheckSemaphore ifNotNil: [baseFlags := baseFlags bitOr: PrimCallNeedsNewMethod]].
(primIndex = PrimNumberVMParameter and: [numArgs = 1]) "vmParameterAt:" ifTrue: + [^baseFlags + PrimCallOnSmalltalkStack + PrimCallOnSmalltalkStackAlign2x + PrimCallIsInternalPrim]. - [^baseFlags + PrimCallOnSmalltalkStack + PrimCallIsInternalPrim].
^baseFlags bitOr: ((primitiveMetadataTable at: primIndex) bitAnd: SpurPrimitiveFlagsMask)!
vm-dev@lists.squeakfoundation.org