[Vm-dev] VM Maker: VMMaker.oscog-cb.1927.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Aug 31 11:51:25 UTC 2016
ClementBera uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-cb.1927.mcz
==================== Summary ====================
Name: VMMaker.oscog-cb.1927
Author: cb
Time: 31 August 2016, 1:48:20.563669 pm
UUID: d00bfc22-488e-430c-a9f6-90cbaeabdb23
Ancestors: VMMaker.oscog-eem.1926
Now that the trampoline for context inst var store can be called on single contexts, we need to update the trampoline to work with single contexts
=============== Diff against VMMaker.oscog-eem.1926 ===============
Item was changed:
----- Method: CoInterpreter>>ceContext:instVar:value: (in category 'trampolines') -----
ceContext: maybeMarriedContext instVar: slotIndex value: anOop
<api>
"genStorePop:MaybeContextReceiverVariable: filters out unmarried contexts
but not arbitrary objects in subclasses. It answers maybeMarriedContext so
that the StackToRegisterMappingCogit can keep ReceiverResultReg live."
+ ((objectMemory isContextNonImm: maybeMarriedContext)
+ and: [self isMarriedOrWidowedContext: maybeMarriedContext])
- (objectMemory isContextNonImm: maybeMarriedContext)
ifTrue:
+ [instructionPointer := self popStack.
- [self assert: (self isMarriedOrWidowedContext: maybeMarriedContext).
- instructionPointer := self popStack.
self externalInstVar: slotIndex ofContext: maybeMarriedContext put: anOop.
self push: instructionPointer]
ifFalse:
[objectMemory storePointer: slotIndex ofObject: maybeMarriedContext withValue: anOop].
^maybeMarriedContext!
More information about the Vm-dev
mailing list