[squeak-dev] Squeak 4.6 -- 2nd release candidate
David T. Lewis
lewis at mail.msen.com
Tue Jul 7 23:33:43 UTC 2015
On Tue, Jul 07, 2015 at 02:34:48PM -0500, Chris Muller wrote:
>
> On Tue, Jul 7, 2015 at 1:31 PM, David T. Lewis <lewis at mail.msen.com> wrote:
> > I am away and cannot follow up on this for a while.
> >
> > My guess would be that there is something wrong in the compiler, and that
> > it needs to be fixed (but I cannot check now to find out). I don't know if
> > this affects SqueakJS or other VMs.
> >
> > Dave
>
> Maybe the problem is in the image, the interpreter VM or the
> TwosComplement package, we don't know. Since it does not appear
> likely anyone will be able to investigate it soon, and the nature of
> both releases is about all-new VM(s) anyway, we probably should not
> hold up the release over this.
>
> In fact, I could make another RC without the recompileAll. Is it
> really necessary? I don't know any better about its purpose than why
> it would be a problem. I guess anyone could do it on their own if
> they wanted..
>
OK, I'm back now.
The problem was introduced in Compiler-eem.300, which does this:
Use the size/emitPushNClosureTemps: api in block generation.
There are two affected methods:
BlockNode>>sizeCodeForEvaluatedClosureValue:
BlockNode>>emitCodeForEvaluatedClosureValue:encoder:
Reverting these two methods fixes the problem.
I don't know the background on this change but my guess would be that
it is something that works on a stack interpreter but not on a context
interpreter, so maybe the methods need to be tweaked to account for the
difference.
I would suggest rolling back these two methods until after the 4.6
release, see Compiler-dtl.303 in the inbox.
Eliot, does that sound right?
Thanks,
Dave
More information about the Squeak-dev
mailing list
|