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

commits at source.squeak.org commits at source.squeak.org
Fri Sep 5 17:08:08 UTC 2014


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

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

Name: VMMaker.oscog-eem.870
Author: eem
Time: 5 September 2014, 10:05:12.358 am
UUID: aa732da6-bba7-4906-b822-6dfd7f4e1bc7
Ancestors: VMMaker.oscog-eem.869

Fix bad regression in FilePlugin>>primitiveFileSetPosition
that breaks > 1Gb file access.

Trim printing of large literals in CogMethod disassembly.

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

Item was changed:
  ----- Method: CurrentImageCoInterpreterFacade>>lookupAddress: (in category 'labels') -----
  lookupAddress: address
  	| thing |
  	thing := objectMap
  				keyAtValue: address
  				ifAbsent:
  					[variables
  						keyAtValue: address
  						ifAbsent: [^nil]].
+ 	^(thing isLiteral
- 	^thing isLiteral
  		ifTrue: [thing storeString]
+ 		ifFalse: [thing asString]) contractTo: 64!
- 		ifFalse: [thing asString]!

Item was changed:
  ----- Method: FilePlugin>>primitiveFileSetPosition (in category 'file primitives') -----
  primitiveFileSetPosition
  	| newPosition file |
  	<var: 'file' type: 'SQFile *'>
  	<var: 'newPosition' type: 'squeakFileOffsetType'>
  	<export: true>
+ 	(interpreterProxy byteSizeOf: (interpreterProxy stackValue: 0)) > (self sizeof: #squeakFileOffsetType) ifTrue:
+ 		[^interpreterProxy primitiveFail].
- 	(interpreterProxy isIntegerObject: (interpreterProxy stackValue: 0)) ifFalse:
- 		[(interpreterProxy byteSizeOf: (interpreterProxy stackValue: 0)) ~= (self sizeof: #squeakFileOffsetType) ifTrue:
- 			[^interpreterProxy primitiveFail]].
  	newPosition := interpreterProxy positive64BitValueOf: (interpreterProxy stackValue: 0).
  	file := self fileValueOf: (interpreterProxy stackValue: 1).
  	interpreterProxy failed ifFalse:
  		[self sqFile: file SetPosition: newPosition ].
  	interpreterProxy failed ifFalse:
  		[interpreterProxy pop: 2] "pop position, file; leave rcvr on stack"!



More information about the Vm-dev mailing list