[Vm-dev] VM Maker: VMMaker.oscog-eem.767.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Jun 10 22:45:26 UTC 2014


Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.767.mcz

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

Name: VMMaker.oscog-eem.767
Author: eem
Time: 10 June 2014, 3:42:37.171 pm
UUID: b11544fd-09a4-4469-8ce4-3f2339f08d05
Ancestors: VMMaker.oscog-eem.766

Spur: fix some compilation warnings in the cointerp.

=============== Diff against VMMaker.oscog-eem.766 ===============

Item was changed:
  ----- Method: SpurSegmentManager>>findEmptySegNearestInSizeTo: (in category 'growing/shrinking memory') -----
  findEmptySegNearestInSizeTo: size
  	| seg best delta |
  	<var: #seg type: #'SpurSegmentInfo *'>
+ 	<var: #best type: #'SpurSegmentInfo *'>
  	best := nil.
  	delta := size.
  	0 to: numSegments - 1 do:
  		[:i|
  		seg := self addressOf: (segments at: i).
  		(self isEmptySegment: seg) ifTrue:
  			[best
  				ifNil: [best := seg]
  				ifNotNil:
  					[(size >= (seg segSize * 0.75)
  					 and: [(seg segSize - size) abs < delta]) ifTrue:
  						[best := seg. delta := (seg segSize - size) abs]]]].
  	^best!

Item was changed:
  ----- Method: SpurSegmentManager>>removeSegment: (in category 'growing/shrinking memory') -----
  removeSegment: emptySeg
  	<var: #emptySeg type: #'SpurSegmentInfo *'>
  	| i |
  	i := self indexOfSegment: emptySeg.
  	self assert: i > 0.
  
+ 	manager sqDeallocateMemorySegmentAt: emptySeg segStart asVoidPointer OfSize: emptySeg segSize.
- 	manager sqDeallocateMemorySegmentAt: emptySeg segStart OfSize: emptySeg segSize.
  
  	i to: numSegments - 1 do:
  		[:j| segments at: j put: (segments at: j + 1)].
  	self cCode: [] inSmalltalk: [segments at: numSegments - 1 put: SpurSegmentInfo new].
  	numSegments := numSegments - 1.
  
  	self bridgeFrom: (self addressOf: (segments at: i - 1))
  		to: (i <= (numSegments - 1) ifTrue: [self addressOf: (segments at: i)]).
  
  	manager setLastSegment: (self addressOf: (segments at: numSegments - 1))!



More information about the Vm-dev mailing list