[Vm-dev] VM Maker: VMMakerUI-eem.8.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Dec 27 06:25:06 UTC 2019


Eliot Miranda uploaded a new version of VMMakerUI to project VM Maker:
http://source.squeak.org/VMMaker/VMMakerUI-eem.8.mcz

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

Name: VMMakerUI-eem.8
Author: eem
Time: 26 December 2019, 10:25:04.901186 pm
UUID: 37ef7cd4-9ffc-4f72-96da-8de18eee8832
Ancestors: VMMakerUI-eem.7

Add the method address to the current instruction display where available in the CogProcessorAlienInspector.

=============== Diff against VMMakerUI-eem.7 ===============

Item was changed:
  ----- Method: CogProcessorAlienInspector>>text (in category 'accessing - ui') -----
  text
- 
  	^Text streamContents:
  		[:s | | max exclude fpstate |
  		(cogit notNil
  		 and: [cogit addressIsInCodeZone: processor pc])
  			ifTrue:
+ 				[s	tab;
+ 					nextPutAll: (processor decorateDisassembly: (processor disassembleInstructionAt: processor pc In: memory)
- 				[s tab; nextPutAll: (processor decorateDisassembly: (processor disassembleInstructionAt: processor pc In: memory)
  								for: cogit
+ 								fromAddress: processor pc).
+ 				 (cogit lookupAddress: processor pc) ifNotNil:
+ 					[:where| s tab: 2; nextPutAll: where].
+ 				 s cr]
- 								fromAddress: processor pc); cr]
  			ifFalse: [s cr].
  		max := (registerSelectors ifEmpty: [1] ifNotEmpty: [:selector | (selector collect: #size) max]).
  		exclude := Set new.
  		1 to: (fpstate := processor floatingPointRegisterStateGetters) size by: 4 do:
  			[:index|
  			((index to: index + 3) allSatisfy: [:fpri| (processor perform: (fpstate at: fpri)) isZero]) ifTrue:
  				[exclude addAll: (fpstate copyFrom: index to: index + 3)]].
  		registerSelectors do:
  			[:selector | | attribute |
  			(exclude includes: selector) ifFalse:
  				[s
  					nextPutAll: ((selector asUppercase padded: #right to: max with: Character space)
  						asText addAttribute: (attribute := PluggableTextAttribute evalBlock: [self interpret: selector]));
  					space;
  					nextPutAll: (self registerTextAt: selector).
  				 (registerMap at: selector ifAbsent: []) ifNotNil:
  					[:abstractReg|
  					 s space; nextPutAll: (abstractReg asText addAttribute: attribute)].
  				 s cr]]]!



More information about the Vm-dev mailing list