[Vm-dev] VM Maker: VMMaker.oscog-eem.932.mcz
commits at source.squeak.org
commits at source.squeak.org
Fri Nov 14 19:45:27 UTC 2014
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.932.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.932
Author: eem
Time: 14 November 2014, 11:42:09.769 am
UUID: 64910734-a74a-4e9b-8357-68ee708d8318
Ancestors: VMMaker.oscog-eem.931
Deal with collateral damage from the friendly fire of
VMMaker.oscog-eem.931.
=============== Diff against VMMaker.oscog-eem.931 ===============
Item was changed:
----- Method: VMClass class>>writeVMHeaderTo:bytesPerWord: (in category 'translation') -----
writeVMHeaderTo: aStream bytesPerWord: bytesPerWord
"Generate the contents of interp.h on aStream. Specific Interpreter subclasses
override to add more stuff."
aStream
nextPutAll: '#define VM_PROXY_MAJOR '; print: self vmProxyMajorVersion; cr;
nextPutAll: '#define VM_PROXY_MINOR '; print: self vmProxyMinorVersion; cr;
cr;
nextPutAll: '#define SQ_VI_BYTES_PER_WORD '; print: bytesPerWord; cr;
cr.
"The most basic constants must be defined here, not in e.g. the plugin sources, so allow those
other sources to be shared between different builds (Spur vs SqueakV3, 32-bit vs 64-bit, etc)"
+ VMBasicConstants mostBasicConstantNames asSet asArray sort do:
+ [:constName|
+ (VMBasicConstants classPool at: constName ifAbsent: []) ifNotNil:
+ [:const|
+ aStream nextPutAll: '#define '; nextPutAll: constName; space; print: const; cr]].
- VMBasicConstants mostBasicConstantNames do:
- [:const|
- aStream nextPutAll: '#define '; nextPutAll: const; space; print: (VMBasicConstants classPool at: const); cr].
aStream cr.
((VMBasicConstants classPool associations select: [:a| a key beginsWith: 'PrimErr'])
asSortedCollection: [:a1 :a2| a1 value <= a2 value])
do: [:a|
aStream nextPutAll: '#define '; nextPutAll: a key; space; print: a value; cr].
aStream cr!
More information about the Vm-dev
mailing list