[Pkg] The Trunk: System-eem.803.mcz
commits at source.squeak.org
commits at source.squeak.org
Thu Mar 3 03:19:23 UTC 2016
Eliot Miranda uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-eem.803.mcz
==================== Summary ====================
Name: System-eem.803
Author: eem
Time: 2 March 2016, 7:18:21.713694 pm
UUID: 934ce776-0717-469b-8818-300954393791
Ancestors: System-bf.802
Add getters that answer whether the VM supports immutability or multiple bytecode sets.
=============== Diff against System-bf.802 ===============
Item was added:
+ ----- Method: SmalltalkImage>>supportsImmutability (in category 'system attributes') -----
+ supportsImmutability
+ "Answer whether the VM observes the per-object immutability flag and consequently
+ aborts writes to inst vars of, and fails primitives that attempt to write, to immutable objects."
+ "SmalltalkImage current supportsImmutability"
+
+ ^(self vmParameterAt: 65)
+ ifNil: [false]
+ ifNotNil:
+ [:param| "In older VMs this is a boolean reflecting MULTIPLE_BYTECODE_SETS"
+ param isInteger "In newer VMs it is a set of integer flags, bit 1 of which is IMMUTABILITY"
+ ifTrue: [param anyMask: 2]
+ ifFalse: [false]]!
Item was added:
+ ----- Method: SmalltalkImage>>supportsMultipleBytecodeSets (in category 'system attributes') -----
+ supportsMultipleBytecodeSets
+ "Answer whether the VM supports multiple bytecodeSets."
+ "SmalltalkImage current supportsMultipleBytecodeSets"
+
+ ^(self vmParameterAt: 65)
+ ifNil: [false]
+ ifNotNil:
+ [:param| "In older VMs this is a boolean reflecting MULTIPLE_BYTECODE_SETS"
+ param isInteger "In newer VMs it is a set of integer flags, bit 0 of which is MULTIPLE_BYTECODE_SETS"
+ ifTrue: [param anyMask: 1]
+ ifFalse: [param]]!
More information about the Packages
mailing list