[Vm-dev] VM Maker: VMMaker-dtl.429.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Jul 29 03:25:37 UTC 2021


David T. Lewis uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker-dtl.429.mcz

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

Name: VMMaker-dtl.429
Author: dtl
Time: 28 July 2021, 11:24:43.854 pm
UUID: 054f5e70-1394-4dcf-bd8c-bbd2f9812442
Ancestors: VMMaker-dtl.428

VMMaker 4.19.12
Float32Array is the new name for the original Squeak class FloatArray. If a SmartSyntaxInterpreterPlugin (e.g. VectorEnginePlugin) refers to #Float32Array in a parameter declaration but class Float32Array is not present in the image, then the intended class is FloatArray so substitute the FloatArray in code generation.

=============== Diff against VMMaker-dtl.428 ===============

Item was added:
+ ----- Method: SmartSyntaxPluginTMethod>>classForSymbol:ifAbsent: (in category 'accessing') -----
+ classForSymbol: key ifAbsent: aBlock
+ 	"Float32Array is the new name for the original class FloatArray. If this image
+ 	does not have Float32Array, then FloatArray is the appropriate equivalent."
+ 
+ 	^Smalltalk at: key ifAbsent: [
+ 		key = #Float32Array
+ 			ifTrue: [Smalltalk at: #FloatArray ifAbsent: aBlock]
+ 			ifFalse: [aBlock value]
+ 		]!

Item was changed:
  ----- Method: SmartSyntaxPluginTMethod>>primitive:parameters:receiver: (in category 'specifying primitives') -----
  primitive: aString parameters: anArray receiver: aClassSymbol
  
  	self selectorOverride: aString asSymbol.
  	anArray size == args size ifFalse: 
  		[^self error: self selectorOverride, ': incorrect number of parameter specifications'].
  	parmSpecs := anArray collect:
+ 		[:each | self classForSymbol: each ifAbsent:
- 		[:each | Smalltalk at: each ifAbsent:
  			[^self error: self selectorOverride, ': parameter spec must be a Behavior']].
  	parmSpecs do: [:each | each isBehavior ifFalse:
  		[^self error: self selectorOverride, ': parameter spec must be a Behavior']].
  	rcvrSpec := Smalltalk at: aClassSymbol asSymbol ifAbsent:
  		[^self error: self selectorOverride, ': receiver spec must be a Behavior'].
  	rcvrSpec isBehavior ifFalse:
  		[^self error: self selectorOverride, ': receiver spec must be a Behavior'].
  	^true!

Item was changed:
  ----- Method: VMMaker class>>versionString (in category 'version testing') -----
  versionString
  
  	"VMMaker versionString"
  
+ 	^'4.19.12'!
- 	^'4.19.11'!



More information about the Vm-dev mailing list