Eliot Miranda uploaded a new version of Cog to project VM Maker: http://source.squeak.org/VMMaker/Cog-eem.59.mcz
==================== Summary ====================
Name: Cog-eem.59 Author: eem Time: 30 January 2013, 10:17:08.461 am UUID: 177b66c7-07e1-44e1-add1-e83d909f3e8f Ancestors: Cog-lw.58
Add support for labelling Newspeak implicit receiver caches.
=============== Diff against Cog-lw.58 ===============
Item was changed: ----- Method: CogProcessorAlien>>disassembleFrom:to:in:for:labels:on: (in category 'disassembly') ----- disassembleFrom: startAddress to: endAddress in: memory for: aSymbolManager "<Cogit>" labels: labelDictionary on: aStream | address | address := startAddress. [address <= endAddress] whileTrue: + [[:sizeArg :stringArg| | size string | + size := sizeArg. + string := stringArg. - [[:size :string| (aSymbolManager labelForPC: address) ifNotNil: [:label| aStream nextPutAll: label; nextPut: $:; cr]. (labelDictionary at: address ifAbsent: []) ifNotNil: + [:label| + label isArray + ifTrue: [aStream + nextPutAll: label first; + nextPut: $:; cr; + nextPutAll: (address printStringBase: 16 length: 8 padded: true) asLowercase; + nextPut: $:; space; + nextPutAll: (aSymbolManager perform: label second with: address) asString. + string := nil. + size := label third] + ifFalse: [aStream nextPutAll: label; nextPut: $:; cr]]. + string ifNotNil: + [aStream nextPutAll: (self decorateDisassembly: string for: aSymbolManager fromAddress: address)]. + aStream cr; flush. - [:label| aStream nextPutAll: label; nextPut: $:; cr]. - aStream nextPutAll: (self decorateDisassembly: string for: aSymbolManager fromAddress: address); cr; flush. address := address + size] valueWithArguments: (self primitiveDisassembleAt: address inMemory: memory)]!
vm-dev@lists.squeakfoundation.org