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

commits at source.squeak.org commits at source.squeak.org
Tue Jan 3 22:50:23 UTC 2023


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

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

Name: Kernel-eem.1495
Author: eem
Time: 3 January 2023, 2:50:20.023806 pm
UUID: 0f67a835-2719-4d8b-87a7-3a387f44349a
Ancestors: Kernel-pre.1494

Print the inst var name after the index in symbolic (bytecode) method printing/exploring.  If folks don't like this being the default the code is set up to be easy to turn into a preference.  Just let me know.

=============== Diff against Kernel-pre.1494 ===============

Item was changed:
  ----- Method: InstructionPrinter>>popIntoReceiverVariable: (in category 'instruction decoding') -----
  popIntoReceiverVariable: offset 
+ 	"Print the Remove Top Of Stack And Store Into Instance Variable bytecode."
- 	"Print the Remove Top Of Stack And Store Into Instance Variable 
- 	bytecode."
  
+ 	self print: 'popIntoRcvr: ' , (self stringForReceiverVariableOffset: offset)!
- 	self print: 'popIntoRcvr: ' , offset printString!

Item was changed:
  ----- Method: InstructionPrinter>>pushReceiverVariable: (in category 'instruction decoding') -----
  pushReceiverVariable: offset
  	"Print the Push Contents Of the Receiver's Instance Variable Whose Index 
  	is the argument, offset, On Top Of Stack bytecode."
  
+ 	self print: 'pushRcvr: ' , (self stringForReceiverVariableOffset: offset)!
- 	self print: 'pushRcvr: ' , offset printString!

Item was changed:
  ----- Method: InstructionPrinter>>storeIntoReceiverVariable: (in category 'instruction decoding') -----
  storeIntoReceiverVariable: offset 
  	"Print the Store Top Of Stack Into Instance Variable Of Method bytecode."
  
+ 	self print: 'storeIntoRcvr: ' , (self stringForReceiverVariableOffset: offset)!
- 	self print: 'storeIntoRcvr: ' , offset printString!

Item was added:
+ ----- Method: InstructionPrinter>>stringForReceiverVariableOffset: (in category 'printing') -----
+ stringForReceiverVariableOffset: offset
+ 	| tmpStream |
+ 	tmpStream := WriteStream on: (String new: 16).
+ 	offset printOn: tmpStream.
+ 	method methodClass ifNotNil:
+ 		[:class|
+ 		class isBehavior ifTrue:
+ 			[(class instVarNameForIndex: offset + 1) ifNotNil:
+ 				[:instVarName|
+ 				tmpStream nextPutAll: ' "'; nextPutAll: instVarName; nextPut: $"]]].
+ 	^tmpStream contents!



More information about the Squeak-dev mailing list