[squeak-dev] The Trunk: Kernel-eem.861.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Aug 5 19:11:48 UTC 2014


Eliot Miranda uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-eem.861.mcz

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

Name: Kernel-eem.861
Author: eem
Time: 5 August 2014, 12:11:04.902 pm
UUID: 06be17f2-e2b8-436d-b85f-49ac68899bc6
Ancestors: Kernel-nice.860

Slightly more efficient ProtoObject>>become:.
Eliminate isKindOf:'s in InstructionPrinter>>pushConstant:.
Provide CompiledMethod>>protocol to answer its selector's
category^H^H^H^H^H^H^H^Hprotocol.

=============== Diff against Kernel-nice.860 ===============

Item was added:
+ ----- Method: CompiledMethod>>protocol (in category 'accessing') -----
+ protocol
+ 	^self methodClass ifNotNil:
+ 		[:class|
+ 		self selector ifNotNil:
+ 			[:selector|
+ 			class whichCategoryIncludesSelector: selector]]!

Item was changed:
  ----- Method: InstructionPrinter>>pushConstant: (in category 'instruction decoding') -----
  pushConstant: obj
  	"Print the Push Constant, obj, on Top Of Stack bytecode."
  
  	self print: (String streamContents:
  				[:s |
  				s nextPutAll: 'pushConstant: '.
+ 				obj isVariableBinding
+ 					ifTrue:
+ 						[obj key
+ 							ifNotNil: [s nextPutAll: '##'; nextPutAll: obj key]
+ 							ifNil: [s nextPutAll: '###'; nextPutAll: obj value soleInstance name]]
+ 					ifFalse:
+ 						[obj isClosure
+ 							ifTrue: [s nextPutAll: obj sourceString]
+ 							ifFalse: [obj printOn: s]]]).
- 				(obj isKindOf: LookupKey)
- 					ifFalse: [obj printOn: s]
- 					ifTrue: [obj key
- 						ifNotNil: [s nextPutAll: '##'; nextPutAll: obj key]
- 						ifNil: [s nextPutAll: '###'; nextPutAll: obj value soleInstance name]]]).
  
+ 	obj isCompiledMethod ifTrue:
- 	(obj isKindOf: CompiledMethod) ifTrue:
  		[obj longPrintOn: stream indent: self indent + 2.
+ 		^self]!
- 		^self].!

Item was changed:
  ----- Method: ProtoObject>>become: (in category 'system primitives') -----
  become: otherObject 
  	"Primitive. Swap the object pointers of the receiver and the argument.
  	All variables in the entire system that used to point to the 
  	receiver now point to the argument, and vice-versa.
  	Fails if either object is a SmallInteger"
  
+ 	{self} elementsExchangeIdentityWith: {otherObject}!
- 	(Array with: self)
- 		elementsExchangeIdentityWith:
- 			(Array with: otherObject)!



More information about the Squeak-dev mailing list