[Vm-dev] VM Maker: Cog-eem.316.mcz
commits at source.squeak.org
commits at source.squeak.org
Tue Mar 8 23:14:24 UTC 2016
Eliot Miranda uploaded a new version of Cog to project VM Maker:
http://source.squeak.org/VMMaker/Cog-eem.316.mcz
==================== Summary ====================
Name: Cog-eem.316
Author: eem
Time: 8 March 2016, 3:13:29.910455 pm
UUID: 9eb6d25c-959b-4852-bd48-adaf01ecc4c3
Ancestors: Cog-eem.315
Fix the Spur 32- to 64-bit bootstrap given that updated Spur images now have SmallFloat64 at the right place in the class table.
=============== Diff against Cog-eem.315 ===============
Item was changed:
----- Method: Spur32to64BitBootstrap>>alterSystem (in category 'bootstrap image') -----
alterSystem
+ self ensureSmallFloatInClassTable.
- self installSmallFloatInClassTable.
self nilWordSize!
Item was added:
+ ----- Method: Spur32to64BitBootstrap>>ensureSmallFloatInClassTable (in category 'bootstrap image') -----
+ ensureSmallFloatInClassTable
+ | firstClassTablePage smallFloatClass |
+ firstClassTablePage := heap64 fetchPointer: 0 ofObject: heap64 classTableRootObj.
+ smallFloatClass := self smallFloatClass.
+ (heap64 hashBitsOf: smallFloatClass) = heap64 smallFloatTag
+ ifTrue:
+ [self assert: (heap64 fetchPointer: heap64 smallFloatTag ofObject: firstClassTablePage)
+ = smallFloatClass]
+ ifFalse:
+ [self assert: (heap64 hashBitsOf: smallFloatClass) = 0.
+ heap64
+ storePointer: heap64 smallFloatTag ofObject: firstClassTablePage withValue: smallFloatClass;
+ setHashBitsOf: smallFloatClass to: heap64 smallFloatTag]!
Item was removed:
- ----- Method: Spur32to64BitBootstrap>>installSmallFloatInClassTable (in category 'bootstrap image') -----
- installSmallFloatInClassTable
- | firstPage smallFloatClass |
- firstPage := heap64 fetchPointer: 0 ofObject: heap64 classTableRootObj.
- smallFloatClass := self smallFloatClass.
- self assert: (heap64 hashBitsOf: smallFloatClass) = 0.
- heap64
- storePointer: heap64 smallFloatTag
- ofObject: firstPage
- withValue: smallFloatClass.
- heap64
- setHashBitsOf: smallFloatClass to: heap64 smallFloatTag!
More information about the Vm-dev
mailing list