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

commits at source.squeak.org commits at source.squeak.org
Fri Jan 29 23:00:24 UTC 2016


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

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

Name: VMMaker.oscog-eem.1674
Author: eem
Time: 29 January 2016, 2:58:45.443225 pm
UUID: 36dea99c-e7f7-4ff4-a430-99a8ad340d36
Ancestors: VMMaker.oscog-EstebanLorenzano.1673

IA32ABIPlugin: Use cppIf: to exclude 
the ioDrainEventQueue call in non-Newspeak VMs.  Including the <option: #NewspeakVM> eliminaes the primitive from the generated C, which is not what we want.

Provide a configuration that generates all plugins to src/plugins.

=============== Diff against VMMaker.oscog-EstebanLorenzano.1673 ===============

Item was changed:
  ----- Method: IA32ABIPlugin>>primDrainOSEventQueue (in category 'primitives-Windows-VM-specific') -----
  primDrainOSEventQueue
- 	<option: #NewspeakVM>
  	<export: true>
+ 	self cppIf: #NewspeakVM
+ 		ifTrue: [self ioDrainEventQueue]!
- 	self ioDrainEventQueue!

Item was changed:
  ----- Method: VMMaker class>>generateAllConfigurationsUnderVersionControl (in category 'configurations') -----
  generateAllConfigurationsUnderVersionControl
  	self generateAllNewspeakConfigurationsUnderVersionControl;
+ 		generateAllSqueakConfigurationsUnderVersionControl;
+ 		generateVMPlugins!
- 		generateAllSqueakConfigurationsUnderVersionControl!

Item was added:
+ ----- Method: VMMaker class>>generatePluginsTo:options:platformDir:including: (in category 'utilities') -----
+ generatePluginsTo: srcDirName options: optionsPairsArray platformDir: platDirName including: inclusions
+ 	"Generate the plugins to the given target directory. Include only plugins in pluginList."
+ 	(self
+ 		makerFor: StackInterpreter
+ 		and: nil
+ 		with: optionsPairsArray
+ 		to: srcDirName
+ 		platformDir: platDirName
+ 		including: inclusions) generatePlugins!

Item was changed:
  ----- Method: VMMaker class>>generateSqueakCogVMWithInterpreterClass:options: (in category 'confs-support') -----
  generateSqueakCogVMWithInterpreterClass: interpreterClass options: optionsArray
  	^VMMaker
  		generate: interpreterClass
  		and: StackToRegisterMappingCogit
  		with: optionsArray
  		to: (FileDirectory default pathFromURI: self sourceTree, '/src')
  		platformDir: (FileDirectory default pathFromURI: self sourceTree, '/platforms')
+ 		including:#()!
- 		including:#(	ADPCMCodecPlugin AsynchFilePlugin
- 					BalloonEnginePlugin B3DAcceleratorPlugin B3DEnginePlugin BMPReadWriterPlugin BitBltSimulation
- 					BochsIA32Plugin BochsX64Plugin
- 					CameraPlugin CroquetPlugin DSAPlugin DeflatePlugin DropPlugin
- 					"FT2Plugin" FFTPlugin FileCopyPlugin FilePlugin FloatArrayPlugin FloatMathPlugin
- 					GeniePlugin GdbARMPlugin HostWindowPlugin IA32ABIPlugin ImmX11Plugin InternetConfigPlugin
- 					JPEGReadWriter2Plugin JPEGReaderPlugin JoystickTabletPlugin KlattSynthesizerPlugin
- 					LargeIntegersPlugin LocalePlugin MIDIPlugin MacMenubarPlugin Matrix2x3Plugin
- 					MiscPrimitivePlugin Mpeg3Plugin QuicktimePlugin RePlugin
- 					ScratchPlugin SecurityPlugin SerialPlugin SocketPlugin
- 					SoundCodecPlugin SoundGenerationPlugin SoundPlugin SqueakSSLPlugin StarSqueakPlugin
- 					ThreadedFFIPlugin ThreadedARMFFIPlugin ThreadedIA32FFIPlugin
- 					UnicodePlugin UnixAioPlugin UUIDPlugin UnixOSProcessPlugin
- 					Win32OSProcessPlugin VMProfileLinuxSupportPlugin VMProfileMacSupportPlugin WeDoPlugin
- 					XDisplayControlPlugin)!

Item was added:
+ ----- Method: VMMaker class>>generateVMPlugins (in category 'configurations') -----
+ generateVMPlugins
+ 	^VMMaker
+ 		generatePluginsTo: (FileDirectory default pathFromURI: self sourceTree, '/src')
+ 		options: #()
+ 		platformDir: (FileDirectory default pathFromURI: self sourceTree, '/platforms')
+ 		including:#(	ADPCMCodecPlugin AsynchFilePlugin
+ 					BalloonEnginePlugin B3DAcceleratorPlugin B3DEnginePlugin BMPReadWriterPlugin BitBltSimulation
+ 					BochsIA32Plugin BochsX64Plugin
+ 					CameraPlugin CroquetPlugin DSAPlugin DeflatePlugin DropPlugin
+ 					"FT2Plugin" FFTPlugin FileCopyPlugin FilePlugin FloatArrayPlugin FloatMathPlugin
+ 					GeniePlugin GdbARMPlugin HostWindowPlugin IA32ABIPlugin ImmX11Plugin InternetConfigPlugin
+ 					JPEGReadWriter2Plugin JPEGReaderPlugin JoystickTabletPlugin KlattSynthesizerPlugin
+ 					LargeIntegersPlugin LocalePlugin MIDIPlugin MacMenubarPlugin Matrix2x3Plugin
+ 					MiscPrimitivePlugin Mpeg3Plugin QuicktimePlugin RePlugin
+ 					ScratchPlugin SecurityPlugin SerialPlugin SocketPlugin
+ 					SoundCodecPlugin SoundGenerationPlugin SoundPlugin SqueakSSLPlugin StarSqueakPlugin
+ 					ThreadedFFIPlugin ThreadedARMFFIPlugin ThreadedIA32FFIPlugin
+ 					UnicodePlugin UnixAioPlugin UUIDPlugin UnixOSProcessPlugin
+ 					Win32OSProcessPlugin VMProfileLinuxSupportPlugin VMProfileMacSupportPlugin WeDoPlugin
+ 					XDisplayControlPlugin)!

Item was added:
+ ----- Method: VMMaker>>generatePlugins (in category 'generate sources') -----
+ generatePlugins
+ 	"Generate the ``external'' plugins.
+ 	 If this comes from a generator, log it for convenience."
+ 	abortBlock := [^self].
+ 	self configurationGeneratorNameOrNil ifNotNil:
+ 		[:generator|
+ 		 logger cr; nextPutAll: (generator selector copyReplaceAll: 'generate' with: '').
+ 		 interpreterClassName ifNotNil:
+ 			[logger space; nextPutAll: (CCodeGenerator shortMonticelloDescriptionForClass: (Smalltalk classNamed: interpreterClassName))].
+ 		 logger cr; flush].
+ 	self generateExternalPlugins!



More information about the Vm-dev mailing list