The Trunk: Kernel-eem.870.mcz

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

The Trunk: Kernel-eem.870.mcz

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

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

Name: Kernel-eem.870
Author: eem
Time: 17 September 2014, 3:55:43.269 pm
UUID: 26720d45-a583-48c1-8bda-02fa0f50cdc4
Ancestors: Kernel-eem.869

Revise blockCreationBytecodeMessage for
multiple bytecode sets. Provide the accessor to
determine which flag an encoder should use.

=============== Diff against Kernel-eem.869 ===============

Item was changed:
  ----- Method: BlockClosure>>blockCreationBytecodeMessage (in category 'scanning') -----
  blockCreationBytecodeMessage
  "Answer the abstract bytecode message that created the receiver."
+ ^self method abstractBytecodeMessageAt: self blockCreationPC
- | blockCreationBytecodeSize |
- ^self method abstractBytecodeMessageAt: startpc - (blockCreationBytecodeSize := 4)
 
  "(SortedCollection sortBlock: [:a :b| a compare: b caseSensitive: false]) sortBlock blockCreationBytecodeMessage"!

Item was added:
+ ----- Method: BlockClosure>>blockCreationPC (in category 'scanning') -----
+ blockCreationPC
+ "Answer the pc for the bytecode that created the receuver."
+ | method |
+ method := self method.
+ ^method encoderClass
+ pcOfBlockCreationBytecodeForBlockStartingAt: startpc
+ in: method!

Item was added:
+ ----- Method: CompiledMethod class>>headerFlagForEncoderClass: (in category 'method encoding') -----
+ headerFlagForEncoderClass: anEncoderClass
+ anEncoderClass = PrimaryBytecodeSetEncoderClass ifTrue:
+ [^0].
+ anEncoderClass = SecondaryBytecodeSetEncoderClass ifTrue:
+ [^SmallInteger minVal].
+ self error: 'The encoder is not one of the two installed bytecode sets'!