[Vm-dev] VM Maker: VMMaker.oscog-eem.403.mcz
commits at source.squeak.org
commits at source.squeak.org
Sun Sep 22 19:11:20 UTC 2013
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.403.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.403
Author: eem
Time: 22 September 2013, 12:08:39.144 pm
UUID: 1dd82aad-7f17-40d8-b728-2499d03969df
Ancestors: VMMaker.oscog-eem.402
Flush new space on someInstance/someObject
=============== Diff against VMMaker.oscog-eem.402 ===============
Item was added:
+ ----- Method: SpurMemoryManager>>firstAccessibleObject (in category 'object enumeration') -----
+ firstAccessibleObject
+ <inline: false>
+ self assert: nilObj = newSpaceLimit.
+ "flush newSpace to settle the enumeration."
+ self flushNewSpace.
+ ^nilObj!
Item was changed:
----- Method: SpurMemoryManager>>flushNewSpace (in category 'generation scavenging') -----
flushNewSpace
| savedTenuringThreshold |
savedTenuringThreshold := scavenger getRawTenuringThreshold.
scavenger setRawTenuringThreshold: newSpaceLimit.
+ self scavengingGC.
- self sufficientSpaceAfterGC: 0.
scavenger setRawTenuringThreshold: savedTenuringThreshold.
self assert: scavenger rememberedSetSize = 0.
self assert: pastSpaceStart = scavenger pastSpace start.
self assert: freeStart = scavenger eden start!
Item was changed:
----- Method: SpurMemoryManager>>initialInstanceOf: (in category 'object enumeration') -----
initialInstanceOf: classObj
<inline: false>
| classIndex |
classIndex := self rawHashBitsOf: classObj.
classIndex = 0 ifTrue:
[^nil].
+ "flush newSpace to settle the enumeration."
+ self flushNewSpace.
self allObjectsDo:
[:objOop|
classIndex = (self classIndexOf: objOop) ifTrue:
[^objOop]].
^nil!
More information about the Vm-dev
mailing list