[Vm-dev] VM Maker: VMMaker.oscog-nice.1905.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Jul 20 17:18:02 UTC 2016
Nicolas Cellier uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-nice.1905.mcz
==================== Summary ====================
Name: VMMaker.oscog-nice.1905
Author: nice
Time: 20 July 2016, 5:37:48.684832 pm
UUID: dc89d7c4-734c-4c22-b366-3de1c3dbbf42
Ancestors: VMMaker.oscog-nice.1904
Fix declaration of tenuringProportion in SpurGenerationScavenger: it is expected to be a double (between 0.0 and 1.0), not a sqInt.
Fix an incorrect usage of mem:cp:y: (swapping of sourcePointer and byteSize arguments). This method is not in use yet.
=============== Diff against VMMaker.oscog-nice.1904 ===============
Item was changed:
----- Method: RegisterAllocatingCogit>>setMergeSimStackOf: (in category 'bytecode generator support') -----
setMergeSimStackOf: fixup
<var: #fixup type: #'BytecodeFixup *'>
self assert: nextFixup < numFixups.
self moveSimStackConstantsToRegisters.
self cCode: [fixup mergeSimStack: mergeSimStacksBase + (nextFixup * self simStackSlots * (self sizeof: CogSimStackEntry))].
nextFixup := nextFixup + 1.
+ self cCode: [self mem: fixup mergeSimStack cp: simStack y: self simStackSlots * (self sizeof: CogSimStackEntry)]
- self cCode: [self mem: fixup mergeSimStack cp: self simStackSlots * (self sizeof: CogSimStackEntry) y: simStack]
inSmalltalk: [fixup mergeSimStack: self copySimStack]!
Item was changed:
----- Method: SpurGenerationScavenger class>>declareCVarsIn: (in category 'translation') -----
declareCVarsIn: aCCodeGenerator
#(eden futureSpace pastSpace) do:
[:var| aCCodeGenerator var: var type: #SpurNewSpaceSpace].
+ aCCodeGenerator var: #rememberedSet type: #'sqInt *'.
+ aCCodeGenerator var: #tenuringProportion type: #double!
- aCCodeGenerator var: #rememberedSet type: #'sqInt *'!
Item was changed:
----- Method: SpurGenerationScavenger>>scavengerTenuringThreshold: (in category 'accessing') -----
scavengerTenuringThreshold: aProportion "(Slang flattens so need unique selectors)"
+ <var: 'aProportion' type: #double>
- <var: 'aProportion' type: #float>
tenuringProportion := aProportion.
tenureThreshold := aProportion = 0.0
ifTrue: [0]
ifFalse: [((pastSpace limit - pastSpace start) * (1.0 - aProportion)) rounded + pastSpace start]!
More information about the Vm-dev
mailing list