Hi!
I just tried Squeak.5.0.0.b9.64*64.app.zip, but I was not able to run a pharo core on it. I have a MacBookPro 10.5.8. I do not know whether this is helpful or not. Feel free to ask more info about my config. Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Hi Alex,
PharoCore is a 32bits image. So it works on Squeak.5.0.0.b9.64*32.app. I see that Squeak has a 64bits fork image, is it possible to have a Pharo one? What is the process to do this ? Cheers, Jannik On Dec 4, 2009, at 20:50 , Alexandre Bergel wrote: > Hi! > > I just tried Squeak.5.0.0.b9.64*64.app.zip, but I was not able to run > a pharo core on it. > I have a MacBookPro 10.5.8. I do not know whether this is helpful or > not. Feel free to ask more info about my config. > > Cheers, > Alexandre > -- > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: > Alexandre Bergel http://www.bergel.eu > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. > > > > > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Alexandre Bergel
Pharo core is a 32bit image, unless someone kindly converted it to a 64bit image last night?
Hint I"m not going to do this. Therefore you must use the 64*32.app. As a reminder The VM binary runs either in 32 bit or 64 bit mode. The VM then reads and interprets a squeak.image, the squeak image can be either 32bit or 64bit. This leads to 4 different combinations plus the fact that PowerPC 32, and Intel is 32/64 or just 32. Unfortunately building a VM that deals both with a 32bit and a 64bit at the same time is difficult. Therefore we have two flavours a VM that reads a 32bit image, and a VM that reads a 64bit image. The 64*32.app will run 32bit squeak images where a squeak word size is 32 bits. it runs as a PowerPC 32 bit, Intel 32bit, Intel 64bit. The 64*64.app will run 64bit squeak images where a squeak word size is 64bits it runs only as a Intel 64bit. It is possible that it could run on a 32bit powerpc, 32bit intel, but frankly I'm not going to check that out yet until we get to the point of having a workable 64bit Pharo image. Thus in the *near*? future I would like to have a VM that runs in 32 or 64 bit mode that works with 32bit images, and a VM that runs in 32 or 64 bit mode that works with 64bit images. On 2009-12-04, at 11:50 AM, Alexandre Bergel wrote: > Hi! > > I just tried Squeak.5.0.0.b9.64*64.app.zip, but I was not able to run > a pharo core on it. > I have a MacBookPro 10.5.8. I do not know whether this is helpful or > not. Feel free to ask more info about my config. > > Cheers, > Alexandre > -- > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: > Alexandre Bergel http://www.bergel.eu > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. > > > > > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project -- =========================================================================== John M. McIntosh <[hidden email]> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by jannik laval
I think David Lewis made the last one, let's cc him.
Perhaps the process would be Examine the squeak image. take the required source that does the system tracing someone make a MC project (no idea if one exists?) a) file that into a Pharo image. b) Correct things like references to Smalltalk, versus SmalltalkImage current c) run it. d) place 64bit image on pharo server. I note to run the system tracer you need to run it either on a PowerPC. Or on a MacIntel using a 4.x series macintosh VM, make a copy, do a get info on the VM check "Open using Rosetta" If "Open using Rosetta" is not an option and you are running 10.6 then it is likely you did not install Rosetta when you upgraded/installed 10.6. You need to find your 10.6 DVD and lookup how to install Rosetta after installing 10.6 PS yes you could use a 10.5 series VM for this too. However to complicate things I don't think anyone has done a Closure based image and I don't know if that will be a problem. You could take a pre-closure Pharo image and try it just to get past the point where having the SystemTracer code in a MC is done. On 2009-12-04, at 1:23 PM, Laval Jannik wrote: > Hi Alex, > > PharoCore is a 32bits image. > So it works on Squeak.5.0.0.b9.64*32.app. > > I see that Squeak has a 64bits fork image, is it possible to have a Pharo one? > What is the process to do this ? > > Cheers, > Jannik > > > On Dec 4, 2009, at 20:50 , Alexandre Bergel wrote: > >> Hi! >> >> I just tried Squeak.5.0.0.b9.64*64.app.zip, but I was not able to run >> a pharo core on it. >> I have a MacBookPro 10.5.8. I do not know whether this is helpful or >> not. Feel free to ask more info about my config. >> >> Cheers, >> Alexandre >> -- >> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: >> Alexandre Bergel http://www.bergel.eu >> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. >> >> >> >> >> >> >> _______________________________________________ >> Pharo-project mailing list >> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project -- =========================================================================== John M. McIntosh <[hidden email]> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Hi John,
Ok, I thried this: - file in the updated System-Tracer (attached) > I modified some references to Smalltalk to SmalltalkImage current, but not all. - run it ok, it runs and generate a new image. This is done in a 4.2.2VM runing with rosetta. Now, when I try to load the new image, VM open a white window (this is not bad :) ) But I don't know what I can do with this, there is no message. So, I tried also with a pharo10259 and a Squeak 3.10 and I have the same error. Do you have an idea of the bug ? Cheers, Jannik On Dec 4, 2009, at 22:39 , John M McIntosh wrote: > I think David Lewis made the last one, let's cc him. > > Perhaps the process would be > > Examine the squeak image. > take the required source that does the system tracing > someone make a MC project (no idea if one exists?) > > a) file that into a Pharo image. > b) Correct things like references to Smalltalk, versus SmalltalkImage current > c) run it. > d) place 64bit image on pharo server. > > I note to run the system tracer you need to run it either on a PowerPC. > Or on a MacIntel using a 4.x series macintosh VM, make a copy, do a get info on the VM > check "Open using Rosetta" > > If "Open using Rosetta" is not an option and you are running 10.6 then it is likely you did > not install Rosetta when you upgraded/installed 10.6. You need to find your 10.6 DVD > and lookup how to install Rosetta after installing 10.6 > > PS yes you could use a 10.5 series VM for this too. > > > However to complicate things I don't think anyone has done a Closure based image > and I don't know if that will be a problem. You could take a pre-closure Pharo image > and try it just to get past the point where having the SystemTracer code in a MC is done. > > > On 2009-12-04, at 1:23 PM, Laval Jannik wrote: > >> Hi Alex, >> >> PharoCore is a 32bits image. >> So it works on Squeak.5.0.0.b9.64*32.app. >> >> I see that Squeak has a 64bits fork image, is it possible to have a Pharo one? >> What is the process to do this ? >> >> Cheers, >> Jannik >> >> >> On Dec 4, 2009, at 20:50 , Alexandre Bergel wrote: >> >>> Hi! >>> >>> I just tried Squeak.5.0.0.b9.64*64.app.zip, but I was not able to run >>> a pharo core on it. >>> I have a MacBookPro 10.5.8. I do not know whether this is helpful or >>> not. Feel free to ask more info about my config. >>> >>> Cheers, >>> Alexandre >>> -- >>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: >>> Alexandre Bergel http://www.bergel.eu >>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. >>> >>> >>> >>> >>> >>> >>> _______________________________________________ >>> Pharo-project mailing list >>> [hidden email] >>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> >> >> >> >> _______________________________________________ >> Pharo-project mailing list >> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > -- > =========================================================================== > John M. McIntosh <[hidden email]> Twitter: squeaker68882 > Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com > =========================================================================== > > > > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project System-Tracing.2forPharo.cs (61K) Download Attachment |
cool jannik
May be we should publish this package system tracer somewhere. On Dec 5, 2009, at 3:38 PM, Laval Jannik wrote: > Hi John, > > Ok, I thried this: > - file in the updated System-Tracer (attached) > > I modified some references to Smalltalk to SmalltalkImage current, but not all. > - run it > ok, it runs and generate a new image. > This is done in a 4.2.2VM runing with rosetta. > > Now, when I try to load the new image, VM open a white window (this is not bad :) ) > But I don't know what I can do with this, there is no message. > > So, I tried also with a pharo10259 and a Squeak 3.10 and I have the same error. > > Do you have an idea of the bug ? > > Cheers, > Jannik > > <System-Tracing.2forPharo.cs> > On Dec 4, 2009, at 22:39 , John M McIntosh wrote: > >> I think David Lewis made the last one, let's cc him. >> >> Perhaps the process would be >> >> Examine the squeak image. >> take the required source that does the system tracing >> someone make a MC project (no idea if one exists?) >> >> a) file that into a Pharo image. >> b) Correct things like references to Smalltalk, versus SmalltalkImage current >> c) run it. >> d) place 64bit image on pharo server. >> >> I note to run the system tracer you need to run it either on a PowerPC. >> Or on a MacIntel using a 4.x series macintosh VM, make a copy, do a get info on the VM >> check "Open using Rosetta" >> >> If "Open using Rosetta" is not an option and you are running 10.6 then it is likely you did >> not install Rosetta when you upgraded/installed 10.6. You need to find your 10.6 DVD >> and lookup how to install Rosetta after installing 10.6 >> >> PS yes you could use a 10.5 series VM for this too. >> >> >> However to complicate things I don't think anyone has done a Closure based image >> and I don't know if that will be a problem. You could take a pre-closure Pharo image >> and try it just to get past the point where having the SystemTracer code in a MC is done. >> >> >> On 2009-12-04, at 1:23 PM, Laval Jannik wrote: >> >>> Hi Alex, >>> >>> PharoCore is a 32bits image. >>> So it works on Squeak.5.0.0.b9.64*32.app. >>> >>> I see that Squeak has a 64bits fork image, is it possible to have a Pharo one? >>> What is the process to do this ? >>> >>> Cheers, >>> Jannik >>> >>> >>> On Dec 4, 2009, at 20:50 , Alexandre Bergel wrote: >>> >>>> Hi! >>>> >>>> I just tried Squeak.5.0.0.b9.64*64.app.zip, but I was not able to run >>>> a pharo core on it. >>>> I have a MacBookPro 10.5.8. I do not know whether this is helpful or >>>> not. Feel free to ask more info about my config. >>>> >>>> Cheers, >>>> Alexandre >>>> -- >>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: >>>> Alexandre Bergel http://www.bergel.eu >>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. >>>> >>>> >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Pharo-project mailing list >>>> [hidden email] >>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>> >>> >>> >>> >>> _______________________________________________ >>> Pharo-project mailing list >>> [hidden email] >>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> >> -- >> =========================================================================== >> John M. McIntosh <[hidden email]> Twitter: squeaker68882 >> Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com >> =========================================================================== >> >> >> >> >> >> _______________________________________________ >> Pharo-project mailing list >> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
The problem is that it does not work fine.
But I publish it soon. Jannik On Dec 5, 2009, at 15:48 , Stéphane Ducasse wrote: > cool jannik > May be we should publish this package system tracer somewhere. > On Dec 5, 2009, at 3:38 PM, Laval Jannik wrote: > >> Hi John, >> >> Ok, I thried this: >> - file in the updated System-Tracer (attached) >> > I modified some references to Smalltalk to SmalltalkImage current, but not all. >> - run it >> ok, it runs and generate a new image. >> This is done in a 4.2.2VM runing with rosetta. >> >> Now, when I try to load the new image, VM open a white window (this is not bad :) ) >> But I don't know what I can do with this, there is no message. >> >> So, I tried also with a pharo10259 and a Squeak 3.10 and I have the same error. >> >> Do you have an idea of the bug ? >> >> Cheers, >> Jannik >> >> <System-Tracing.2forPharo.cs> >> On Dec 4, 2009, at 22:39 , John M McIntosh wrote: >> >>> I think David Lewis made the last one, let's cc him. >>> >>> Perhaps the process would be >>> >>> Examine the squeak image. >>> take the required source that does the system tracing >>> someone make a MC project (no idea if one exists?) >>> >>> a) file that into a Pharo image. >>> b) Correct things like references to Smalltalk, versus SmalltalkImage current >>> c) run it. >>> d) place 64bit image on pharo server. >>> >>> I note to run the system tracer you need to run it either on a PowerPC. >>> Or on a MacIntel using a 4.x series macintosh VM, make a copy, do a get info on the VM >>> check "Open using Rosetta" >>> >>> If "Open using Rosetta" is not an option and you are running 10.6 then it is likely you did >>> not install Rosetta when you upgraded/installed 10.6. You need to find your 10.6 DVD >>> and lookup how to install Rosetta after installing 10.6 >>> >>> PS yes you could use a 10.5 series VM for this too. >>> >>> >>> However to complicate things I don't think anyone has done a Closure based image >>> and I don't know if that will be a problem. You could take a pre-closure Pharo image >>> and try it just to get past the point where having the SystemTracer code in a MC is done. >>> >>> >>> On 2009-12-04, at 1:23 PM, Laval Jannik wrote: >>> >>>> Hi Alex, >>>> >>>> PharoCore is a 32bits image. >>>> So it works on Squeak.5.0.0.b9.64*32.app. >>>> >>>> I see that Squeak has a 64bits fork image, is it possible to have a Pharo one? >>>> What is the process to do this ? >>>> >>>> Cheers, >>>> Jannik >>>> >>>> >>>> On Dec 4, 2009, at 20:50 , Alexandre Bergel wrote: >>>> >>>>> Hi! >>>>> >>>>> I just tried Squeak.5.0.0.b9.64*64.app.zip, but I was not able to run >>>>> a pharo core on it. >>>>> I have a MacBookPro 10.5.8. I do not know whether this is helpful or >>>>> not. Feel free to ask more info about my config. >>>>> >>>>> Cheers, >>>>> Alexandre >>>>> -- >>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: >>>>> Alexandre Bergel http://www.bergel.eu >>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Pharo-project mailing list >>>>> [hidden email] >>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Pharo-project mailing list >>>> [hidden email] >>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>> >>> -- >>> =========================================================================== >>> John M. McIntosh <[hidden email]> Twitter: squeaker68882 >>> Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com >>> =========================================================================== >>> >>> >>> >>> >>> >>> _______________________________________________ >>> Pharo-project mailing list >>> [hidden email] >>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> >> >> >> _______________________________________________ >> Pharo-project mailing list >> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by johnmci
Hi,
(cc to vm-dev list) The 64-bit image that I provided is a direct descendent of the original one that was produced by Dan and Ian. Original 64-bit image: http://squeakvm.org/squeak64/dist3/Squeak64-3.8g-6548.image.tar.gz My update: http://squeakvm.org/squeak64/sq64-dtl.zip The original one was produced with a specialized system tracer, the code for which is here: http://squeakvm.org/squeak64/dist3/ChangeSets/System-Tracing.2.cs I did *not* use the system tracer to produce the updated image. Instead, it is the original image with various updates that I made over the years to keep up with VM developments (which were not entirely backward compatible). The original image will not run on a current VM, and that is the reason that I posted my update. The system tracer (including the specialized 64-bit one) does not work on little-endian machines. Somebody (tm) should fix this one of these days. There are a couple of Mantis reports related to this: http://bugs.squeak.org/view.php?id=5240 http://bugs.squeak.org/view.php?id=5239 As far as producing a 64-bit Pharo image, I think there are two things that could be tried: 1) Fix the system tracer to work on little-endian boxes (probably not too difficult), then try tracing some Pharo and Squeak images into 64-bit format. 2) Find somebody who has a big-endian Mac available, and have them try tracing some images. I can think of no reason why the newer images with closure support could not be traced into 64-bit formats, but I guess the only way to find out is to try it and see what happens. Dave On Fri, Dec 04, 2009 at 01:39:28PM -0800, John M McIntosh wrote: > I think David Lewis made the last one, let's cc him. > > Perhaps the process would be > > Examine the squeak image. > take the required source that does the system tracing > someone make a MC project (no idea if one exists?) > > a) file that into a Pharo image. > b) Correct things like references to Smalltalk, versus SmalltalkImage current > c) run it. > d) place 64bit image on pharo server. > > I note to run the system tracer you need to run it either on a PowerPC. > Or on a MacIntel using a 4.x series macintosh VM, make a copy, do a get info on the VM > check "Open using Rosetta" > > If "Open using Rosetta" is not an option and you are running 10.6 then it is likely you did > not install Rosetta when you upgraded/installed 10.6. You need to find your 10.6 DVD > and lookup how to install Rosetta after installing 10.6 > > PS yes you could use a 10.5 series VM for this too. > > > However to complicate things I don't think anyone has done a Closure based image > and I don't know if that will be a problem. You could take a pre-closure Pharo image > and try it just to get past the point where having the SystemTracer code in a MC is done. > > > On 2009-12-04, at 1:23 PM, Laval Jannik wrote: > > > Hi Alex, > > > > PharoCore is a 32bits image. > > So it works on Squeak.5.0.0.b9.64*32.app. > > > > I see that Squeak has a 64bits fork image, is it possible to have a Pharo one? > > What is the process to do this ? > > > > Cheers, > > Jannik > > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by jannik laval
On 2009-12-05, at 6:38 AM, Laval Jannik wrote: > Hi John, > > Ok, I thried this: > - file in the updated System-Tracer (attached) > > I modified some references to Smalltalk to SmalltalkImage current, but not all. > - run it > ok, it runs and generate a new image. > This is done in a 4.2.2VM runing with rosetta. > > Now, when I try to load the new image, VM open a white window (this is not bad :) ) > But I don't know what I can do with this, there is no message. > > So, I tried also with a pharo10259 and a Squeak 3.10 and I have the same error. > > Do you have an idea of the bug ? > > I modified some references to Smalltalk to SmalltalkImage current, but not all. *all* references have to be checked You get a DNU at startup time, dead... SystemTracer2>>processStartup See usage of Smalltalk hacking a bit more gets you to -- =========================================================================== John M. McIntosh <[hidden email]> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project PastedGraphic-1.tiff (77K) Download Attachment |
> > hacking a bit more gets you to > <PastedGraphic-1.tiff> In a few spare moments as I await the Arctic front to bury us in snow... I consider the return: error has to be related to the move from BlockContext to BlockClosure so in object:allFieldsWithIndex:collect: I added object class = BlockClosure ifTrue: [(object instVarAt: 3) ifNotNil: ["May need to adjust PC and startPC if changing wordSize..." results at: 2 put: (block value: (object instVarAt: 2)+(self pcDeltaForMethod: object method) value: 2)]]. mmm try that get this more interesting error THERE_BE_DRAGONS_HERE Unwind error during termination 5 December 2009 6:13:31 pm VM: Mac OS - intel - 1062 - Squeak3.8.1 of '28 Aug 2006' [latest update: #6747] 9.0 Image: PharoCore1.0rc1 [Latest update: #10496] SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /Volumes/px2/business/SqueakiPhone/SqueakObjCBasedForOSXAndIPhone/SqueakNoOGLIPhoneOSX/testingImages/64bittracingchangesets Trusted Dir /foobar/tooBar/forSqueak/bogus/ Untrusted Dir /foobar/tooBar/forSqueak/bogus/ Array(Object)>>error: Receiver: #() Arguments and temporary variables: <<error during printing> Receiver's instance variables: #() Array(Object)>>errorSubscriptBounds: Receiver: #() Arguments and temporary variables: <<error during printing> Receiver's instance variables: #() Array(Object)>>at: Receiver: #() Arguments and temporary variables: <<error during printing> Receiver's instance variables: #() Decompiler>>pushTemporaryVariable: Receiver: a Decompiler Arguments and temporary variables: <<error during printing> Receiver's instance variables: sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) pc: 29 constructor: {a DecompilerConstructor} method: a CompiledMethod(1253: InstructionStream>>debuggerMap) instVars: an Array({sender} {pc}) tempVars: #() constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) stack: an OrderedCollection({pc} {sender debuggerMap (sender blockCopy: sender...etc... statements: an OrderedCollection() lastPc: 28 exit: nil caseExits: an OrderedCollection() lastJumpPc: nil lastReturnPc: nil limit: 45 hasValue: nil blockStackBase: 0 numLocalTemps: 0 blockStartsToTempVars: nil tempVarCount: 0 Decompiler(InstructionStream)>>interpretNextInstructionFor: Receiver: a Decompiler Arguments and temporary variables: <<error during printing> Receiver's instance variables: sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) pc: 29 constructor: {a DecompilerConstructor} method: a CompiledMethod(1253: InstructionStream>>debuggerMap) instVars: an Array({sender} {pc}) tempVars: #() constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) stack: an OrderedCollection({pc} {sender debuggerMap (sender blockCopy: sender...etc... statements: an OrderedCollection() lastPc: 28 exit: nil caseExits: an OrderedCollection() lastJumpPc: nil lastReturnPc: nil limit: 45 hasValue: nil blockStackBase: 0 numLocalTemps: 0 blockStartsToTempVars: nil tempVarCount: 0 Decompiler>>interpretNextInstructionFor: Receiver: a Decompiler Arguments and temporary variables: <<error during printing> Receiver's instance variables: sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) pc: 29 constructor: {a DecompilerConstructor} method: a CompiledMethod(1253: InstructionStream>>debuggerMap) instVars: an Array({sender} {pc}) tempVars: #() constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) stack: an OrderedCollection({pc} {sender debuggerMap (sender blockCopy: sender...etc... statements: an OrderedCollection() lastPc: 28 exit: nil caseExits: an OrderedCollection() lastJumpPc: nil lastReturnPc: nil limit: 45 hasValue: nil blockStackBase: 0 numLocalTemps: 0 blockStartsToTempVars: nil tempVarCount: 0 Decompiler>>statementsTo: Receiver: a Decompiler Arguments and temporary variables: <<error during printing> Receiver's instance variables: sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) pc: 29 constructor: {a DecompilerConstructor} method: a CompiledMethod(1253: InstructionStream>>debuggerMap) instVars: an Array({sender} {pc}) tempVars: #() constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) stack: an OrderedCollection({pc} {sender debuggerMap (sender blockCopy: sender...etc... statements: an OrderedCollection() lastPc: 28 exit: nil caseExits: an OrderedCollection() lastJumpPc: nil lastReturnPc: nil limit: 45 hasValue: nil blockStackBase: 0 numLocalTemps: 0 blockStartsToTempVars: nil tempVarCount: 0 Decompiler>>blockTo: Receiver: a Decompiler Arguments and temporary variables: <<error during printing> Receiver's instance variables: sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) pc: 29 constructor: {a DecompilerConstructor} method: a CompiledMethod(1253: InstructionStream>>debuggerMap) instVars: an Array({sender} {pc}) tempVars: #() constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) stack: an OrderedCollection({pc} {sender debuggerMap (sender blockCopy: sender...etc... statements: an OrderedCollection() lastPc: 28 exit: nil caseExits: an OrderedCollection() lastJumpPc: nil lastReturnPc: nil limit: 45 hasValue: nil blockStackBase: 0 numLocalTemps: 0 blockStartsToTempVars: nil tempVarCount: 0 Decompiler>>decompile:in:method:using: Receiver: a Decompiler Arguments and temporary variables: <<error during printing> Receiver's instance variables: sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) pc: 29 constructor: {a DecompilerConstructor} method: a CompiledMethod(1253: InstructionStream>>debuggerMap) instVars: an Array({sender} {pc}) tempVars: #() constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) stack: an OrderedCollection({pc} {sender debuggerMap (sender blockCopy: sender...etc... statements: an OrderedCollection() lastPc: 28 exit: nil caseExits: an OrderedCollection() lastJumpPc: nil lastReturnPc: nil limit: 45 hasValue: nil blockStackBase: 0 numLocalTemps: 0 blockStartsToTempVars: nil tempVarCount: 0 Decompiler>>decompile:in:method: Receiver: a Decompiler Arguments and temporary variables: <<error during printing> Receiver's instance variables: sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) pc: 29 constructor: {a DecompilerConstructor} method: a CompiledMethod(1253: InstructionStream>>debuggerMap) instVars: an Array({sender} {pc}) tempVars: #() constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) stack: an OrderedCollection({pc} {sender debuggerMap (sender blockCopy: sender...etc... statements: an OrderedCollection() lastPc: 28 exit: nil caseExits: an OrderedCollection() lastJumpPc: nil lastReturnPc: nil limit: 45 hasValue: nil blockStackBase: 0 numLocalTemps: 0 blockStartsToTempVars: nil tempVarCount: 0 CompiledMethod>>getSourceFor:in: Receiver: a CompiledMethod(1253: InstructionStream>>debuggerMap) Arguments and temporary variables: <<error during printing> Receiver's instance variables: a CompiledMethod(1253: InstructionStream>>debuggerMap) CompiledMethod>>methodNode Receiver: a CompiledMethod(1253: InstructionStream>>debuggerMap) Arguments and temporary variables: <<error during printing> Receiver's instance variables: a CompiledMethod(1253: InstructionStream>>debuggerMap) [] in DebuggerMethodMap class>>forMethod: Receiver: DebuggerMethodMap Arguments and temporary variables: <<error during printing> Receiver's instance variables: superclass: Object methodDict: a MethodDictionary(#abstractSourceMap->a CompiledMethod(3330: Debug...etc... format: 140 instanceVariables: #('timestamp' 'methodReference' 'methodNode' 'abstractSource...etc... organization: ('accessing' markRecentlyUsed method namedTempAt:in: namedTempAt:...etc... subclasses: {DebuggerMethodMapForBlueBookMethods. DebuggerMethodMapForClosureCo...etc... name: #DebuggerMethodMap classPool: a Dictionary(#MapCache->a WeakIdentityKeyDictionary(a CompiledMethod...etc... sharedPools: nil environment: Smalltalk category: #'Tools-Debugger' traitComposition: nil localSelectors: nil WeakIdentityKeyDictionary(Dictionary)>>at:ifAbsent: Receiver: a WeakIdentityKeyDictionary(a CompiledMethod(1410: HandMorph>>handleEvent:)->a DebuggerMet...etc... Arguments and temporary variables: <<error during printing> Receiver's instance variables: tally: 16 array: an Array(a CompiledMethod(3440: Morph>>processEvent:)->a DebuggerMethodM...etc... DebuggerMethodMap class>>forMethod: Receiver: DebuggerMethodMap Arguments and temporary variables: <<error during printing> Receiver's instance variables: superclass: Object methodDict: a MethodDictionary(#abstractSourceMap->a CompiledMethod(3330: Debug...etc... format: 140 instanceVariables: #('timestamp' 'methodReference' 'methodNode' 'abstractSource...etc... organization: ('accessing' markRecentlyUsed method namedTempAt:in: namedTempAt:...etc... subclasses: {DebuggerMethodMapForBlueBookMethods. DebuggerMethodMapForClosureCo...etc... name: #DebuggerMethodMap classPool: a Dictionary(#MapCache->a WeakIdentityKeyDictionary(a CompiledMethod...etc... sharedPools: nil environment: Smalltalk category: #'Tools-Debugger' traitComposition: nil localSelectors: nil CompiledMethod>>debuggerMap Receiver: a CompiledMethod(1253: InstructionStream>>debuggerMap) Arguments and temporary variables: <<error during printing> Receiver's instance variables: a CompiledMethod(1253: InstructionStream>>debuggerMap) MethodContext(InstructionStream)>>debuggerMap Receiver: MethodContext(InstructionStream)>>debuggerMap Arguments and temporary variables: <<error during printing> Receiver's instance variables: sender: Debugger>>selectedMessage pc: 44 stackp: 0 method: a CompiledMethod(1253: InstructionStream>>debuggerMap) closureOrNil: nil receiver: CompiledMethod>>methodNode Debugger>>selectedMessage Receiver: a Debugger Arguments and temporary variables: <<error during printing> Receiver's instance variables: dependents: a DependentsArray(a SystemWindow(3468) a PluggableListMorph(1072) a...etc... contents: nil currentCompiledMethod: nil contentsSymbol: #source interruptedProcess: a Process in Debugger class>>openOn:context:label:contents:...etc... interruptedController: nil contextStack: an OrderedCollection(CompiledMethod(Object)>>error: CompiledMetho...etc... contextStackTop: CompiledMethod(Object)>>error: contextStackIndex: 17 contextStackList: an OrderedCollection('CompiledMethod(Object)>>error:' 'Compil...etc... receiverInspector: an Inspector contextVariablesInspector: a ContextVariablesInspector externalInterrupt: false proceedValue: nil selectingPC: true debuggerMap: nil savedCursor: ((CursorWithMask extent: 16@16 depth: 1 fromArray: #( 2r0 2...etc... isolationHead: nil failedProject: nil errorWasInUIProcess: true labelString: nil Debugger>>contextStackIndex:oldContextWas: Receiver: a Debugger Arguments and temporary variables: <<error during printing> Receiver's instance variables: dependents: a DependentsArray(a SystemWindow(3468) a PluggableListMorph(1072) a...etc... contents: nil currentCompiledMethod: nil contentsSymbol: #source interruptedProcess: a Process in Debugger class>>openOn:context:label:contents:...etc... interruptedController: nil contextStack: an OrderedCollection(CompiledMethod(Object)>>error: CompiledMetho...etc... contextStackTop: CompiledMethod(Object)>>error: contextStackIndex: 17 contextStackList: an OrderedCollection('CompiledMethod(Object)>>error:' 'Compil...etc... receiverInspector: an Inspector contextVariablesInspector: a ContextVariablesInspector externalInterrupt: false proceedValue: nil selectingPC: true debuggerMap: nil savedCursor: ((CursorWithMask extent: 16@16 depth: 1 fromArray: #( 2r0 2...etc... isolationHead: nil failedProject: nil errorWasInUIProcess: true labelString: nil Debugger>>toggleContextStackIndex: Receiver: a Debugger Arguments and temporary variables: <<error during printing> Receiver's instance variables: dependents: a DependentsArray(a SystemWindow(3468) a PluggableListMorph(1072) a...etc... contents: nil currentCompiledMethod: nil contentsSymbol: #source interruptedProcess: a Process in Debugger class>>openOn:context:label:contents:...etc... interruptedController: nil contextStack: an OrderedCollection(CompiledMethod(Object)>>error: CompiledMetho...etc... contextStackTop: CompiledMethod(Object)>>error: contextStackIndex: 17 contextStackList: an OrderedCollection('CompiledMethod(Object)>>error:' 'Compil...etc... receiverInspector: an Inspector contextVariablesInspector: a ContextVariablesInspector externalInterrupt: false proceedValue: nil selectingPC: true debuggerMap: nil savedCursor: ((CursorWithMask extent: 16@16 depth: 1 fromArray: #( 2r0 2...etc... isolationHead: nil failedProject: nil errorWasInUIProcess: true labelString: nil PluggableListMorph>>changeModelSelection: Receiver: a PluggableListMorph(1072) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 18@31 corner: 608@201 owner: a SystemWindow(3468) submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) fullBounds: nil color: Color white extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... borderWidth: 1 borderColor: (Color r: 0.667 g: 0.667 b: 0.667) model: a Debugger slotName: nil open: false scrollBar: a ScrollBar(3011) scroller: a TransformMorph(3775) retractableScrollBar: false scrollBarOnLeft: false getMenuSelector: #contextStackMenu:shifted: getMenuTitleSelector: #messageListSelectorTitle hasFocus: true hScrollBar: a ScrollBar(2791) list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... getListSelector: #contextStackList getListSizeSelector: nil getListElementSelector: nil getIndexSelector: #contextStackIndex setIndexSelector: #toggleContextStackIndex: keystrokeActionSelector: #contextStackKey:from: autoDeselect: true lastKeystrokeTime: 0 lastKeystrokes: '' doubleClickSelector: nil handlesBasicKeys: nil potentialDropRow: nil listMorph: a LazyListMorph(1316) hScrollRangeCache: nil PluggableListMorph>>mouseUp: Receiver: a PluggableListMorph(1072) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 18@31 corner: 608@201 owner: a SystemWindow(3468) submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) fullBounds: nil color: Color white extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... borderWidth: 1 borderColor: (Color r: 0.667 g: 0.667 b: 0.667) model: a Debugger slotName: nil open: false scrollBar: a ScrollBar(3011) scroller: a TransformMorph(3775) retractableScrollBar: false scrollBarOnLeft: false getMenuSelector: #contextStackMenu:shifted: getMenuTitleSelector: #messageListSelectorTitle hasFocus: true hScrollBar: a ScrollBar(2791) list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... getListSelector: #contextStackList getListSizeSelector: nil getListElementSelector: nil getIndexSelector: #contextStackIndex setIndexSelector: #toggleContextStackIndex: keystrokeActionSelector: #contextStackKey:from: autoDeselect: true lastKeystrokeTime: 0 lastKeystrokes: '' doubleClickSelector: nil handlesBasicKeys: nil potentialDropRow: nil listMorph: a LazyListMorph(1316) hScrollRangeCache: nil PluggableListMorph(Morph)>>handleMouseUp: Receiver: a PluggableListMorph(1072) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 18@31 corner: 608@201 owner: a SystemWindow(3468) submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) fullBounds: nil color: Color white extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... borderWidth: 1 borderColor: (Color r: 0.667 g: 0.667 b: 0.667) model: a Debugger slotName: nil open: false scrollBar: a ScrollBar(3011) scroller: a TransformMorph(3775) retractableScrollBar: false scrollBarOnLeft: false getMenuSelector: #contextStackMenu:shifted: getMenuTitleSelector: #messageListSelectorTitle hasFocus: true hScrollBar: a ScrollBar(2791) list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... getListSelector: #contextStackList getListSizeSelector: nil getListElementSelector: nil getIndexSelector: #contextStackIndex setIndexSelector: #toggleContextStackIndex: keystrokeActionSelector: #contextStackKey:from: autoDeselect: true lastKeystrokeTime: 0 lastKeystrokes: '' doubleClickSelector: nil handlesBasicKeys: nil potentialDropRow: nil listMorph: a LazyListMorph(1316) hScrollRangeCache: nil MouseButtonEvent>>sentTo: Receiver: [206@151 mouseUp 103652 nil] Arguments and temporary variables: <<error during printing> Receiver's instance variables: timeStamp: 103652 source: a HandMorph(3216) windowIndex: nil type: #mouseUp buttons: 0 position: 206@151 handler: nil wasHandled: true whichButton: 4 PluggableListMorph(Morph)>>handleEvent: Receiver: a PluggableListMorph(1072) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 18@31 corner: 608@201 owner: a SystemWindow(3468) submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) fullBounds: nil color: Color white extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... borderWidth: 1 borderColor: (Color r: 0.667 g: 0.667 b: 0.667) model: a Debugger slotName: nil open: false scrollBar: a ScrollBar(3011) scroller: a TransformMorph(3775) retractableScrollBar: false scrollBarOnLeft: false getMenuSelector: #contextStackMenu:shifted: getMenuTitleSelector: #messageListSelectorTitle hasFocus: true hScrollBar: a ScrollBar(2791) list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... getListSelector: #contextStackList getListSizeSelector: nil getListElementSelector: nil getIndexSelector: #contextStackIndex setIndexSelector: #toggleContextStackIndex: keystrokeActionSelector: #contextStackKey:from: autoDeselect: true lastKeystrokeTime: 0 lastKeystrokes: '' doubleClickSelector: nil handlesBasicKeys: nil potentialDropRow: nil listMorph: a LazyListMorph(1316) hScrollRangeCache: nil MorphicEventDispatcher>>dispatchDefault:with: Receiver: a MorphicEventDispatcher Arguments and temporary variables: <<error during printing> Receiver's instance variables: lastType: #mouseUp lastDispatch: #dispatchDefault:with: MorphicEventDispatcher>>dispatchEvent:with: Receiver: a MorphicEventDispatcher Arguments and temporary variables: <<error during printing> Receiver's instance variables: lastType: #mouseUp lastDispatch: #dispatchDefault:with: PluggableListMorph(Morph)>>processEvent:using: Receiver: a PluggableListMorph(1072) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 18@31 corner: 608@201 owner: a SystemWindow(3468) submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) fullBounds: nil color: Color white extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... borderWidth: 1 borderColor: (Color r: 0.667 g: 0.667 b: 0.667) model: a Debugger slotName: nil open: false scrollBar: a ScrollBar(3011) scroller: a TransformMorph(3775) retractableScrollBar: false scrollBarOnLeft: false getMenuSelector: #contextStackMenu:shifted: getMenuTitleSelector: #messageListSelectorTitle hasFocus: true hScrollBar: a ScrollBar(2791) list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... getListSelector: #contextStackList getListSizeSelector: nil getListElementSelector: nil getIndexSelector: #contextStackIndex setIndexSelector: #toggleContextStackIndex: keystrokeActionSelector: #contextStackKey:from: autoDeselect: true lastKeystrokeTime: 0 lastKeystrokes: '' doubleClickSelector: nil handlesBasicKeys: nil potentialDropRow: nil listMorph: a LazyListMorph(1316) hScrollRangeCache: nil PluggableListMorph(Morph)>>processEvent: Receiver: a PluggableListMorph(1072) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 18@31 corner: 608@201 owner: a SystemWindow(3468) submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) fullBounds: nil color: Color white extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... borderWidth: 1 borderColor: (Color r: 0.667 g: 0.667 b: 0.667) model: a Debugger slotName: nil open: false scrollBar: a ScrollBar(3011) scroller: a TransformMorph(3775) retractableScrollBar: false scrollBarOnLeft: false getMenuSelector: #contextStackMenu:shifted: getMenuTitleSelector: #messageListSelectorTitle hasFocus: true hScrollBar: a ScrollBar(2791) list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... getListSelector: #contextStackList getListSizeSelector: nil getListElementSelector: nil getIndexSelector: #contextStackIndex setIndexSelector: #toggleContextStackIndex: keystrokeActionSelector: #contextStackKey:from: autoDeselect: true lastKeystrokeTime: 0 lastKeystrokes: '' doubleClickSelector: nil handlesBasicKeys: nil potentialDropRow: nil listMorph: a LazyListMorph(1316) hScrollRangeCache: nil PluggableListMorph>>handleFocusEvent: Receiver: a PluggableListMorph(1072) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 18@31 corner: 608@201 owner: a SystemWindow(3468) submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) fullBounds: nil color: Color white extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... borderWidth: 1 borderColor: (Color r: 0.667 g: 0.667 b: 0.667) model: a Debugger slotName: nil open: false scrollBar: a ScrollBar(3011) scroller: a TransformMorph(3775) retractableScrollBar: false scrollBarOnLeft: false getMenuSelector: #contextStackMenu:shifted: getMenuTitleSelector: #messageListSelectorTitle hasFocus: true hScrollBar: a ScrollBar(2791) list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... getListSelector: #contextStackList getListSizeSelector: nil getListElementSelector: nil getIndexSelector: #contextStackIndex setIndexSelector: #toggleContextStackIndex: keystrokeActionSelector: #contextStackKey:from: autoDeselect: true lastKeystrokeTime: 0 lastKeystrokes: '' doubleClickSelector: nil handlesBasicKeys: nil potentialDropRow: nil listMorph: a LazyListMorph(1316) hScrollRangeCache: nil [] in HandMorph>>sendFocusEvent:to:clear: Receiver: a HandMorph(3216) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 352@84 corner: 368@100 owner: a PasteUpMorph(1622) [world] submorphs: #() fullBounds: 352@84 corner: 368@100 color: Color blue extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: a PluggableButtonMorph(1282) eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [352@84 mouseUp 109252 nil] targetOffset: 40@23 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: true temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 109252 352 84 0 0 0 1) lastKeyScanCode: 2 combinedChar: nil [] in PasteUpMorph>>becomeActiveDuring: Receiver: a PasteUpMorph(1622) [world] Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 0@0 corner: 1102@896 owner: nil submorphs: an Array(a TaskbarMorph(3095) a SystemProgressMorph(3746) a PreDebug...etc... fullBounds: nil color: (Color r: 0.97 g: 0.98 b: 1.0) extension: a MorphExtension (2543) [eventHandler = an EventHandler] [other: (...etc... borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0) presenter: a Presenter (1246) model: a MorphicModel(1926) cursor: 1 padding: 3 backgroundMorph: nil isPartsBin: nil autoLineLayout: false indicateCursor: nil resizeToFit: nil wantsMouseOverHalos: nil worldState: a WorldState griddingOn: nil BlockClosure>>on:do: Receiver: [closure] in PasteUpMorph>>becomeActiveDuring: Arguments and temporary variables: <<error during printing> Receiver's instance variables: outerContext: PasteUpMorph>>becomeActiveDuring: startpc: 111 numArgs: 0 PasteUpMorph>>becomeActiveDuring: Receiver: a PasteUpMorph(1622) [world] Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 0@0 corner: 1102@896 owner: nil submorphs: an Array(a TaskbarMorph(3095) a SystemProgressMorph(3746) a PreDebug...etc... fullBounds: nil color: (Color r: 0.97 g: 0.98 b: 1.0) extension: a MorphExtension (2543) [eventHandler = an EventHandler] [other: (...etc... borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0) presenter: a Presenter (1246) model: a MorphicModel(1926) cursor: 1 padding: 3 backgroundMorph: nil isPartsBin: nil autoLineLayout: false indicateCursor: nil resizeToFit: nil wantsMouseOverHalos: nil worldState: a WorldState griddingOn: nil HandMorph>>sendFocusEvent:to:clear: Receiver: a HandMorph(3216) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 352@84 corner: 368@100 owner: a PasteUpMorph(1622) [world] submorphs: #() fullBounds: 352@84 corner: 368@100 color: Color blue extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: a PluggableButtonMorph(1282) eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [352@84 mouseUp 109252 nil] targetOffset: 40@23 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: true temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 109252 352 84 0 0 0 1) lastKeyScanCode: 2 combinedChar: nil HandMorph>>sendEvent:focus:clear: Receiver: a HandMorph(3216) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 352@84 corner: 368@100 owner: a PasteUpMorph(1622) [world] submorphs: #() fullBounds: 352@84 corner: 368@100 color: Color blue extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: a PluggableButtonMorph(1282) eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [352@84 mouseUp 109252 nil] targetOffset: 40@23 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: true temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 109252 352 84 0 0 0 1) lastKeyScanCode: 2 combinedChar: nil HandMorph>>sendMouseEvent: Receiver: a HandMorph(3216) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 352@84 corner: 368@100 owner: a PasteUpMorph(1622) [world] submorphs: #() fullBounds: 352@84 corner: 368@100 color: Color blue extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: a PluggableButtonMorph(1282) eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [352@84 mouseUp 109252 nil] targetOffset: 40@23 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: true temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 109252 352 84 0 0 0 1) lastKeyScanCode: 2 combinedChar: nil HandMorph>>handleEvent: Receiver: a HandMorph(3216) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 352@84 corner: 368@100 owner: a PasteUpMorph(1622) [world] submorphs: #() fullBounds: 352@84 corner: 368@100 color: Color blue extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: a PluggableButtonMorph(1282) eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [352@84 mouseUp 109252 nil] targetOffset: 40@23 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: true temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 109252 352 84 0 0 0 1) lastKeyScanCode: 2 combinedChar: nil HandMorph>>processEvents Receiver: a HandMorph(3216) Arguments and temporary variables: <<error during printing> Receiver's instance variables: bounds: 352@84 corner: 368@100 owner: a PasteUpMorph(1622) [world] submorphs: #() fullBounds: 352@84 corner: 368@100 color: Color blue extension: a MorphExtension (539) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: a PluggableButtonMorph(1282) eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [352@84 mouseUp 109252 nil] targetOffset: 40@23 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: true temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 109252 352 84 0 0 0 1) lastKeyScanCode: 2 combinedChar: nil --- The full stack --- Array(Object)>>error: Array(Object)>>errorSubscriptBounds: Array(Object)>>at: Decompiler>>pushTemporaryVariable: Decompiler(InstructionStream)>>interpretNextInstructionFor: Decompiler>>interpretNextInstructionFor: Decompiler>>statementsTo: Decompiler>>blockTo: Decompiler>>decompile:in:method:using: Decompiler>>decompile:in:method: CompiledMethod>>getSourceFor:in: CompiledMethod>>methodNode [] in DebuggerMethodMap class>>forMethod: WeakIdentityKeyDictionary(Dictionary)>>at:ifAbsent: DebuggerMethodMap class>>forMethod: CompiledMethod>>debuggerMap MethodContext(InstructionStream)>>debuggerMap Debugger>>selectedMessage Debugger>>contextStackIndex:oldContextWas: Debugger>>toggleContextStackIndex: PluggableListMorph>>changeModelSelection: PluggableListMorph>>mouseUp: PluggableListMorph(Morph)>>handleMouseUp: MouseButtonEvent>>sentTo: PluggableListMorph(Morph)>>handleEvent: MorphicEventDispatcher>>dispatchDefault:with: MorphicEventDispatcher>>dispatchEvent:with: PluggableListMorph(Morph)>>processEvent:using: PluggableListMorph(Morph)>>processEvent: PluggableListMorph>>handleFocusEvent: [] in HandMorph>>sendFocusEvent:to:clear: [] in PasteUpMorph>>becomeActiveDuring: BlockClosure>>on:do: PasteUpMorph>>becomeActiveDuring: HandMorph>>sendFocusEvent:to:clear: HandMorph>>sendEvent:focus:clear: HandMorph>>sendMouseEvent: HandMorph>>handleEvent: HandMorph>>processEvents - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [] in WorldState>>doOneCycleNowFor: Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in Project class>>spawnNewProcess [] in BlockClosure>>newProcess ------------------------------------------------------------ -- =========================================================================== John M. McIntosh <[hidden email]> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Hi John,
How do you have these messages ? When I try to load the 64bits image, I have a white screen and it is really difficult to fix something... Is there a parameter to add when loading the vm ? I added the part of code that you send, but I have the same thing. I modify also the code of SystemTracer. Cheers, Jannik On Dec 6, 2009, at 03:17 , John M McIntosh wrote: > >> >> hacking a bit more gets you to >> <PastedGraphic-1.tiff> > > In a few spare moments as I await the Arctic front to bury us in snow... > > I consider the > return: error > > has to be related to the move from BlockContext to BlockClosure > so in > object:allFieldsWithIndex:collect: > > I added > object class = BlockClosure ifTrue: > [(object instVarAt: 3) ifNotNil: > ["May need to adjust PC and startPC if changing wordSize..." > results at: 2 put: (block value: (object instVarAt: 2)+(self pcDeltaForMethod: object method) value: 2)]]. > > mmm try that get this more interesting error > > > THERE_BE_DRAGONS_HERE > Unwind error during termination > 5 December 2009 6:13:31 pm > > VM: Mac OS - intel - 1062 - Squeak3.8.1 of '28 Aug 2006' [latest update: #6747] 9.0 > Image: PharoCore1.0rc1 [Latest update: #10496] > > SecurityManager state: > Restricted: false > FileAccess: true > SocketAccess: true > Working Dir /Volumes/px2/business/SqueakiPhone/SqueakObjCBasedForOSXAndIPhone/SqueakNoOGLIPhoneOSX/testingImages/64bittracingchangesets > Trusted Dir /foobar/tooBar/forSqueak/bogus/ > Untrusted Dir /foobar/tooBar/forSqueak/bogus/ > > Array(Object)>>error: > Receiver: #() > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > #() > > Array(Object)>>errorSubscriptBounds: > Receiver: #() > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > #() > > Array(Object)>>at: > Receiver: #() > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > #() > > Decompiler>>pushTemporaryVariable: > Receiver: a Decompiler > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) > pc: 29 > constructor: {a DecompilerConstructor} > method: a CompiledMethod(1253: InstructionStream>>debuggerMap) > instVars: an Array({sender} {pc}) > tempVars: #() > constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) > stack: an OrderedCollection({pc} {sender > debuggerMap (sender blockCopy: sender...etc... > statements: an OrderedCollection() > lastPc: 28 > exit: nil > caseExits: an OrderedCollection() > lastJumpPc: nil > lastReturnPc: nil > limit: 45 > hasValue: nil > blockStackBase: 0 > numLocalTemps: 0 > blockStartsToTempVars: nil > tempVarCount: 0 > > Decompiler(InstructionStream)>>interpretNextInstructionFor: > Receiver: a Decompiler > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) > pc: 29 > constructor: {a DecompilerConstructor} > method: a CompiledMethod(1253: InstructionStream>>debuggerMap) > instVars: an Array({sender} {pc}) > tempVars: #() > constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) > stack: an OrderedCollection({pc} {sender > debuggerMap (sender blockCopy: sender...etc... > statements: an OrderedCollection() > lastPc: 28 > exit: nil > caseExits: an OrderedCollection() > lastJumpPc: nil > lastReturnPc: nil > limit: 45 > hasValue: nil > blockStackBase: 0 > numLocalTemps: 0 > blockStartsToTempVars: nil > tempVarCount: 0 > > Decompiler>>interpretNextInstructionFor: > Receiver: a Decompiler > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) > pc: 29 > constructor: {a DecompilerConstructor} > method: a CompiledMethod(1253: InstructionStream>>debuggerMap) > instVars: an Array({sender} {pc}) > tempVars: #() > constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) > stack: an OrderedCollection({pc} {sender > debuggerMap (sender blockCopy: sender...etc... > statements: an OrderedCollection() > lastPc: 28 > exit: nil > caseExits: an OrderedCollection() > lastJumpPc: nil > lastReturnPc: nil > limit: 45 > hasValue: nil > blockStackBase: 0 > numLocalTemps: 0 > blockStartsToTempVars: nil > tempVarCount: 0 > > Decompiler>>statementsTo: > Receiver: a Decompiler > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) > pc: 29 > constructor: {a DecompilerConstructor} > method: a CompiledMethod(1253: InstructionStream>>debuggerMap) > instVars: an Array({sender} {pc}) > tempVars: #() > constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) > stack: an OrderedCollection({pc} {sender > debuggerMap (sender blockCopy: sender...etc... > statements: an OrderedCollection() > lastPc: 28 > exit: nil > caseExits: an OrderedCollection() > lastJumpPc: nil > lastReturnPc: nil > limit: 45 > hasValue: nil > blockStackBase: 0 > numLocalTemps: 0 > blockStartsToTempVars: nil > tempVarCount: 0 > > Decompiler>>blockTo: > Receiver: a Decompiler > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) > pc: 29 > constructor: {a DecompilerConstructor} > method: a CompiledMethod(1253: InstructionStream>>debuggerMap) > instVars: an Array({sender} {pc}) > tempVars: #() > constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) > stack: an OrderedCollection({pc} {sender > debuggerMap (sender blockCopy: sender...etc... > statements: an OrderedCollection() > lastPc: 28 > exit: nil > caseExits: an OrderedCollection() > lastJumpPc: nil > lastReturnPc: nil > limit: 45 > hasValue: nil > blockStackBase: 0 > numLocalTemps: 0 > blockStartsToTempVars: nil > tempVarCount: 0 > > Decompiler>>decompile:in:method:using: > Receiver: a Decompiler > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) > pc: 29 > constructor: {a DecompilerConstructor} > method: a CompiledMethod(1253: InstructionStream>>debuggerMap) > instVars: an Array({sender} {pc}) > tempVars: #() > constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) > stack: an OrderedCollection({pc} {sender > debuggerMap (sender blockCopy: sender...etc... > statements: an OrderedCollection() > lastPc: 28 > exit: nil > caseExits: an OrderedCollection() > lastJumpPc: nil > lastReturnPc: nil > limit: 45 > hasValue: nil > blockStackBase: 0 > numLocalTemps: 0 > blockStartsToTempVars: nil > tempVarCount: 0 > > Decompiler>>decompile:in:method: > Receiver: a Decompiler > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > sender: a CompiledMethod(1253: InstructionStream>>debuggerMap) > pc: 29 > constructor: {a DecompilerConstructor} > method: a CompiledMethod(1253: InstructionStream>>debuggerMap) > instVars: an Array({sender} {pc}) > tempVars: #() > constTable: an Array({self} {true} {false} {nil} {-1} {0} {1} {2}) > stack: an OrderedCollection({pc} {sender > debuggerMap (sender blockCopy: sender...etc... > statements: an OrderedCollection() > lastPc: 28 > exit: nil > caseExits: an OrderedCollection() > lastJumpPc: nil > lastReturnPc: nil > limit: 45 > hasValue: nil > blockStackBase: 0 > numLocalTemps: 0 > blockStartsToTempVars: nil > tempVarCount: 0 > > CompiledMethod>>getSourceFor:in: > Receiver: a CompiledMethod(1253: InstructionStream>>debuggerMap) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > a CompiledMethod(1253: InstructionStream>>debuggerMap) > > CompiledMethod>>methodNode > Receiver: a CompiledMethod(1253: InstructionStream>>debuggerMap) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > a CompiledMethod(1253: InstructionStream>>debuggerMap) > > [] in DebuggerMethodMap class>>forMethod: > Receiver: DebuggerMethodMap > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > superclass: Object > methodDict: a MethodDictionary(#abstractSourceMap->a CompiledMethod(3330: Debug...etc... > format: 140 > instanceVariables: #('timestamp' 'methodReference' 'methodNode' 'abstractSource...etc... > organization: ('accessing' markRecentlyUsed method namedTempAt:in: namedTempAt:...etc... > subclasses: {DebuggerMethodMapForBlueBookMethods. DebuggerMethodMapForClosureCo...etc... > name: #DebuggerMethodMap > classPool: a Dictionary(#MapCache->a WeakIdentityKeyDictionary(a CompiledMethod...etc... > sharedPools: nil > environment: Smalltalk > category: #'Tools-Debugger' > traitComposition: nil > localSelectors: nil > > WeakIdentityKeyDictionary(Dictionary)>>at:ifAbsent: > Receiver: a WeakIdentityKeyDictionary(a CompiledMethod(1410: HandMorph>>handleEvent:)->a DebuggerMet...etc... > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > tally: 16 > array: an Array(a CompiledMethod(3440: Morph>>processEvent:)->a DebuggerMethodM...etc... > > DebuggerMethodMap class>>forMethod: > Receiver: DebuggerMethodMap > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > superclass: Object > methodDict: a MethodDictionary(#abstractSourceMap->a CompiledMethod(3330: Debug...etc... > format: 140 > instanceVariables: #('timestamp' 'methodReference' 'methodNode' 'abstractSource...etc... > organization: ('accessing' markRecentlyUsed method namedTempAt:in: namedTempAt:...etc... > subclasses: {DebuggerMethodMapForBlueBookMethods. DebuggerMethodMapForClosureCo...etc... > name: #DebuggerMethodMap > classPool: a Dictionary(#MapCache->a WeakIdentityKeyDictionary(a CompiledMethod...etc... > sharedPools: nil > environment: Smalltalk > category: #'Tools-Debugger' > traitComposition: nil > localSelectors: nil > > CompiledMethod>>debuggerMap > Receiver: a CompiledMethod(1253: InstructionStream>>debuggerMap) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > a CompiledMethod(1253: InstructionStream>>debuggerMap) > > MethodContext(InstructionStream)>>debuggerMap > Receiver: MethodContext(InstructionStream)>>debuggerMap > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > sender: Debugger>>selectedMessage > pc: 44 > stackp: 0 > method: a CompiledMethod(1253: InstructionStream>>debuggerMap) > closureOrNil: nil > receiver: CompiledMethod>>methodNode > > Debugger>>selectedMessage > Receiver: a Debugger > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > dependents: a DependentsArray(a SystemWindow(3468) a PluggableListMorph(1072) a...etc... > contents: nil > currentCompiledMethod: nil > contentsSymbol: #source > interruptedProcess: a Process in Debugger class>>openOn:context:label:contents:...etc... > interruptedController: nil > contextStack: an OrderedCollection(CompiledMethod(Object)>>error: CompiledMetho...etc... > contextStackTop: CompiledMethod(Object)>>error: > contextStackIndex: 17 > contextStackList: an OrderedCollection('CompiledMethod(Object)>>error:' 'Compil...etc... > receiverInspector: an Inspector > contextVariablesInspector: a ContextVariablesInspector > externalInterrupt: false > proceedValue: nil > selectingPC: true > debuggerMap: nil > savedCursor: ((CursorWithMask > extent: 16@16 > depth: 1 > fromArray: #( > 2r0 > 2...etc... > isolationHead: nil > failedProject: nil > errorWasInUIProcess: true > labelString: nil > > Debugger>>contextStackIndex:oldContextWas: > Receiver: a Debugger > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > dependents: a DependentsArray(a SystemWindow(3468) a PluggableListMorph(1072) a...etc... > contents: nil > currentCompiledMethod: nil > contentsSymbol: #source > interruptedProcess: a Process in Debugger class>>openOn:context:label:contents:...etc... > interruptedController: nil > contextStack: an OrderedCollection(CompiledMethod(Object)>>error: CompiledMetho...etc... > contextStackTop: CompiledMethod(Object)>>error: > contextStackIndex: 17 > contextStackList: an OrderedCollection('CompiledMethod(Object)>>error:' 'Compil...etc... > receiverInspector: an Inspector > contextVariablesInspector: a ContextVariablesInspector > externalInterrupt: false > proceedValue: nil > selectingPC: true > debuggerMap: nil > savedCursor: ((CursorWithMask > extent: 16@16 > depth: 1 > fromArray: #( > 2r0 > 2...etc... > isolationHead: nil > failedProject: nil > errorWasInUIProcess: true > labelString: nil > > Debugger>>toggleContextStackIndex: > Receiver: a Debugger > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > dependents: a DependentsArray(a SystemWindow(3468) a PluggableListMorph(1072) a...etc... > contents: nil > currentCompiledMethod: nil > contentsSymbol: #source > interruptedProcess: a Process in Debugger class>>openOn:context:label:contents:...etc... > interruptedController: nil > contextStack: an OrderedCollection(CompiledMethod(Object)>>error: CompiledMetho...etc... > contextStackTop: CompiledMethod(Object)>>error: > contextStackIndex: 17 > contextStackList: an OrderedCollection('CompiledMethod(Object)>>error:' 'Compil...etc... > receiverInspector: an Inspector > contextVariablesInspector: a ContextVariablesInspector > externalInterrupt: false > proceedValue: nil > selectingPC: true > debuggerMap: nil > savedCursor: ((CursorWithMask > extent: 16@16 > depth: 1 > fromArray: #( > 2r0 > 2...etc... > isolationHead: nil > failedProject: nil > errorWasInUIProcess: true > labelString: nil > > PluggableListMorph>>changeModelSelection: > Receiver: a PluggableListMorph(1072) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 18@31 corner: 608@201 > owner: a SystemWindow(3468) > submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) > fullBounds: nil > color: Color white > extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... > borderWidth: 1 > borderColor: (Color r: 0.667 g: 0.667 b: 0.667) > model: a Debugger > slotName: nil > open: false > scrollBar: a ScrollBar(3011) > scroller: a TransformMorph(3775) > retractableScrollBar: false > scrollBarOnLeft: false > getMenuSelector: #contextStackMenu:shifted: > getMenuTitleSelector: #messageListSelectorTitle > hasFocus: true > hScrollBar: a ScrollBar(2791) > list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... > getListSelector: #contextStackList > getListSizeSelector: nil > getListElementSelector: nil > getIndexSelector: #contextStackIndex > setIndexSelector: #toggleContextStackIndex: > keystrokeActionSelector: #contextStackKey:from: > autoDeselect: true > lastKeystrokeTime: 0 > lastKeystrokes: '' > doubleClickSelector: nil > handlesBasicKeys: nil > potentialDropRow: nil > listMorph: a LazyListMorph(1316) > hScrollRangeCache: nil > > PluggableListMorph>>mouseUp: > Receiver: a PluggableListMorph(1072) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 18@31 corner: 608@201 > owner: a SystemWindow(3468) > submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) > fullBounds: nil > color: Color white > extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... > borderWidth: 1 > borderColor: (Color r: 0.667 g: 0.667 b: 0.667) > model: a Debugger > slotName: nil > open: false > scrollBar: a ScrollBar(3011) > scroller: a TransformMorph(3775) > retractableScrollBar: false > scrollBarOnLeft: false > getMenuSelector: #contextStackMenu:shifted: > getMenuTitleSelector: #messageListSelectorTitle > hasFocus: true > hScrollBar: a ScrollBar(2791) > list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... > getListSelector: #contextStackList > getListSizeSelector: nil > getListElementSelector: nil > getIndexSelector: #contextStackIndex > setIndexSelector: #toggleContextStackIndex: > keystrokeActionSelector: #contextStackKey:from: > autoDeselect: true > lastKeystrokeTime: 0 > lastKeystrokes: '' > doubleClickSelector: nil > handlesBasicKeys: nil > potentialDropRow: nil > listMorph: a LazyListMorph(1316) > hScrollRangeCache: nil > > PluggableListMorph(Morph)>>handleMouseUp: > Receiver: a PluggableListMorph(1072) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 18@31 corner: 608@201 > owner: a SystemWindow(3468) > submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) > fullBounds: nil > color: Color white > extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... > borderWidth: 1 > borderColor: (Color r: 0.667 g: 0.667 b: 0.667) > model: a Debugger > slotName: nil > open: false > scrollBar: a ScrollBar(3011) > scroller: a TransformMorph(3775) > retractableScrollBar: false > scrollBarOnLeft: false > getMenuSelector: #contextStackMenu:shifted: > getMenuTitleSelector: #messageListSelectorTitle > hasFocus: true > hScrollBar: a ScrollBar(2791) > list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... > getListSelector: #contextStackList > getListSizeSelector: nil > getListElementSelector: nil > getIndexSelector: #contextStackIndex > setIndexSelector: #toggleContextStackIndex: > keystrokeActionSelector: #contextStackKey:from: > autoDeselect: true > lastKeystrokeTime: 0 > lastKeystrokes: '' > doubleClickSelector: nil > handlesBasicKeys: nil > potentialDropRow: nil > listMorph: a LazyListMorph(1316) > hScrollRangeCache: nil > > MouseButtonEvent>>sentTo: > Receiver: [206@151 mouseUp 103652 nil] > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > timeStamp: 103652 > source: a HandMorph(3216) > windowIndex: nil > type: #mouseUp > buttons: 0 > position: 206@151 > handler: nil > wasHandled: true > whichButton: 4 > > PluggableListMorph(Morph)>>handleEvent: > Receiver: a PluggableListMorph(1072) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 18@31 corner: 608@201 > owner: a SystemWindow(3468) > submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) > fullBounds: nil > color: Color white > extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... > borderWidth: 1 > borderColor: (Color r: 0.667 g: 0.667 b: 0.667) > model: a Debugger > slotName: nil > open: false > scrollBar: a ScrollBar(3011) > scroller: a TransformMorph(3775) > retractableScrollBar: false > scrollBarOnLeft: false > getMenuSelector: #contextStackMenu:shifted: > getMenuTitleSelector: #messageListSelectorTitle > hasFocus: true > hScrollBar: a ScrollBar(2791) > list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... > getListSelector: #contextStackList > getListSizeSelector: nil > getListElementSelector: nil > getIndexSelector: #contextStackIndex > setIndexSelector: #toggleContextStackIndex: > keystrokeActionSelector: #contextStackKey:from: > autoDeselect: true > lastKeystrokeTime: 0 > lastKeystrokes: '' > doubleClickSelector: nil > handlesBasicKeys: nil > potentialDropRow: nil > listMorph: a LazyListMorph(1316) > hScrollRangeCache: nil > > MorphicEventDispatcher>>dispatchDefault:with: > Receiver: a MorphicEventDispatcher > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > lastType: #mouseUp > lastDispatch: #dispatchDefault:with: > > MorphicEventDispatcher>>dispatchEvent:with: > Receiver: a MorphicEventDispatcher > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > lastType: #mouseUp > lastDispatch: #dispatchDefault:with: > > PluggableListMorph(Morph)>>processEvent:using: > Receiver: a PluggableListMorph(1072) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 18@31 corner: 608@201 > owner: a SystemWindow(3468) > submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) > fullBounds: nil > color: Color white > extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... > borderWidth: 1 > borderColor: (Color r: 0.667 g: 0.667 b: 0.667) > model: a Debugger > slotName: nil > open: false > scrollBar: a ScrollBar(3011) > scroller: a TransformMorph(3775) > retractableScrollBar: false > scrollBarOnLeft: false > getMenuSelector: #contextStackMenu:shifted: > getMenuTitleSelector: #messageListSelectorTitle > hasFocus: true > hScrollBar: a ScrollBar(2791) > list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... > getListSelector: #contextStackList > getListSizeSelector: nil > getListElementSelector: nil > getIndexSelector: #contextStackIndex > setIndexSelector: #toggleContextStackIndex: > keystrokeActionSelector: #contextStackKey:from: > autoDeselect: true > lastKeystrokeTime: 0 > lastKeystrokes: '' > doubleClickSelector: nil > handlesBasicKeys: nil > potentialDropRow: nil > listMorph: a LazyListMorph(1316) > hScrollRangeCache: nil > > PluggableListMorph(Morph)>>processEvent: > Receiver: a PluggableListMorph(1072) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 18@31 corner: 608@201 > owner: a SystemWindow(3468) > submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) > fullBounds: nil > color: Color white > extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... > borderWidth: 1 > borderColor: (Color r: 0.667 g: 0.667 b: 0.667) > model: a Debugger > slotName: nil > open: false > scrollBar: a ScrollBar(3011) > scroller: a TransformMorph(3775) > retractableScrollBar: false > scrollBarOnLeft: false > getMenuSelector: #contextStackMenu:shifted: > getMenuTitleSelector: #messageListSelectorTitle > hasFocus: true > hScrollBar: a ScrollBar(2791) > list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... > getListSelector: #contextStackList > getListSizeSelector: nil > getListElementSelector: nil > getIndexSelector: #contextStackIndex > setIndexSelector: #toggleContextStackIndex: > keystrokeActionSelector: #contextStackKey:from: > autoDeselect: true > lastKeystrokeTime: 0 > lastKeystrokes: '' > doubleClickSelector: nil > handlesBasicKeys: nil > potentialDropRow: nil > listMorph: a LazyListMorph(1316) > hScrollRangeCache: nil > > PluggableListMorph>>handleFocusEvent: > Receiver: a PluggableListMorph(1072) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 18@31 corner: 608@201 > owner: a SystemWindow(3468) > submorphs: an Array(a ScrollBar(3011) a TransformMorph(3775)) > fullBounds: nil > color: Color white > extension: a MorphExtension (973) [locked] [other: (layoutFrame -> a LayoutFr...etc... > borderWidth: 1 > borderColor: (Color r: 0.667 g: 0.667 b: 0.667) > model: a Debugger > slotName: nil > open: false > scrollBar: a ScrollBar(3011) > scroller: a TransformMorph(3775) > retractableScrollBar: false > scrollBarOnLeft: false > getMenuSelector: #contextStackMenu:shifted: > getMenuTitleSelector: #messageListSelectorTitle > hasFocus: true > hScrollBar: a ScrollBar(2791) > list: an OrderedCollection('CompiledMethod(Object)>>error:' 'CompiledMethod(Obj...etc... > getListSelector: #contextStackList > getListSizeSelector: nil > getListElementSelector: nil > getIndexSelector: #contextStackIndex > setIndexSelector: #toggleContextStackIndex: > keystrokeActionSelector: #contextStackKey:from: > autoDeselect: true > lastKeystrokeTime: 0 > lastKeystrokes: '' > doubleClickSelector: nil > handlesBasicKeys: nil > potentialDropRow: nil > listMorph: a LazyListMorph(1316) > hScrollRangeCache: nil > > [] in HandMorph>>sendFocusEvent:to:clear: > Receiver: a HandMorph(3216) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 352@84 corner: 368@100 > owner: a PasteUpMorph(1622) [world] > submorphs: #() > fullBounds: 352@84 corner: 368@100 > color: Color blue > extension: a MorphExtension (539) [eventHandler = an EventHandler] > mouseFocus: nil > keyboardFocus: a PluggableButtonMorph(1282) > eventListeners: nil > mouseListeners: nil > keyboardListeners: nil > mouseClickState: nil > mouseOverHandler: a MouseOverHandler > lastMouseEvent: [352@84 mouseUp 109252 nil] > targetOffset: 40@23 > damageRecorder: a DamageRecorder > cacheCanvas: nil > cachedCanvasHasHoles: true > temporaryCursor: nil > temporaryCursorOffset: nil > hardwareCursor: nil > hasChanged: true > savedPatch: nil > userInitials: '' > lastEventBuffer: #(1 109252 352 84 0 0 0 1) > lastKeyScanCode: 2 > combinedChar: nil > > [] in PasteUpMorph>>becomeActiveDuring: > Receiver: a PasteUpMorph(1622) [world] > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 0@0 corner: 1102@896 > owner: nil > submorphs: an Array(a TaskbarMorph(3095) a SystemProgressMorph(3746) a PreDebug...etc... > fullBounds: nil > color: (Color r: 0.97 g: 0.98 b: 1.0) > extension: a MorphExtension (2543) [eventHandler = an EventHandler] [other: (...etc... > borderWidth: 0 > borderColor: (Color r: 0.03 g: 0.02 b: 0.0) > presenter: a Presenter (1246) > model: a MorphicModel(1926) > cursor: 1 > padding: 3 > backgroundMorph: nil > isPartsBin: nil > autoLineLayout: false > indicateCursor: nil > resizeToFit: nil > wantsMouseOverHalos: nil > worldState: a WorldState > griddingOn: nil > > BlockClosure>>on:do: > Receiver: [closure] in PasteUpMorph>>becomeActiveDuring: > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > outerContext: PasteUpMorph>>becomeActiveDuring: > startpc: 111 > numArgs: 0 > > PasteUpMorph>>becomeActiveDuring: > Receiver: a PasteUpMorph(1622) [world] > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 0@0 corner: 1102@896 > owner: nil > submorphs: an Array(a TaskbarMorph(3095) a SystemProgressMorph(3746) a PreDebug...etc... > fullBounds: nil > color: (Color r: 0.97 g: 0.98 b: 1.0) > extension: a MorphExtension (2543) [eventHandler = an EventHandler] [other: (...etc... > borderWidth: 0 > borderColor: (Color r: 0.03 g: 0.02 b: 0.0) > presenter: a Presenter (1246) > model: a MorphicModel(1926) > cursor: 1 > padding: 3 > backgroundMorph: nil > isPartsBin: nil > autoLineLayout: false > indicateCursor: nil > resizeToFit: nil > wantsMouseOverHalos: nil > worldState: a WorldState > griddingOn: nil > > HandMorph>>sendFocusEvent:to:clear: > Receiver: a HandMorph(3216) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 352@84 corner: 368@100 > owner: a PasteUpMorph(1622) [world] > submorphs: #() > fullBounds: 352@84 corner: 368@100 > color: Color blue > extension: a MorphExtension (539) [eventHandler = an EventHandler] > mouseFocus: nil > keyboardFocus: a PluggableButtonMorph(1282) > eventListeners: nil > mouseListeners: nil > keyboardListeners: nil > mouseClickState: nil > mouseOverHandler: a MouseOverHandler > lastMouseEvent: [352@84 mouseUp 109252 nil] > targetOffset: 40@23 > damageRecorder: a DamageRecorder > cacheCanvas: nil > cachedCanvasHasHoles: true > temporaryCursor: nil > temporaryCursorOffset: nil > hardwareCursor: nil > hasChanged: true > savedPatch: nil > userInitials: '' > lastEventBuffer: #(1 109252 352 84 0 0 0 1) > lastKeyScanCode: 2 > combinedChar: nil > > HandMorph>>sendEvent:focus:clear: > Receiver: a HandMorph(3216) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 352@84 corner: 368@100 > owner: a PasteUpMorph(1622) [world] > submorphs: #() > fullBounds: 352@84 corner: 368@100 > color: Color blue > extension: a MorphExtension (539) [eventHandler = an EventHandler] > mouseFocus: nil > keyboardFocus: a PluggableButtonMorph(1282) > eventListeners: nil > mouseListeners: nil > keyboardListeners: nil > mouseClickState: nil > mouseOverHandler: a MouseOverHandler > lastMouseEvent: [352@84 mouseUp 109252 nil] > targetOffset: 40@23 > damageRecorder: a DamageRecorder > cacheCanvas: nil > cachedCanvasHasHoles: true > temporaryCursor: nil > temporaryCursorOffset: nil > hardwareCursor: nil > hasChanged: true > savedPatch: nil > userInitials: '' > lastEventBuffer: #(1 109252 352 84 0 0 0 1) > lastKeyScanCode: 2 > combinedChar: nil > > HandMorph>>sendMouseEvent: > Receiver: a HandMorph(3216) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 352@84 corner: 368@100 > owner: a PasteUpMorph(1622) [world] > submorphs: #() > fullBounds: 352@84 corner: 368@100 > color: Color blue > extension: a MorphExtension (539) [eventHandler = an EventHandler] > mouseFocus: nil > keyboardFocus: a PluggableButtonMorph(1282) > eventListeners: nil > mouseListeners: nil > keyboardListeners: nil > mouseClickState: nil > mouseOverHandler: a MouseOverHandler > lastMouseEvent: [352@84 mouseUp 109252 nil] > targetOffset: 40@23 > damageRecorder: a DamageRecorder > cacheCanvas: nil > cachedCanvasHasHoles: true > temporaryCursor: nil > temporaryCursorOffset: nil > hardwareCursor: nil > hasChanged: true > savedPatch: nil > userInitials: '' > lastEventBuffer: #(1 109252 352 84 0 0 0 1) > lastKeyScanCode: 2 > combinedChar: nil > > HandMorph>>handleEvent: > Receiver: a HandMorph(3216) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 352@84 corner: 368@100 > owner: a PasteUpMorph(1622) [world] > submorphs: #() > fullBounds: 352@84 corner: 368@100 > color: Color blue > extension: a MorphExtension (539) [eventHandler = an EventHandler] > mouseFocus: nil > keyboardFocus: a PluggableButtonMorph(1282) > eventListeners: nil > mouseListeners: nil > keyboardListeners: nil > mouseClickState: nil > mouseOverHandler: a MouseOverHandler > lastMouseEvent: [352@84 mouseUp 109252 nil] > targetOffset: 40@23 > damageRecorder: a DamageRecorder > cacheCanvas: nil > cachedCanvasHasHoles: true > temporaryCursor: nil > temporaryCursorOffset: nil > hardwareCursor: nil > hasChanged: true > savedPatch: nil > userInitials: '' > lastEventBuffer: #(1 109252 352 84 0 0 0 1) > lastKeyScanCode: 2 > combinedChar: nil > > HandMorph>>processEvents > Receiver: a HandMorph(3216) > Arguments and temporary variables: > <<error during printing> > Receiver's instance variables: > bounds: 352@84 corner: 368@100 > owner: a PasteUpMorph(1622) [world] > submorphs: #() > fullBounds: 352@84 corner: 368@100 > color: Color blue > extension: a MorphExtension (539) [eventHandler = an EventHandler] > mouseFocus: nil > keyboardFocus: a PluggableButtonMorph(1282) > eventListeners: nil > mouseListeners: nil > keyboardListeners: nil > mouseClickState: nil > mouseOverHandler: a MouseOverHandler > lastMouseEvent: [352@84 mouseUp 109252 nil] > targetOffset: 40@23 > damageRecorder: a DamageRecorder > cacheCanvas: nil > cachedCanvasHasHoles: true > temporaryCursor: nil > temporaryCursorOffset: nil > hardwareCursor: nil > hasChanged: true > savedPatch: nil > userInitials: '' > lastEventBuffer: #(1 109252 352 84 0 0 0 1) > lastKeyScanCode: 2 > combinedChar: nil > > > --- The full stack --- > Array(Object)>>error: > Array(Object)>>errorSubscriptBounds: > Array(Object)>>at: > Decompiler>>pushTemporaryVariable: > Decompiler(InstructionStream)>>interpretNextInstructionFor: > Decompiler>>interpretNextInstructionFor: > Decompiler>>statementsTo: > Decompiler>>blockTo: > Decompiler>>decompile:in:method:using: > Decompiler>>decompile:in:method: > CompiledMethod>>getSourceFor:in: > CompiledMethod>>methodNode > [] in DebuggerMethodMap class>>forMethod: > WeakIdentityKeyDictionary(Dictionary)>>at:ifAbsent: > DebuggerMethodMap class>>forMethod: > CompiledMethod>>debuggerMap > MethodContext(InstructionStream)>>debuggerMap > Debugger>>selectedMessage > Debugger>>contextStackIndex:oldContextWas: > Debugger>>toggleContextStackIndex: > PluggableListMorph>>changeModelSelection: > PluggableListMorph>>mouseUp: > PluggableListMorph(Morph)>>handleMouseUp: > MouseButtonEvent>>sentTo: > PluggableListMorph(Morph)>>handleEvent: > MorphicEventDispatcher>>dispatchDefault:with: > MorphicEventDispatcher>>dispatchEvent:with: > PluggableListMorph(Morph)>>processEvent:using: > PluggableListMorph(Morph)>>processEvent: > PluggableListMorph>>handleFocusEvent: > [] in HandMorph>>sendFocusEvent:to:clear: > [] in PasteUpMorph>>becomeActiveDuring: > BlockClosure>>on:do: > PasteUpMorph>>becomeActiveDuring: > HandMorph>>sendFocusEvent:to:clear: > HandMorph>>sendEvent:focus:clear: > HandMorph>>sendMouseEvent: > HandMorph>>handleEvent: > HandMorph>>processEvents > - - - - - - - - - - - - - - - > - - - - - - - - - - - - - - - - - - > [] in WorldState>>doOneCycleNowFor: > Array(SequenceableCollection)>>do: > WorldState>>handsDo: > WorldState>>doOneCycleNowFor: > WorldState>>doOneCycleFor: > PasteUpMorph>>doOneCycle > [] in Project class>>spawnNewProcess > [] in BlockClosure>>newProcess > ------------------------------------------------------------ > > > > -- > =========================================================================== > John M. McIntosh <[hidden email]> Twitter: squeaker68882 > Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com > =========================================================================== > > > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project System-Tracing.2forPharo3.cs (60K) Download Attachment |
On 2009-12-05, at 9:46 PM, Laval Jannik wrote: >> I added >> object class = BlockClosure ifTrue: >> [(object instVarAt: 3) ifNotNil: >> ["May need to adjust PC and startPC if changing wordSize..." >> results at: 2 put: (block value: (object instVarAt: 2)+(self pcDeltaForMethod: object method) value: 2)]]. Oops should be object class = BlockClosure ifTrue: ["May need to adjust PC and startPC if changing wordSize..." results at: 2 put: (block value: (object instVarAt: 2)+(self pcDeltaForMethod: object method) value: 2)]. Post your current change set so we can see However that just gives me, which is where I was earlier. -- =========================================================================== John M. McIntosh <[hidden email]> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project PastedGraphic-2.tiff (62K) Download Attachment |
Hi, I have the same behavior. Now, I don't know what I can do with this. I don't see what is wrong. arghhh.... Cheers, Jannik
--- Jannik Laval PhD Student - Rmod Team - INRIA Certified Project Management Associate (IPMA) --- _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by johnmci
Eliot and I spent 30 minutes chatting about what is wrong. The conclusion is we *think* we are doing the right thing,
yet the Virtual Machine says the image is busted. So a quick fix is not apparent, and we'll dig more. On 2009-12-05, at 11:42 PM, John M McIntosh wrote: > > On 2009-12-05, at 9:46 PM, Laval Jannik wrote: > >>> I added >>> object class = BlockClosure ifTrue: >>> [(object instVarAt: 3) ifNotNil: >>> ["May need to adjust PC and startPC if changing wordSize..." >>> results at: 2 put: (block value: (object instVarAt: 2)+(self pcDeltaForMethod: object method) value: 2)]]. > > > Oops should be > > object class = BlockClosure ifTrue: > ["May need to adjust PC and startPC if changing wordSize..." > results at: 2 put: (block value: (object instVarAt: 2)+(self pcDeltaForMethod: object method) value: 2)]. > > Post your current change set so we can see > > However that just gives me, which is where I was earlier. > > > <PastedGraphic-2.tiff> -- =========================================================================== John M. McIntosh <[hidden email]> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Hi John,
I see this method: ------------ fixedPlusIndexableSizeFor: object "Return my total number of fields" (object isContextPart) ifTrue: [^ object class instSize + object frameSize]. object isCompiledMethod ifTrue: [^ object basicSize + (self pcDeltaForMethod: object)]. ^ object class instSize + object basicSize ------------- So maybe it needs a line like: ------------- (object class = BlockClosure) ifTrue: [^ object class instSize + (self pcDeltaForMethod: object method)]. ------------- But this one does not work.... Do you have an idea ? Or maybe I am not on the good way. Cheers, Jannik On Dec 7, 2009, at 04:59 , John M McIntosh wrote: > Eliot and I spent 30 minutes chatting about what is wrong. The conclusion is we *think* we are doing the right thing, > yet the Virtual Machine says the image is busted. So a quick fix is not apparent, and we'll dig more. > > On 2009-12-05, at 11:42 PM, John M McIntosh wrote: > >> >> On 2009-12-05, at 9:46 PM, Laval Jannik wrote: >> >>>> I added >>>> object class = BlockClosure ifTrue: >>>> [(object instVarAt: 3) ifNotNil: >>>> ["May need to adjust PC and startPC if changing wordSize..." >>>> results at: 2 put: (block value: (object instVarAt: 2)+(self pcDeltaForMethod: object method) value: 2)]]. >> >> >> Oops should be >> >> object class = BlockClosure ifTrue: >> ["May need to adjust PC and startPC if changing wordSize..." >> results at: 2 put: (block value: (object instVarAt: 2)+(self pcDeltaForMethod: object method) value: 2)]. >> >> Post your current change set so we can see >> >> However that just gives me, which is where I was earlier. >> >> >> <PastedGraphic-2.tiff> > > -- > =========================================================================== > John M. McIntosh <[hidden email]> Twitter: squeaker68882 > Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com > =========================================================================== > > > > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
RIght and it's 12:30 am again,
So the MAGIC fixes for the tracer to let you build a 64bit Pharo image are below. No doubt they apply to closure based squeak trunk images. Could someone can be kind enough to integrate them into the current System-Tracing.2forPharo.cs ? Then some people in Europe? can grab the current Pharo/Trunk image and convert it, and run some smoke tests. BTW you need to use the Squeak.5.0.0.b9.64*64.app.zip to run a 64bit image Don't forget to convert you have to use a powerpc, or a squeak VM that is running as powerpc (via get info settings) on your macintel machine. Still need someone to *fix* the systemtracer so it will run on intel machines. (Hint watch how it writes out integer data). ... Changes below: "This is the magic change, it's not the conversion of the image that is bad. It's the Smalltalk code assumption of is that 4 or 8 bytes? " "There likely should be a Pharo/Squeak bug for this since it should be using wordSize not a magic number of 4" Eliot notes "Bravo! But Smalltalk wordSize has to be implemented in some way that caches the value in e.g. a class variable (or class inst var for max speed) that is reevaluated on startup." So I'll let someone propose/write a clever solution since the Smalltalk wordSize is computational heavy. CompiledMethod>>initialPC "Answer the program counter for the receiver's first bytecode." ^ (self numLiterals + 1) * (Smalltalk wordSize) + 1 "This next method isn't used much, should be. But the System-Tracing.2forPharo.cs trashes it with a ancient version. This is the correct version" SystemDictionary>>wordSize "Answer the size (in bytes) of an object pointer." "Smalltalk wordSize" ^[SmalltalkImage current vmParameterAt: 40] on: Error do: [4] "Changes to properly fix up BlockClosure in the SystemTracer2" SystemTracer2>>object: object allFieldsWithIndex: block collect: sequenceableCollectionClass "Evaluate block against each of the pointer fields with index, and collect the results in an instance of sequenceableCollectionClass" | fixedSize results varSize nilResults blockvalue | object isCompiledMethod ifTrue: [results := sequenceableCollectionClass new: 1 + object numLiterals. 1 to: 1 + object numLiterals do: [:j | results at: j put: (block value: (object objectAt: j) value: j)]. ^ results]. fixedSize := object class instSize. varSize := object basicSize. results := sequenceableCollectionClass new: fixedSize + varSize. 1 to: fixedSize do: [:j | results at: j put: (block value: (object instVarAt: j) value: j)]. 1 to: varSize do: [:j | results at: fixedSize + j put: (block value: (object basicAt: j) value: fixedSize + j)]. object isContextPart ifTrue: [(object instVarAt: 2) ifNotNil: ["May need to adjust PC and startPC if changing wordSize..." blockvalue := (object instVarAt: 2)+(self pcDeltaForMethod: object method). results at: 2 put: (block value: blockvalue value: 2)]. ((object isMemberOf: BlockContext) and: [object home notNil]) ifTrue: [results at: 5 put: (block value: (object instVarAt: 5)+(self pcDeltaForMethod: object method) value: 5)]. "Need to fill out the nils beyond the knowable end of stack" nilResults := sequenceableCollectionClass new: object frameSize - object basicSize. 1 to: nilResults size do: [:j | nilResults at: j put: (block value: nil value: j)]. ^ results , nilResults]. object class = BlockClosure ifTrue: ["May need to adjust PC and startPC if changing wordSize..." blockvalue := (object instVarAt: 2)+(self pcDeltaForMethod: object method). results at: 2 put: (block value: blockvalue value: 2)]. ^ results >> Eliot and I spent 30 minutes chatting about what is wrong. The conclusion is we *think* we are doing the right thing, >> yet the Virtual Machine says the image is busted. So a quick fix is not apparent, and we'll dig more. -- =========================================================================== John M. McIntosh <[hidden email]> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Obviously some bored developer should take one of these handy 64bit images and with a 64bit vm
fire it up and create oh mmm let's say a 10GB image? Just to see, don't forget to save it and reopen, do a garbage collect all... Can't recall hearing of anyone trying an image greater than 2 GB... If you show proof of a 100GB image, then I'll buy you a beer at the next ESUG. On 2009-12-16, at 12:48 AM, John M McIntosh wrote: > So the MAGIC fixes for the tracer to let you build a 64bit Pharo image are below. -- =========================================================================== John M. McIntosh <[hidden email]> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Hi john
I'm sure that jannik (which is not bored) can generate huge images :) Stef On Dec 16, 2009, at 9:54 AM, John M McIntosh wrote: > Obviously some bored developer should take one of these handy 64bit images and with a 64bit vm > fire it up and create oh mmm let's say a 10GB image? Just to see, don't forget to save it and reopen, > do a garbage collect all... > > Can't recall hearing of anyone trying an image greater than 2 GB... > > If you show proof of a 100GB image, then I'll buy you a beer at the next ESUG. > > On 2009-12-16, at 12:48 AM, John M McIntosh wrote: > >> So the MAGIC fixes for the tracer to let you build a 64bit Pharo image are below. > > -- > =========================================================================== > John M. McIntosh <[hidden email]> Twitter: squeaker68882 > Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com > =========================================================================== > > > > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by johnmci
Hi Eliot, hi John,
This is what I do: - create a class var in SystemDictionary - accessors (wordSize and wordSize:), the first one can initialize the variable if nil, the second is to modify the value in case of 64bits image. Maybe the second one could be integrated in System-Tracing file. - in CompiledMethod, initialPC use it. Maybe we could integrate it in pharoCore. Cheers, Jannik ======= 'From PharoCore1.1ALPHA of ''19 October 2009'' [Latest update: #11088] on 16 December 2009 at 11:06:21 pm'! IdentityDictionary subclass: #SystemDictionary instanceVariableNames: 'cachedClassNames ' classVariableNames: 'LastImageName LastQuitLogPosition LowSpaceProcess LowSpaceSemaphore MemoryHogs ShutDownList SpecialSelectors StartUpList StartupStamp SystemChanges WordSize ' poolDictionaries: '' category: 'System-Support'! !SystemDictionary class methodsFor: 'initialization' stamp: 'jannik.laval 12/16/2009 22:40'! wordSize WordSize ifNil: [WordSize := [SmalltalkImage current vmParameterAt: 40] on: Error do: [4]]. ^WordSize! ! !SystemDictionary class methodsFor: 'initialization' stamp: 'jannik.laval 12/16/2009 22:40'! wordSize: aNumber WordSize := aNumber! ! IdentityDictionary subclass: #SystemDictionary instanceVariableNames: 'cachedClassNames' classVariableNames: 'LastImageName LastQuitLogPosition LowSpaceProcess LowSpaceSemaphore MemoryHogs ShutDownList SpecialSelectors StartUpList StartupStamp SystemChanges WordSize' poolDictionaries: '' category: 'System-Support'! !CompiledMethod methodsFor: 'accessing' stamp: 'jannik.laval 12/16/2009 22:41'! initialPC "Answer the program counter for the receiver's first bytecode." ^ (self numLiterals + 1) * SystemDictionary wordSize + 1! ! ======= On Dec 16, 2009, at 18:32 , Eliot Miranda wrote: Um, I'm _quite_ serious on insisting that Smalltalk wordSize be implemented in some way that caches the value in e.g. a class variable (or class inst var for max speed) that is reevaluated on startup. initialPC is evaluated a lot, e.g. once for every method in a "browse inst var refs". This is performance-critical, and going to a slow primitive to access something that can only change at startup is not a good idea. Please arrange that e.g. SystemDictionary gains a class var that caches the word size. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project addWordSizeInSystemDictionary.1.cs (1K) Download Attachment |
Ok, well I created Mantis
to document. Personally I would do Smalltalk wordSize versus SystemDictionary wordSize Also the issue is when to change the WordSize variable. I think in SmalltalkImage>>snapshot: andQuit: embedded: right at the ifTrue: [self quitPrimitive]. Cursor normal show. you want to set things so that wordSize is reset. At quit time you could do the reset before the "self quitPrimitive" then you know the value is reset and needs to be recalculated at startup time. or you can reset it before the Cursor normal show. which runs after startup time Somehow I think there is more risk resetting it after startup since I'm not sure when something could leap in wanting a valid value. On 2009-12-16, at 2:44 PM, Laval Jannik wrote: Hi Eliot, hi John, -- =========================================================================== John M. McIntosh <[hidden email]> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Free forum by Nabble | Edit this page |