[Vm-dev] Fwd: Help for a crazy idea I have

Hernan Wilkinson hernan.wilkinson at 10pines.com
Thu Oct 4 14:32:54 UTC 2018


Hi everybody,
 I'm forwarding an email I sent to Eliot as he suggested. It is about
changes I'm doing to the VM to get type information dynamically.

 Thanks Eliot!
 Hernan.

---------- Forwarded message ---------
From: Hernan Wilkinson <hernan.wilkinson at 10pines.com>
Date: Thu, Oct 4, 2018 at 7:09 AM
Subject: Re: Help for a crazy idea I have
To: Eliot Miranda <eliot.miranda at gmail.com>


Hi Eliot!
 thank you for your answer.
 I look at Slots as you suggested. They could work but, at least as far I
could see and play with them, they would not work for all the cases I have
in mind, for example I could not use slots to keep the type of temporary
variables, parameters or methods return, etc. If I'm mistaken please let me
know.

 So, I continued with my idea and changed ClassDescription adding a new
inst. var. called "instanceVariablesTypes", that points to an array of
arrays. Each position of the first one points to the types of the inst.
var. whose index correspond the position. Very simple and it works fine.
Performance impact is very low. At the end of the email is the code I wrote
at the VM in case you want to see it.
 Now I'm working on the temporary variables types using
AdditionalMethodState.

 But the main reason I'm writing to you again is because I found a rare
behavior and an error when running the simulator with the Cuis image. I'm
using the StackInterpreter. The problems are are:
1) The simulator running a Cuis image does more scavengings than running
the simulator with a Squeak image, even thought the Cuis image size is 9 mb
and the Squeak one is 50 mb. (I know the image size has nothing to do with
the young space size). So, is there a way to configure the young space size
or a way to see why it triggers so many scavengings?
2) When I added the inst. var "instanceVariableTypes" to ClassDescription,
some pointer ends up invalid. Doing the same with Squeak works fine.
When adding that inst var in an Cuis image using the simulator, an
assertion stops the simulator execution. There is another detail, this does
not happen with 32 bit Cuis images/vm, only with 64 bit Cuis images. Do you
know what could be happening? (I'm attaching the simulator's stack report
just is case you have time to look at it, but it is very simple to
reproduce).
3) What is the difference between "<primitive: 105 error: ec>" and just
"<primitive: 105>" ?
I had to replace in Cuis all the first one with the second one because the
simulator did not work with methods using the first one (example:
Array>>replaceFrom: start to: stop with: replacement startingAt: repStart)

 Anyway, it is very interesting what I'm achieving with just only keeping
the types for inst. vars. I could significantly improve auto complete in
the class browser for example, do some type checking, etc.
 I'll keep you posted with the changes I'm making.
 If you could help me with the 3 problems I mentioned above it would be
great :-)

 Cheers!
 Hernan
-----------------
Here is the code I changed in the VM:

storeAndPopReceiverVariableBytecode
| rcvr top instVarIndex |
rcvr := self receiver.
top := self internalStackTop.
instVarIndex := currentBytecode bitAnd: 7.
self internalPop: 1.
objectMemory
storePointerImmutabilityCheck: instVarIndex
ofObject: rcvr
withValue: top.
self fetchNextBytecode.
self keepInstanceVariableTypeInformationFor: top in: rcvr at: instVarIndex.
"<--- added this"

extendedStoreBytecodePop: popBoolean
| descriptor variableType variableIndex value rcvr |
<inline: true>
descriptor := self fetchByte.
variableType := descriptor >> 6 bitAnd: 3.
variableIndex := descriptor bitAnd: 63.
value := self internalStackTop.
popBoolean ifTrue: [ self internalPop: 1 ].
variableType = 0 ifTrue:
[rcvr := self receiver.
objectMemory storePointerImmutabilityCheck: variableIndex ofObject: rcvr
withValue: value.
self keepInstanceVariableTypeInformationFor: value in: rcvr at:
variableIndex.  "<--- added this"
^ self fetchNextBytecode].
variableType = 1 ifTrue:
[ self fetchNextBytecode.
^self temporary: variableIndex in: localFP put: value].
variableType = 3 ifTrue:
[self storeLiteralVariable: variableIndex withValue: value.
^ self fetchNextBytecode].
self error: 'illegal store'

keepInstanceVariableTypeInformationFor: anAssignedObject in: rcvr at:
instVarIndex

| assignedObjectClass assignedObjectClassTag instVarTypes rcvrClass
rcvrClassTag types |
"(objectMemory isForwarded: rcvr) ifTrue: [ self halt ]."
rcvrClassTag := objectMemory fetchClassTagOf: rcvr.
self deny: (objectMemory isForwardedClassTag: rcvrClassTag).
rcvrClass := objectMemory classForClassTag: rcvrClassTag.
self deny: rcvrClass isNil.
"(objectMemory isForwarded: top) ifTrue: [ self halt ]."
assignedObjectClassTag := objectMemory fetchClassTagOf: anAssignedObject.
self deny: (objectMemory isForwardedClassTag: assignedObjectClassTag).
assignedObjectClass := objectMemory classForClassTag:
assignedObjectClassTag.
self deny: assignedObjectClass isNil.
instVarTypes := objectMemory followObjField: 5 ofObject: rcvrClass.  "TODO:
use constant instead of 5"
instVarTypes = objectMemory nilObject ifTrue: [ ^self ].
types := objectMemory followObjField: instVarIndex ofObject: instVarTypes.
0 to: 9 do: [ :index | | typeAtIndex |   "TODO: use array size and not 9.
Check for types == nil"
typeAtIndex := objectMemory followObjField: index ofObject: types.
typeAtIndex == assignedObjectClass ifTrue: [ ^self ].
typeAtIndex == objectMemory nilObject ifTrue: [ ^objectMemory storePointer:
index ofObject: types withValue: assignedObjectClass ]].
"self halt: 'out of space for types"





On Wed, Sep 19, 2018 at 1:48 PM Eliot Miranda <eliot.miranda at gmail.com>
wrote:

> Hi Hernan,
>
> On Sun, Sep 16, 2018 at 1:43 PM Hernan Wilkinson <
> hernan.wilkinson at 10pines.com> wrote:
>
>> Hi Eliot,
>>  I have had this idea for a long time, some guys at the university
>> implemented in pharo using metalinks (Marcus's compiler capability) but it
>> was a toy implementation... a few days ago I cloned the cog repo to show
>> people at work how easy is to run the Smalltalk vm as a simulation and see
>> how everything is implemented, change it, etc. so I started to implement
>> this idea but of course, I need help :-)
>>  The idea is simple: Every time an object is assigned to a variable, I
>> want to keep its class to have "real type inference".
>>  The idea is based on the fact that Smalltalk is always running, so
>> "class" information will be generated with real-running code. Of course, we
>> will have to derive type info from that class info, but that is a problem
>> to be solved in the image space.
>>  So, I did some experiments and modified the bytecodes that store inst.
>> vars. (#storeAndPopReceiverVariableBytecode and #extendedStoreBytecodePop:)
>> to keep that info, but they doit in a dictionary that belongs to the
>> simulator space.
>>  What I want to do is to store that info in a way that should be
>> accesible from the image.
>>  I added an inst. var. to ClassDescription called
>> 'instanceVariablesTypes' that it is initialized with an array of the number
>> of inst. vars. of the class and at each index there is a Set (it could be a
>> Dictionary or an Array...) where I want to store the assigned object class
>> to the inst. var
>>  The problem I have is that I do not know how to manage those objects
>> from the image space. I need to be able to add objects to the Set that
>> keeps the classes of an inst. var, make the array of instanceVariablesTypes
>> change accordingly to changes in the class, etc.
>>  So basically my question are:
>> 1) is there a way to manage a Set or a Dictionary from the vm but that
>> was created at "the image". The method lookup has the code to lookup in a
>> dict., but I have not seen code to create, add, remove elements
>> 2) if there is not, I could do everything with arrays, but to do so I
>> need to know how an array can be instantiated from the vm
>> 3) Any other suggestion?
>>
>
> Yes, I would look at Slots.  With Slots you should b e sable to manage
> everything at the image and work on a subset of all the classes.  Kernel
> classes should be avoided since one will get into an infinite recursion
> (and indeed using the Vm would be a solution here).  The problem with using
> the VM is that one has to use very low-level data structures and tackle the
> JIT to get performance,  It is not easy, whereas Slots should get you the
> information you need very very cheaply.
>
>
>>
>> I know this idea would slow down the execution of the vm, but my idea is
>> based on the fact that while programming (development time) the speed is
>> not so critical, so we could have an option to not do this on runtime time
>> (or different vms...)
>> I also know that keeping the type info for inst. vars. is not enough, the
>> same has to be done with methods (parameters, temporaries and return type),
>> class variables, and keeping types for collections should be based per
>> instance and not per class (like generics do in other languages: Array<T>),
>> etc. Also, I do not know how this idea could conflict with jiting (I played
>> with the stack vm only), etc.
>> There are a lot of things to do, but I think having this information
>> available from the image would help a lot on tools like refactoring, syntax
>> highlighting, type checking, etc etc.
>>
>
> Again, using Slots instead of the VM would make it much easier to access
> the information at the image level.
>
>
>>
>>  Well, the email is too long already :-)
>>  I hope you can send me some ideas to implement this.
>>
>
> Take a look at Slots.  If that doesn't work then indeed I can help you do
> it in the VM.  But I warn you; it'll be hairy (but fun!! :-) ).
>
>
>>
>>  Thanks!
>>  Hernan
>>
>> --
>>
>> *Hernán WilkinsonAgile Software Development, Teaching & Coaching*
>> *Phone: +54-011*-4893-2057
>> *Twitter: @HernanWilkinson*
>> *site: http://www.10Pines.com <http://www.10pines.com/>*
>> Address: Alem 896, Floor 6, Buenos Aires, Argentina
>>
>
>
> --
> _,,,^..^,,,_
> best, Eliot
>


-- 

*Hernán WilkinsonAgile Software Development, Teaching & Coaching*
*Phone: +54-011*-4893-2057
*Twitter: @HernanWilkinson*
*site: http://www.10Pines.com <http://www.10pines.com/>*
Address: Alem 896, Floor 6, Buenos Aires, Argentina


-- 

*Hernán WilkinsonAgile Software Development, Teaching & Coaching*
*Phone: +54-011*-4893-2057
*Twitter: @HernanWilkinson*
*site: http://www.10Pines.com <http://www.10pines.com/>*
Address: Alem 896, Floor 6, Buenos Aires, Argentina
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20181004/d2be0cc8/attachment-0001.html>
-------------- next part --------------
4 October 2018 6:19:17.143586 am

VM: Mac OS - Smalltalk
Image: Squeak5.2beta [latest update: #18193]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir /Users/hernan/Documents/VM/opensmalltalk-vm/image
Trusted Dir /foobar/tooBar/forSqueak/bogus/
Untrusted Dir /Users/hernan/Library/Preferences/Squeak/Internet/My Squeak/

Spur64BitMMLESimulatorFor64Bits(Object)>>assert:
	Receiver: a Spur64BitMMLESimulatorFor64Bits
	Arguments and temporary variables:
		aBlock: 	false
	Receiver's instance variables:
		coInterpreter: 	a StackInterpreterSimulatorLSB
		scavenger: 	a SpurGenerationScavengerSimulator
		segmentManager: 	a SpurSegmentManager
		compactor: 	a SpurPlanningCompactorSimulator
		memory: 	a DoubleWordArray(362872711690584072 1048576 6313 4225 257 7554304 1441...etc...
		freeStart: 	4239704
		freeOldSpaceStart: 	50855920
		scavengeThreshold: 	7254764
		newSpaceStart: 	0
		newSpaceLimit: 	7554304
		edenBytes: 	7340032
		oldSpaceStart: 	7554304
		nilObj: 	7554304
		falseObj: 	7554320
		trueObj: 	7554336
		specialObjectsOop: 	7604136
		hiddenRootsObj: 	7554880
		classTableFirstPage: 	7587728
		classTableIndex: 	2574
		numClassTablePages: 	3
		endOfMemory: 	50855920
		mournQueue: 	7554304
		unscannedEphemerons: 	a SpurContiguousObjStack
		objStackInvalidBecause: 	nil
		invalidObjStackPage: 	nil
		markStack: 	10148952
		weaklingStack: 	10181704
		freeLists: 	a CArray
		freeListsMask: 	1
		lastHash: 	3082377043
		signalLowSpace: 	false
		checkForLeaks: 	0
		needGCFlag: 	false
		heapMap: 	a CogCheck32BitHeapMap
		becomeEffectsFlags: 	0
		pastSpaceStart: 	1832936
		heapGrowthToSizeGCRatio: 	0.333333
		heapSizeAtPreviousGC: 	8743360
		oldSpaceUsePriorToScavenge: 	10423112
		growHeadroom: 	16777216
		shrinkThreshold: 	33554432
		marking: 	false
		remapBuffer: 	#(2402224 nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...etc...
		remapBufferCount: 	0
		extraRootCount: 	0
		extraRoots: 	nil
		lowSpaceThreshold: 	0
		totalFreeOldSpace: 	31829912
		maxOldSpaceSize: 	0
		gcPhaseInProgress: 	0
		gcStartUsecs: 	3716062480613747
		gcMarkEndUsecs: 	nil
		gcSweepEndUsecs: 	0
		compactionStartUsecs: 	nil
		bogon: 	nil
		statCoalesces: 	0
		statCompactPassCount: 	0
		statFGCDeltaUsecs: 	0
		statFullGCUsecs: 	0
		statCompactionUsecs: 	0
		statSweepUsecs: 	0
		statMarkUsecs: 	0
		statFullGCs: 	0
		statGCEndUsecs: 	3716062480613747
		statGrowMemory: 	1
		statIGCDeltaUsecs: 	0
		statIncrGCUsecs: 	0
		statIncrGCs: 	0
		statMarkCount: 	0
		statRootTableCount: 	1495
		statRootTableOverflows: 	0
		statSGCDeltaUsecs: 	0
		statScavengeGCUsecs: 	0
		statScavenges: 	67
		statShrinkMemory: 	0
		statAllocatedBytes: 	347240464
		parent: 	nil
		bootstrapping: 	false

Spur64BitMMLESimulatorFor64Bits(Spur64BitMMLESimulator)>>fetchPointer:ofObject:
	Receiver: a Spur64BitMMLESimulatorFor64Bits
	Arguments and temporary variables:
		fieldIndex: 	9
		objOop: 	1143280
	Receiver's instance variables:
		coInterpreter: 	a StackInterpreterSimulatorLSB
		scavenger: 	a SpurGenerationScavengerSimulator
		segmentManager: 	a SpurSegmentManager
		compactor: 	a SpurPlanningCompactorSimulator
		memory: 	a DoubleWordArray(362872711690584072 1048576 6313 4225 257 7554304 1441...etc...
		freeStart: 	4239704
		freeOldSpaceStart: 	50855920
		scavengeThreshold: 	7254764
		newSpaceStart: 	0
		newSpaceLimit: 	7554304
		edenBytes: 	7340032
		oldSpaceStart: 	7554304
		nilObj: 	7554304
		falseObj: 	7554320
		trueObj: 	7554336
		specialObjectsOop: 	7604136
		hiddenRootsObj: 	7554880
		classTableFirstPage: 	7587728
		classTableIndex: 	2574
		numClassTablePages: 	3
		endOfMemory: 	50855920
		mournQueue: 	7554304
		unscannedEphemerons: 	a SpurContiguousObjStack
		objStackInvalidBecause: 	nil
		invalidObjStackPage: 	nil
		markStack: 	10148952
		weaklingStack: 	10181704
		freeLists: 	a CArray
		freeListsMask: 	1
		lastHash: 	3082377043
		signalLowSpace: 	false
		checkForLeaks: 	0
		needGCFlag: 	false
		heapMap: 	a CogCheck32BitHeapMap
		becomeEffectsFlags: 	0
		pastSpaceStart: 	1832936
		heapGrowthToSizeGCRatio: 	0.333333
		heapSizeAtPreviousGC: 	8743360
		oldSpaceUsePriorToScavenge: 	10423112
		growHeadroom: 	16777216
		shrinkThreshold: 	33554432
		marking: 	false
		remapBuffer: 	#(2402224 nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...etc...
		remapBufferCount: 	0
		extraRootCount: 	0
		extraRoots: 	nil
		lowSpaceThreshold: 	0
		totalFreeOldSpace: 	31829912
		maxOldSpaceSize: 	0
		gcPhaseInProgress: 	0
		gcStartUsecs: 	3716062480613747
		gcMarkEndUsecs: 	nil
		gcSweepEndUsecs: 	0
		compactionStartUsecs: 	nil
		bogon: 	nil
		statCoalesces: 	0
		statCompactPassCount: 	0
		statFGCDeltaUsecs: 	0
		statFullGCUsecs: 	0
		statCompactionUsecs: 	0
		statSweepUsecs: 	0
		statMarkUsecs: 	0
		statFullGCs: 	0
		statGCEndUsecs: 	3716062480613747
		statGrowMemory: 	1
		statIGCDeltaUsecs: 	0
		statIncrGCUsecs: 	0
		statIncrGCs: 	0
		statMarkCount: 	0
		statRootTableCount: 	1495
		statRootTableOverflows: 	0
		statSGCDeltaUsecs: 	0
		statScavengeGCUsecs: 	0
		statScavenges: 	67
		statShrinkMemory: 	0
		statAllocatedBytes: 	347240464
		parent: 	nil
		bootstrapping: 	false

StackInterpreterSimulatorLSB(StackInterpreter)>>pushReceiverVariable:
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:
		fieldIndex: 	9
	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

[] in StackInterpreterSimulatorLSB(StackInterpreter)>>pushReceiverVariableBytecode
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:

	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

StackInterpreterSimulatorLSB(VMClass)>>cCode:inSmalltalk:
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:
		codeStringOrBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreter)>...etc...
		aBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreter)>>pushReceiverVariableBytecode...etc...
	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

StackInterpreterSimulatorLSB(StackInterpreter)>>pushReceiverVariableBytecode
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:

	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

StackInterpreterSimulatorLSB(StackInterpreterSimulator)>>dispatchOn:in:
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:
		anInteger: 	9
		selectorArray: 	#(#pushReceiverVariableBytecode #pushReceiverVariableBytecode #pushReceiverVariableBytecode...etc...
	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

StackInterpreterSimulatorLSB(StackInterpreterSimulator)>>interpret
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:

	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

StackInterpreterSimulatorLSB(StackInterpreter)>>enterSmalltalkExecutiveImplementation
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:

	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

[] in StackInterpreterSimulatorLSB(StackInterpreter)>>initialEnterSmalltalkExecutive
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:

	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

BlockClosure>>on:do:
	Receiver: [closure] in StackInterpreterSimulatorLSB(StackInterpreter)>>initialEnterSmalltalkExecutive...etc...
	Arguments and temporary variables:
		exceptionOrExceptionSet: 	ReenterInterpreter
		handlerAction: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreter)>>initialEnterSmalltalkExecutive...etc...
		handlerActive: 	true
	Receiver's instance variables:
		outerContext: 	StackInterpreterSimulatorLSB(StackInterpreter)>>initialEnterSmalltalkExecutive...etc...
		startpc: 	85
		numArgs: 	0

StackInterpreterSimulatorLSB(StackInterpreter)>>initialEnterSmalltalkExecutive
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:

	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

StackInterpreterSimulatorLSB(StackInterpreterSimulator)>>run
	Receiver: a StackInterpreterSimulatorLSB
	Arguments and temporary variables:

	Receiver's instance variables:
		objectMemory: 	a Spur64BitMMLESimulatorFor64Bits
		messageSelector: 	7632168
		argumentCount: 	0
		newMethod: 	1691576
		primFailCode: 	0
		osErrorCode: 	0
		exceptionPC: 	0
		inFFIFlags: 	0
		profileMethod: 	7554304
		profileProcess: 	7554304
		profileSemaphore: 	7554304
		nextProfileTick: 	0
		preemptionYields: 	true
		newFinalization: 	false
		sHEAFn: 	77
		ffiExceptionResponse: 	0
		currentBytecode: 	9
		bytecodeSetSelector: 	0
		localFP: 	-12800
		localIP: 	1691624
		localSP: 	-12832
		stackLimit: 	-14336
		stackPage: 	a CogStackPage at -12288 -12312<->-12800 trace 1
		stackPages: 	an InterpreterStackPagesLSB
		method: 	1691576
		instructionPointer: 	1677598
		stackPointer: 	-12784
		framePointer: 	-12744
		localReturnValue: 	4239664
		localAbsentReceiver: 	nil
		localAbsentReceiverOrZero: 	nil
		extA: 	nil
		extB: 	nil
		numExtB: 	nil
		primitiveFunctionPointer: 	0
		methodCache: 	#(0 1346 13979304 0 7643200 1041 1457464 257 7721064 1041 1675472 ...etc...
		nsMethodCache: 	#(nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ni...etc...
		atCache: 	#(4237632 30 50 0 0 0 0 0 4236968 22 50 0 0 0 0 0 15090032 32 2 0 0 0 ...etc...
		lkupClassTag: 	2048
		lkupClass: 	1067136
		methodDictLinearSearchLimit: 	8
		highestRunnableProcessPriority: 	80
		reenterInterpreter: 	ReenterInterpreter:
		nextWakeupUsecs: 	3716062481061800
		nextPollUsecs: 	3716062480653510
		inIOProcessEvents: 	0
		interruptKeycode: 	2094
		interruptPending: 	false
		savedWindowSize: 	64487959
		imageHeaderFlags: 	2
		fullScreenFlag: 	0
		deferDisplayUpdates: 	false
		pendingFinalizationSignals: 	0
		extraVMMemory: 	0
		interpreterProxy: 	a StackInterpreterSimulatorLSB
		showSurfaceFn: 	nil
		primitiveTable: 	#(0 #primitiveAdd #primitiveSubtract #primitiveLessThan #primitiveGreaterThan...etc...
		primitiveAccessorDepthTable: 	#(-1 -1 0 0 0 0 0 0 0 0 -1 -1 0 -1 -1 0 0 0 -1 0 0...etc...
		externalPrimitiveTable: 	a CArrayAccessor on: #(11 103 101 123 118 108 107 94 11...etc...
		externalPrimitiveTableFirstFreeIndex: 	28
		overflowedPage: 	a CogStackPage at -16384 -16464<->-17648 trace 1
		extraFramesToMoveOnOverflow: 	10
		globalSessionID: 	3230293030
		jmpBuf: 	nil
		jmpDepth: 	0
		suspendedCallbacks: 	nil
		suspendedMethods: 	nil
		numStackPages: 	8
		desiredNumStackPages: 	0
		desiredEdenBytes: 	0
		classNameIndex: 	6
		thisClassIndex: 	5
		metaclassNumSlots: 	6
		interruptCheckChain: 	nil
		suppressHeartbeatFlag: 	false
		breakSelector: 	nil
		breakSelectorLength: 	-1152921504606846976
		breakLookupClassTag: 	nil
		longRunningPrimitiveCheckMethod: 	nil
		longRunningPrimitiveCheckSemaphore: 	nil
		longRunningPrimitiveStartUsecs: 	0
		longRunningPrimitiveStopUsecs: 	0
		longRunningPrimitiveGCUsecs: 	nil
		longRunningPrimitiveCheckSequenceNumber: 	nil
		longRunningPrimitiveSignalUndelivered: 	nil
		checkAllocFiller: 	false
		tempOop: 	0
		tempOop2: 	0
		metaAccessorDepth: 	-2
		theUnknownShort: 	0
		the2ndUnknownShort: 	0
		imageFloatsBigEndian: 	0
		maxExtSemTabSizeSet: 	false
		lastMethodCacheProbeWrite: 	1320
		gcSemaphoreIndex: 	0
		classByteArrayCompactIndex: 	50
		checkedPluginName: 	nil
		nativeSP: 	nil
		nativeStackPointer: 	nil
		lowcodeCalloutState: 	nil
		shadowCallStackPointer: 	nil
		displayBits: 	16297680
		displayWidth: 	789
		displayHeight: 	528
		displayDepth: 	32
		statForceInterruptCheck: 	235350
		statStackOverflow: 	42941
		statStackPageDivorce: 	3
		statCheckForEvents: 	236250
		statProcessSwitch: 	13
		statIOProcessEvents: 	236
		statPendingFinalizationSignals: 	0
		statIdleUsecs: 	0
		debugCallbackPath: 	0
		debugCallbackReturns: 	0
		debugCallbackInvokes: 	0
		parent: 	nil
		bootstrapping: 	false
		byteCount: 	235282388
		breakCount: 	nil
		sendCount: 	28522428
		lookupCount: 	2739864
		printSends: 	false
		printReturns: 	false
		traceOn: 	true
		myBitBlt: 	true
		displayForm: 	Form(789x530x32)
		fakeForm: 	Form(205x18x32)
		filesOpen: 	nil
		imageName: 	'/Users/hernan/Documents/VM/opensmalltalk-vm/image/Cuis5.0-3446-read...etc...
		pluginList: 	{''->a StackInterpreterSimulatorLSB . 'SecurityPlugin'->a SecurityPlugin...etc...
		mappedPluginEntries: 	an OrderedCollection({a StackInterpreterSimulatorLSB . #primitiveBitOrLargeIntegers...etc...
		quitBlock: 	[closure] in StackInterpreterSimulatorLSB(StackInterpreterSimulator)...etc...
		transcript: 	a TranscriptStream
		displayView: 	a SimulatorImageMorph(3685761)
		eventTransformer: 	a SimulatorEventTransformer
		printFrameAtEachStep: 	false
		printBytecodeAtEachStep: 	false
		systemAttributes: 	a Dictionary(1->'Cuis5.0-3446-reader.image' 2->nil )
		startMicroseconds: 	3716062475933490
		lastYieldMicroseconds: 	3716062480639090
		externalSemaphoreSignalRequests: 	#()
		externalSemaphoreSignalResponses: 	#()
		extSemTabSize: 	256
		atEachStepBlock: 	nil
		disableBooleanCheat: 	false
		performFilters: 	nil
		eventQueue: 	a SharedQueue(2785)
		assertVEPAES: 	true
		primTraceLog: 	nil

UndefinedObject>>DoIt
	Receiver: nil
	Arguments and temporary variables:
		cos: 	a StackInterpreterSimulatorLSB
	Receiver's instance variables:
nil

Compiler>>evaluateCue:ifFail:
	Receiver: a Compiler
	Arguments and temporary variables:
		aCue: 	a CompilationCue
		failBlock: 	[closure] in Compiler>>evaluateCue:ifFail:logged:
		methodNode: 	DoIt
	| cos |
	cos := StackInterpreterSimulator newWithOptions: #(#ObjectMemory...etc...
		method: 	(UndefinedObject>>#DoIt "a CompiledMethod(371553)")
		value: 	nil
	Receiver's instance variables:
		parser: 	a Parser
		cue: 	a CompilationCue

Compiler>>evaluateCue:ifFail:logged:
	Receiver: a Compiler
	Arguments and temporary variables:
		aCue: 	a CompilationCue
		failBlock: 	[closure] in [] in SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:...etc...
		logFlag: 	true
		value: 	nil
	Receiver's instance variables:
		parser: 	a Parser
		cue: 	a CompilationCue

Compiler>>evaluate:in:to:environment:notifying:ifFail:logged:
	Receiver: a Compiler
	Arguments and temporary variables:
		textOrStream: 	a ReadStream
		aContext: 	nil
		receiver: 	nil
		anEnvironment: 	Smalltalk
		aRequestor: 	a SmalltalkEditor
		failBlock: 	[closure] in [] in SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:...etc...
		logFlag: 	true
	Receiver's instance variables:
		parser: 	a Parser
		cue: 	a CompilationCue

[] in SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
	Receiver: a SmalltalkEditor
	Arguments and temporary variables:
<<error during printing>
	Receiver's instance variables:
		morph: 	a TextMorphForEditView(1725095)
		selectionShowing: 	false
		model: 	a Workspace
		paragraph: 	a NewParagraph
		markBlock: 	a CharacterBlock with index 2382 and character $| and rectangle 8 at 80...etc...
		pointBlock: 	a CharacterBlock with index 2569 and character $] and rectangle 138...etc...
		beginTypeInIndex: 	nil
		emphasisHere: 	{a TextColor code: (Color r: 0.0 g: 0.0 b: 0.5)}
		lastParenLocation: 	nil
		otherInterval: 	(2389 to: 2388)
		oldInterval: 	(2382 to: 2381)
		typeAhead: 	a WriteStream
		history: 	a TextEditorCommandHistory
		styler: 	nil

BlockClosure>>on:do:
	Receiver: [closure] in SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
	Arguments and temporary variables:
		exceptionOrExceptionSet: 	OutOfScopeNotification
		handlerAction: 	[closure] in SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:...etc...
		handlerActive: 	true
	Receiver's instance variables:
		outerContext: 	SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
		startpc: 	253
		numArgs: 	0


--- The full stack ---
Spur64BitMMLESimulatorFor64Bits(Object)>>assert:
Spur64BitMMLESimulatorFor64Bits(Spur64BitMMLESimulator)>>fetchPointer:ofObject:
StackInterpreterSimulatorLSB(StackInterpreter)>>pushReceiverVariable:
[] in StackInterpreterSimulatorLSB(StackInterpreter)>>pushReceiverVariableBytecode
StackInterpreterSimulatorLSB(VMClass)>>cCode:inSmalltalk:
StackInterpreterSimulatorLSB(StackInterpreter)>>pushReceiverVariableBytecode
StackInterpreterSimulatorLSB(StackInterpreterSimulator)>>dispatchOn:in:
StackInterpreterSimulatorLSB(StackInterpreterSimulator)>>interpret
StackInterpreterSimulatorLSB(StackInterpreter)>>enterSmalltalkExecutiveImplementation
[] in StackInterpreterSimulatorLSB(StackInterpreter)>>initialEnterSmalltalkExecutive
BlockClosure>>on:do:
StackInterpreterSimulatorLSB(StackInterpreter)>>initialEnterSmalltalkExecutive
StackInterpreterSimulatorLSB(StackInterpreterSimulator)>>run
UndefinedObject>>DoIt
Compiler>>evaluateCue:ifFail:
Compiler>>evaluateCue:ifFail:logged:
Compiler>>evaluate:in:to:environment:notifying:ifFail:logged:
[] in SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
BlockClosure>>on:do:
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:
SmalltalkEditor(TextEditor)>>evaluateSelection
SmalltalkEditor(TextEditor)>>doIt
SmalltalkEditor(TextEditor)>>doIt:
SmalltalkEditor(TextEditor)>>dispatchOnKeyboardEvent:
SmalltalkEditor(TextEditor)>>keyStroke:
[] in [] in TextMorphForEditView(TextMorph)>>keyStroke:
TextMorphForEditView(TextMorph)>>handleInteraction:fromEvent:
TextMorphForEditView>>handleInteraction:fromEvent:
[] in TextMorphForEditView(TextMorph)>>keyStroke:
StandardToolSet class>>codeCompletionAround:textMorph:keyStroke:
ToolSet class>>codeCompletionAround:textMorph:keyStroke:
TextMorphForEditView(TextMorph)>>keyStroke:
TextMorphForEditView>>keyStroke:
TextMorphForEditView(Morph)>>handleKeystroke:
TextMorphForEditView(TextMorph)>>handleKeystroke:
KeyboardEvent>>sentTo:
TextMorphForEditView(Morph)>>handleEvent:
TextMorphForEditView(Morph)>>handleFocusEvent:
MorphicEventDispatcher>>doHandlingForFocusEvent:with:
MorphicEventDispatcher>>dispatchFocusEvent:with:
TextMorphForEditView(Morph)>>processFocusEvent:using:
TextMorphForEditView(Morph)>>processFocusEvent:
[] in [] in [] in HandMorph>>sendFocusEvent:to:clear:
BlockClosure>>ensure:
KeyboardEvent(MorphicEvent)>>becomeActiveDuring:
[] in [] in HandMorph>>sendFocusEvent:to:clear:
BlockClosure>>ensure:
HandMorph>>becomeActiveDuring:
[] in HandMorph>>sendFocusEvent:to:clear:
BlockClosure>>ensure:
PasteUpMorph>>becomeActiveDuring:
HandMorph>>sendFocusEvent:to:clear:
HandMorph>>sendEvent:focus:clear:
HandMorph>>sendKeyboardEvent:
HandMorph>>handleEvent:
HandMorph>>processEvents
[] in WorldState>>doOneCycleNowFor:
Array(SequenceableCollection)>>do:
WorldState>>handsDo:
WorldState>>doOneCycleNowFor:
WorldState>>doOneCycleFor:
-- and more not shown --


More information about the Vm-dev mailing list