VM Maker: Cog-eem.399.mcz

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

VM Maker: Cog-eem.399.mcz

commits-2
 
Eliot Miranda uploaded a new version of Cog to project VM Maker:
http://source.squeak.org/VMMaker/Cog-eem.399.mcz

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

Name: Cog-eem.399
Author: eem
Time: 11 February 2020, 11:22:16.644257 am
UUID: 689e2db3-108c-4b2f-bb52-6b6c362626e7
Ancestors: Cog-eem.398

Committing somethign the change history describes afurately:

M SpurMtoNBitImageConverter>>alterSystem
A SpurMtoNBitImageConverter>>flipWordSize
D SpurMtoNBitImageConverter>>nilWordSize

This just to record the idea

=============== Diff against Cog-eem.398 ===============

Item was changed:
  ----- Method: SpurMtoNBitImageConverter>>alterSystem (in category 'bootstrap image') -----
  alterSystem
  self ensureSmallFloatInClassTable.
+ self flipWordSize!
- self nilWordSize!

Item was added:
+ ----- Method: SpurMtoNBitImageConverter>>flipWordSize (in category 'bootstrap image') -----
+ flipWordSize
+ | wordSizeSym |
+ wordSizeSym := self findSymbol: #WordSize.
+ targetHeap allOldSpaceObjectsDo:
+ [:o|
+ ((targetHeap rawNumSlotsOf: o) > ValueIndex
+ and: [(targetHeap isFixedSizePointerFormat: (targetHeap formatOf: o))
+ and: [(targetHeap fetchPointer: KeyIndex ofObject: o) = wordSizeSym
+ and: [(targetHeap fetchPointer: ValueIndex ofObject: o) = (targetHeap integerObjectOf: sourceHeap bytesPerOop)]]]) ifTrue:
+ [targetHeap
+ storePointerUnchecked: ValueIndex
+ ofObject: o
+ withValue: (targetHeap integerObjectOf: targetHeap bytesPerOop)]]!

Item was removed:
- ----- Method: SpurMtoNBitImageConverter>>nilWordSize (in category 'bootstrap image') -----
- nilWordSize
- | wordSizeSym |
- wordSizeSym := self findSymbol: #WordSize.
- targetHeap allOldSpaceObjectsDo:
- [:o|
- ((targetHeap numSlotsOf: o) > ValueIndex
- and: [(targetHeap isPointersNonImm: o)
- and: [(targetHeap fetchPointer: KeyIndex ofObject: o) = wordSizeSym
- and: [(targetHeap fetchPointer: ValueIndex ofObject: o) = (targetHeap integerObjectOf: 4)]]]) ifTrue:
- [targetHeap storePointer: ValueIndex ofObject: o withValue: targetHeap nilObject]]!