[squeak-dev] The Inbox: VMMaker-bak.362.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Jun 24 14:30:33 UTC 2015


A new version of VMMaker was added to project The Inbox:
http://source.squeak.org/inbox/VMMaker-bak.362.mcz

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

Name: VMMaker-bak.362
Author: bak
Time: 24 June 2015, 4:29:56.727 pm
UUID: 5f1bc928-2e95-4784-af79-0d9c1f3fb762
Ancestors: VMMaker-MattSpr.361

generalized primitive simulation in RSqueak

=============== Diff against VMMaker-MattSpr.361 ===============

Item was removed:
- ----- Method: BalloonEngine>>simulateBalloonPrimitive:args: (in category '*VMMaker-InterpreterSimulation') -----
- simulateBalloonPrimitive: aString args: args
- 	^ Smalltalk at: #BalloonEngineSimulation ifPresent: [:be |
- 			be simulatePrimitive: aString receiver: self args: args]!

Item was added:
+ ----- Method: BalloonEngine>>simulatePrimitive:args: (in category '*VMMaker-InterpreterSimulation') -----
+ simulatePrimitive: aString args: args 
+ 	"simulate primitives in RSqueak"
+ 	| proxy bb |
+ 	Smalltalk
+ 		at: #BalloonEngineSimulation
+ 		ifPresent: [:be | 
+ 			proxy := InterpreterProxy new.
+ 			proxy synthesizeStackFor: self with: args.
+ 			bb := be simulatorClass new.
+ 			bb setInterpreter: proxy.
+ 			bb initialiseModule.
+ 			"rendering state is loaded in the primitive implementations"
+ 			bb perform: aString asSymbol.
+ 			^ proxy stackValue: 0].!

Item was added:
+ ----- Method: BitBlt>>simulatePrimitive:args: (in category '*VMMaker-Interpreter') -----
+ simulatePrimitive: aString args: args 
+ 	"simulate primitives in RSqueak"
+ 	aString = 'primitiveCopyBits'
+ 		ifTrue: [^ self copyBitsSimulated].
+ 	aString = 'primitiveWarpBits'
+ 		ifTrue: [^ self
+ 				warpBitsSimulated: (args at: 1)
+ 				sourceMap: (args at: 2)].
+ 	^ InterpreterProxy new primitiveFailFor: 255
+ !

Item was added:
+ ----- Method: SmalltalkImage>>simulatePrimitive:args: (in category '*VMMaker-Interpreter') -----
+ simulatePrimitive: aPrimitive args: args 
+ 	"simulate primitives in RSqueak"
+ 	"IMAGE_NAME"
+ 	aPrimitive = 121
+ 		ifTrue: [^ self getSystemAttribute: 1].
+ 	"SNAPSHOT"
+ 	aPrimitive = 97
+ 		ifTrue: [Smalltalk
+ 				at: #SystemTracer2
+ 				ifPresent: [:st | ^ st writeImage: Smalltalk imageName]].
+ 	"SNAPSHOT_EMBEDDED"
+ 	aPrimitive = 247
+ 		ifTrue: [Smalltalk
+ 				at: #SystemTracer2
+ 				ifPresent: [:st | ^ st writeImage: Smalltalk imageName]].
+ 	^ InterpreterProxy new primitiveFailFor: 255
+ !



More information about the Squeak-dev mailing list