Eliot Miranda uploaded a new version of System to project The Trunk: http://source.squeak.org/trunk/System-eem.945.mcz
==================== Summary ====================
Name: System-eem.945 Author: eem Time: 30 March 2017, 4:03:18.930537 pm UUID: 2af969d8-3253-405c-bdb1-05ab5455c7ff Ancestors: System-eem.944
Change the segment loader to do without BlockContext and to use Context in place of MethodContext. At some stage we /could/ implement morphing the old blocks into new blocks, but it would be challenging.
=============== Diff against System-eem.944 ===============
Item was changed: ----- Method: ImageSegmentLoader class>>initialize (in category 'class initialization') ----- initialize HeaderTypeMask := 3. HeaderTypeSizeAndClass := 0. "3-word header" HeaderTypeClass := 1. "2-word header" HeaderTypeFree := 2. "free block" HeaderTypeShort := 3. "1-word header" BytesInHeader := { HeaderTypeSizeAndClass -> 12. HeaderTypeClass -> 8. HeaderTypeShort -> 4. } as: Dictionary. "explicit list in case image has no/different compact classes" CompactClasses := {CompiledMethod. nil. Array. nil. LargePositiveInteger. Float. MethodDictionary. Association. Point. Rectangle. ByteString. nil. + nil "was BlockCOntext; needs special handling". Context. nil. Bitmap. - BlockContext. MethodContext. nil. Bitmap. nil. nil. nil. nil. nil. nil. nil. nil. nil. nil. nil. nil. nil. nil. nil}. !
Item was changed: ----- Method: ImageSegmentLoader>>allocateBlockContext: (in category 'allocating') ----- allocateBlockContext: nWords | homeOop methodOop method | homeOop := self uint32At: position + 24. methodOop := self uint32At: homeOop + 16. method := self readObjectAt: methodOop. + ^self shouldBeImplemented! - ^BlockContext newForMethod: method.!
Item was changed: ----- Method: ImageSegmentLoader>>allocateMethodContext: (in category 'allocating') ----- allocateMethodContext: nWords | methodOop method | methodOop := self uint32At: position + 16. method := self readObjectAt: methodOop. + ^Context newForMethod: method! - ^MethodContext newForMethod: method.!
packages@lists.squeakfoundation.org