[Vm-dev] VM Maker: VMMaker-oscog-GuillermoPolito.242.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Jun 19 13:00:47 UTC 2013
Guillermo Polito uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker-oscog-GuillermoPolito.242.mcz
==================== Summary ====================
Name: VMMaker-oscog-GuillermoPolito.242
Author: GuillermoPolito
Time: 19 June 2013, 2:54:45.742 pm
UUID: 85dc4488-f9fd-45ac-834f-a0792438e3e5
Ancestors: VMMaker-oscog-GuillermoPolito.241
fixing extension handling
=============== Diff against VMMaker-oscog-GuillermoPolito.241 ===============
Item was changed:
----- Method: ADPCMCodecPlugin class>>translateInDirectory:doInlining: (in category 'translation') -----
translateInDirectory: directory doInlining: inlineFlag
"handle a special case code string rather than generated code"
"Not currently hooked into the timeStamp mechanism for VMMaker since this would mean replicating code from InterpreterPlugin; waiting for a more elegant solution to appear. In the meantime this means that this plugin will always get regenerated even if the file is uptodate"
| cg |
self initialize.
cg := self buildCodeGeneratorUpTo: InterpreterPlugin.
cg addMethodsForPrimitives: ADPCMCodec translatedPrimitives.
inlineFlag ifTrue:[
"now remove a few which will be inlined but not pruned"
cg pruneMethods: #(indexForDeltaFrom:to: nextBits: nextBits:put:)].
+ self storeString: cg generateCodeStringForPrimitives onFileNamed: (directory asFileReference / (self moduleName, '.c')) fullName.
- self storeString: cg generateCodeStringForPrimitives onFileNamed: (directory asFileReference / self moduleName, '.c') fullName.
^cg exportedPrimitiveNames asArray
!
Item was changed:
----- Method: SoundGenerationPlugin class>>translateInDirectory:doInlining: (in category 'accessing') -----
translateInDirectory: directory doInlining: inlineFlag
"handle a special case code string rather than generated code.
NB sqOldSoundsPrims IS NOT FULLY INTEGRATED - it still isn't included in the exports list"
| cg |
self initialize.
cg := self buildCodeGeneratorUpTo: InterpreterPlugin.
cg addMethodsForPrimitives: AbstractSound translatedPrimitives.
+ self storeString: cg generateCodeStringForPrimitives onFileNamed: (directory asFileReference / (self moduleName, '.c')) fullName.
- self storeString: cg generateCodeStringForPrimitives onFileNamed: (directory asFileReference / self moduleName, '.c') fullName.
"What we need here is some way to derive the prim names from sqOldSoundPrims - or dump it entirely. Perhaps add this class (without then generating the file again) using fake entry points like SurfacePlugin does"
^cg exportedPrimitiveNames asArray
!
More information about the Vm-dev
mailing list