[Vm-dev] VM Maker: Cog-eem.82.mcz
commits at source.squeak.org
commits at source.squeak.org
Tue Sep 10 22:38:35 UTC 2013
Eliot Miranda uploaded a new version of Cog to project VM Maker:
http://source.squeak.org/VMMaker/Cog-eem.82.mcz
==================== Summary ====================
Name: Cog-eem.82
Author: eem
Time: 10 September 2013, 3:38:22.985 pm
UUID: 37d0e6ac-9997-415c-9971-8a8628a60cc8
Ancestors: Cog-eem.81
bytesPerWord => wordSize
=============== Diff against Cog-eem.81 ===============
Item was changed:
----- Method: SpurBootstrap>>fillInPointerObject:from: (in category 'bootstrap image') -----
fillInPointerObject: newObj from: oldObj
"Fill-in a newObj with appropriately mapped contents from oldObj.
Filter-out the character table and the compact classes array.
Map character objects to immediate characters."
+ 0 to: (oldHeap lastPointerOf: oldObj) / oldHeap wordSize - 1 do:
- 0 to: (oldHeap lastPointerOf: oldObj) / oldHeap bytesPerWord - 1 do:
[:i| | oldValue newValue |
oldValue := oldHeap fetchPointer: i ofObject: oldObj.
newValue := (oldHeap isIntegerObject: oldValue)
ifTrue: [oldValue]
ifFalse:
[map at: oldValue ifAbsent:
[(oldValue = oldHeap characterTable
or: [oldValue = (oldHeap splObj: CompactClasses)])
ifTrue: [newHeap nilObject]
ifFalse:
[self assert: (oldHeap fetchClassOfNonImm: oldValue) = oldHeap classCharacter.
newHeap characterObjectOf:
(oldHeap integerValueOf:
(oldHeap fetchPointer: CharacterValueIndex ofObject: oldValue))]]].
newHeap
storePointerUnchecked: i
ofObject: newObj
withValue: newValue].
(classToIndex includesKey: oldObj) ifTrue:
[newHeap
storePointerUnchecked: InstanceSpecificationIndex
ofObject: newObj
withValue: (self newClassFormatFor: oldObj)]!
More information about the Vm-dev
mailing list