[Vm-dev] Primitive table support for running older images

David T. Lewis lewis at mail.msen.com
Thu Dec 22 23:18:52 UTC 2016


On Thu, Dec 22, 2016 at 09:10:05PM -0300, Jecel Assumpcao Jr. wrote:
>  
> Bert Freudenberg wrote on Thu, 22 Dec 2016 16:40:51 +0100
> > In SqueakJS I have a single flag??oldPrims??to switch between two set of primitives.
> > This appears to work fine all the way back to Squeak 1.x. The flag is set based on
> > whether the image format has closures or not.
> 
> I had the impression, based on some difficulties on getting the
> simulator to work (around 2008, I think), that at one point an instance
> variable in a key class (Process, most likely) stopped being used and
> then a few versions later it got reused in a different way. This also
> happened to a numbered primitive or two. And the version number stayed
> 6502 though all these changes. So a newer VM would appear to run an
> older image just fine but once in a while you got a really strange
> crash.
> 
> My hope is that this was just some horrible nightmare of mine and not
> actual memories, but I will have to take some time searching through old
> email messages to be sure.
> 

The other thing that I expect may be a source of trouble is the special
objects array. But I have not actually checked to see if it's a problem yet.

It is quite encouraging that SqueakJS is able to run all the way back to
Squeak 1.x with just two variations of the primitive table.

Dave


More information about the Vm-dev mailing list