The Trunk: Compiler-eem.385.mcz

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

The Trunk: Compiler-eem.385.mcz

commits-2
Eliot Miranda uploaded a new version of Compiler to project The Trunk:
http://source.squeak.org/trunk/Compiler-eem.385.mcz

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

Name: Compiler-eem.385
Author: eem
Time: 16 June 2018, 4:29:33.44317 pm
UUID: 07c5fc8e-5463-4db6-912a-fdc0125ce7df
Ancestors: Compiler-eem.384

The scanner for spotting closure creation bytecodes in methods must identify full block closure creations.

=============== Diff against Compiler-eem.384 ===============

Item was changed:
  ----- Method: EncoderForSistaV1 class>>createClosureScanBlock (in category 'compiled method support') -----
  createClosureScanBlock
  "Answer a block argument for InstructionStream>>scanFor: that answers true
+ for block closure creation bytecodes.  Note that with this interface we can't answer
- for block closure creation bytecodes.  ote that with this interface we can't answer
  true for the extension in front of a push closure bytecode and so the interface may
  have to change at some point."
 
+ "* 224 11100000 aaaaaaaa Extend A (Ext A = Ext A prev * 256 + Ext A)
+ * 225 11100001 bbbbbbbb Extend B (Ext B = Ext B prev * 256 + Ext B)
+ ** 249 11111001 xxxxxxxx siyyyyyy push Closure Compiled block literal index xxxxxxxx (+ Extend A * 256) numCopied yyyyyy receiverOnStack: s = 1 ignoreOuterContext: i = 1
+ ** 250 11111010 eeiiikkk jjjjjjjj Push Closure Num Copied iii (+ExtA//16*8) Num Args kkk (+ ExtA\\16*8) BlockSize jjjjjjjj (+ExtB*256). ee = num extensions"
+ ^[:b| b >= 249 and: [b <= 250]]!
- "* 224 11100000 aaaaaaaa Extend A (Ext A = Ext A prev * 256 + Ext A)
- * 225 11100001 bbbbbbbb Extend B (Ext B = Ext B prev * 256 + Ext B)
- ** 250 11111010 eeiiikkk jjjjjjjj Push Closure Num Copied iii (+ExtA//16*8) Num Args kkk (+ ExtA\\16*8) BlockSize jjjjjjjj (+ExtB*256). ee = num extensions"
- ^[:b| b = 250]!