The Trunk: Kernel-nice.1103.mcz

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

The Trunk: Kernel-nice.1103.mcz

Nicolas Cellier uploaded a new version of Kernel to project The Trunk:

==================== 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


        Delete obsolete binding and block machinery now unused by the Compiler.

        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!