[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