[Vm-dev] VM Maker: Cog-eem.300.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Dec 2 07:15:27 UTC 2015
Eliot Miranda uploaded a new version of Cog to project VM Maker:
http://source.squeak.org/VMMaker/Cog-eem.300.mcz
==================== Summary ====================
Name: Cog-eem.300
Author: eem
Time: 1 December 2015, 11:15:12.912 pm
UUID: 4ea0fa76-d948-4b34-9a26-c1ba7cc5bba1
Ancestors: Cog-rmacnak.299
Add some safety in case of disassembler failure.
=============== Diff against Cog-rmacnak.299 ===============
Item was changed:
----- Method: CogProcessorAlien>>disassembleNextInstructionIn:for: (in category 'disassembly') -----
disassembleNextInstructionIn: memory for: aSymbolManager "<Cogit|nil>"
| string |
+ self pc >= memory size ifTrue:
+ [string := aSymbolManager ifNotNil:
- string := self pc < memory size
- ifTrue: [(self primitiveDisassembleAt: self pc inMemory: memory) last.]
- ifFalse: [string := aSymbolManager ifNotNil:
[aSymbolManager lookupAddress: self pc].
^self pc hex, ' : ', (string ifNil: ['Invalid address'])].
+ string := self primitiveDisassembleAt: self pc inMemory: memory.
+ string isString ifFalse:
+ [^'ERROR: ', (string printString contractTo: 40)].
^aSymbolManager
ifNil: [string]
ifNotNil: [self decorateDisassembly: string for: aSymbolManager fromAddress: self pc]!
More information about the Vm-dev
mailing list