David T. Lewis uploaded a new version of VMMaker to project VM Maker: http://source.squeak.org/VMMaker/VMMaker-dtl.377.mcz
==================== Summary ====================
Name: VMMaker-dtl.377 Author: dtl Time: 27 February 2016, 5:17:20.567 pm UUID: 80df7d73-9bc3-484e-a4ff-45e6d2e8d0dc Ancestors: VMMaker-tfel.376
VMMaker 4.15.3
For Interpreter>>primitiveResume: add check for isContext: required for Squeak trunk as of Kernel-eem.1000 and above.
Background - see Kernel-eem.1000 in Squeak trunk, update comment repeated here for reference: Make Process>>resume primitive. Andreas fixed the ancestor of the Cog VM so that the resume primitive fails if the suspendedContext is not a context. This renders Tim's suspendedCOntext ifNil: [^self primitiveFailed] guard obsolete. Hence nuke primitiveResume.
Remove <inline: false> from Interpreter>>resume: because it is no longer required. The inliner is much improved since early days, and many other <inline: false> directives can probably also be removed, but that can be the subject of a later update.
=============== Diff against VMMaker-tfel.376 ===============
Item was changed: ----- Method: Interpreter>>primitiveResume (in category 'process primitives') ----- primitiveResume "Put this process on the scheduler's lists thus allowing it to proceed next time there is a chance for processes of its priority level"
| proc | proc := self stackTop. "rcvr" "self success: ((self fetchClassOf: proc) = (self splObj: ClassProcess))." + (self isContext: (objectMemory fetchPointer: SuspendedContextIndex ofObject: proc)) ifFalse: + [^self primitiveFail]. self successful ifTrue: [ self resume: proc ].!
Item was changed: ----- Method: Interpreter>>resume: (in category 'process primitive support') ----- resume: aProcess | activeProc activePriority newPriority | - <inline: false> activeProc := objectMemory fetchPointer: ActiveProcessIndex ofObject: self schedulerPointer. activePriority := self quickFetchInteger: PriorityIndex ofObject: activeProc. newPriority := self quickFetchInteger: PriorityIndex ofObject: aProcess. newPriority > activePriority ifTrue: [self putToSleep: activeProc. self transferTo: aProcess] ifFalse: [self putToSleep: aProcess]!
Item was changed: ----- Method: VMMaker class>>versionString (in category 'version testing') ----- versionString
"VMMaker versionString"
+ ^'4.15.3'! - ^'4.15.2'!
vm-dev@lists.squeakfoundation.org