Nicolas Cellier uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-nice.1103.mcz==================== Summary ====================
Name: Kernel-nice.1103
Author: nice
Time: 5 May 2017, 10:24:07.170429 pm
UUID: a912e534-9ced-4538-9f16-cba0c76fbc28
Ancestors: Kernel-eem.1102, Kernel-nice.1102
Merge
Kernel-eem.1102:
Delete obsolete binding and block machinery now unused by the Compiler.
Kernel-nice.1102:
Nuke pre-v3 closureCopy:copiedValues: method. No such message has been sent for a long long time.
Simplify the BlockStartLocator, because there is no need to handle pre-v3 closure anymore.
=============== Diff against Kernel-eem.1102 ===============
Item was changed:
InstructionClient subclass: #BlockStartLocator
+ instanceVariableNames: ''
- instanceVariableNames: 'nextJumpIsAroundBlock'
classVariableNames: ''
poolDictionaries: ''
category: 'Kernel-Methods'!
Item was removed:
- ----- Method: BlockStartLocator>>initialize (in category 'initialize-release') -----
- initialize
- nextJumpIsAroundBlock := false!
Item was removed:
- ----- Method: BlockStartLocator>>jump: (in category 'instruction decoding') -----
- jump: offset
- "If this jump is around a block answer the size of that block."
-
- nextJumpIsAroundBlock ifTrue:
- [nextJumpIsAroundBlock := false.
- ^offset]!
Item was removed:
- ----- Method: BlockStartLocator>>send:super:numArgs: (in category 'instruction decoding') -----
- send: selector super: supered numArgs: numberArguments
- nextJumpIsAroundBlock := #closureCopy:copiedValues: == selector
- "Don't use
- nextJumpIsAroundBlock := #(blockCopy: closureCopy:copiedValues:) includes: selector
- since BlueBook BlockContexts do not have their own temps."!
Item was removed:
- ----- Method: Context>>closureCopy:copiedValues: (in category 'controlling') -----
- closureCopy: numArgs copiedValues: anArray
- "Distinguish a block of code from its enclosing method by
- creating a BlockClosure for that block. The compiler inserts into all
- methods that contain blocks the bytecodes to send the message
- closureCopy:copiedValues:. Do not use closureCopy:copiedValues: in code that you write!! Only the
- compiler can decide to send the message closureCopy:copiedValues:. Fail if numArgs is
- not a SmallInteger. Optional. No Lookup. See Object documentation
- whatIsAPrimitive."
-
- <primitive: 200>
- ^BlockClosure outerContext: self startpc: pc + 2 numArgs: numArgs copiedValues: anArray!