VM Maker: VMMaker.oscog-eem.2180.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

VM Maker: VMMaker.oscog-eem.2180.mcz

commits-2
 
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.2180.mcz

==================== Summary ====================

Name: VMMaker.oscog-eem.2180
Author: eem
Time: 24 March 2017, 9:26:28.687223 am
UUID: 9866d19d-5f98-43c3-98ab-332b63416145
Ancestors: VMMaker.oscog-cb.2179

Stack depth checking for the full closure bytecode(s).

=============== Diff against VMMaker.oscog-cb.2179 ===============

Item was changed:
  ----- Method: StackDepthFinder>>pushFullClosure:numCopied: (in category 'instruction decoding') -----
+ pushFullClosure: literal numCopied: numCopied
- pushFullClosure: literal numCopied: numCopied.
  "Push Closure bytecode."
  numCopied = 0
  ifTrue: [self push]
  ifFalse: [numCopied > 1 ifTrue:
+ [self drop: numCopied - 1]]!
- [self drop: numCopied - 1]].!

Item was added:
+ ----- Method: StackDepthFinder>>pushFullClosure:numCopied:receiverOnStack:ignoreOuterContext: (in category 'instruction decoding') -----
+ pushFullClosure: literal numCopied: numCopied receiverOnStack: receiverOnStack ignoreOuterContext: ignoreOuterContext
+ "Push Closure bytecode."
+ | delta |
+ delta := 1 - (receiverOnStack ifTrue: [1] ifFalse: [0]) - numCopied.
+ delta ~= 0 ifTrue: [self drop: delta negated]!