[Vm-dev] VM Maker: VMMaker.oscog-eem.680.mcz
commits at source.squeak.org
commits at source.squeak.org
Thu Apr 17 22:34:15 UTC 2014
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.680.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.680
Author: eem
Time: 17 April 2014, 3:31:20.05 pm
UUID: 4c5d6723-7644-4b44-92df-0af0ec9b453d
Ancestors: VMMaker.oscog-eem.679
Fix a couple of slips in the Simulator;s context access methods.
=============== Diff against VMMaker.oscog-eem.679 ===============
Item was changed:
----- Method: CogVMSimulator>>externalInstVar:ofContext: (in category 'debugging traps') -----
externalInstVar: offset ofContext: aContext
"offset = InstructionPointerIndex ifTrue:
[transcript nextPutAll: '==================='; cr.
self printContext: 16r1715630.
self printCallStackOf: aContext currentFP: framePointer.
transcript nextPutAll: '==================='; cr.
self halt]."
| result |
"self shortPrintFrameAndCallers: framePointer.
transcript print: byteCount; tab; print: thisContext; cr.
self print: offset; cr.
self printContext: aContext.
(self confirm: 'continue?') ifFalse: [self halt]."
+ result := super externalInstVar: offset ofContext: aContext.
+ "(offset = InstructionPointerIndex
- "result := super externalInstVar: offset ofContext: aContext.
- (offset = InstructionPointerIndex
and: [(self stringOf: (self penultimateLiteralOf: (self fetchPointer: MethodIndex ofObject: aContext))) = #indexOf:startingAt:ifAbsent:]) ifTrue:
[transcript space; nextPutAll: '^pc '; nextPutAll: result hex.
(objectMemory isIntegerObject: result) ifTrue:
[transcript space; print: (objectMemory integerValueOf: result)].
transcript tab.
self shortPrintContext: aContext]."
"offset = StackPointerIndex ifTrue:
[transcript nextPutAll: '^stackp ', (self integerValueOf: result) printString; tab.
self shortPrintContext: aContext.
(#(24205456 24205732) includes: aContext) ifTrue:
[(self checkIsStillMarriedContext: aContext currentFP: framePointer)
ifTrue: [self printFrame: (self frameOfMarriedContext: aContext) WithSP: (self frameOfMarriedContext: aContext) - 48]
ifFalse: [self printContext: aContext]]]."
^result!
Item was changed:
----- Method: CogVMSimulator>>instVar:ofContext: (in category 'debugging traps') -----
instVar: offset ofContext: aContext
"offset = InstructionPointerIndex ifTrue:
[Transcript nextPutAll: '==================='; cr.
self printContext: 16r1715630.
self printCallStackOf: aContext currentFP: framePointer.
Transcript nextPutAll: '==================='; cr.
self halt]."
| result |
"self shortPrintFrameAndCallers: localFP.
Transcript print: byteCount; tab; print: thisContext; cr.
self print: offset; cr.
self printContext: aContext.
(self confirm: 'continue?') ifFalse: [self halt]."
+ result := super instVar: offset ofContext: aContext.
+ "(offset = InstructionPointerIndex
- "result := super instVar: offset ofContext: aContext.
- (offset = InstructionPointerIndex
and: [(self stringOf: (self penultimateLiteralOf: (self fetchPointer: MethodIndex ofObject: aContext))) = #indexOf:startingAt:ifAbsent:]) ifTrue:
[transcript space; nextPutAll: '^pc '; nextPutAll: result hex.
(objectMemory isIntegerObject: result) ifTrue:
[transcript space; print: (objectMemory integerValueOf: result)].
transcript tab.
self shortPrintContext: aContext]."
"offset = StackPointerIndex ifTrue:
[Transcript nextPutAll: '^stackp ', (self integerValueOf: result) printString; tab.
self shortPrintContext: aContext.
(#(24205456 24205732) includes: aContext) ifTrue:
[(self checkIsStillMarriedContext: aContext currentFP: localFP)
ifTrue: [self printFrame: (self frameOfMarriedContext: aContext) WithSP: (self frameOfMarriedContext: aContext) - 48]
ifFalse: [self printContext: aContext]]]."
^result!
More information about the Vm-dev
mailing list