[Vm-dev] Re: A possible Cog bug (was: Re: [squeak-dev] Direct implementation of shift/reset in Smalltalk)

Eliot Miranda eliot.miranda at gmail.com
Mon Apr 25 05:38:01 UTC 2011


On Sun, Apr 24, 2011 at 8:35 PM, Levente Uzonyi <leves at elte.hu> wrote:

>
> On Sun, 24 Apr 2011, Levente Uzonyi wrote:
>
> snip
>
>
>  it didn't work for some reason. The execution always ran into the error
>> 'computation has been terminated' in MethodContext >> #cannotReturn: and the
>> method context (which stitches the continuation onto the stack) was broken
>> (nil in temporaries where should be non nil values). Finally I tried it in
>> SqueakVM instead of Cog and it worked. The tests are green, the example code
>>
>
> I tracked down this issue a bit more. The cause of the problem is that with
> CogVM the pc of thisContext is being set to nil when the execution leaves
> the context. This means, that [thisContext copy] will not be able to copy
> the pc of the context:
>
> { thisContext pc. thisContext copy pc } "==> #(23 nil)"
>

Great catch Levente.  I'll try and track this down asap.


>
>
> Levente
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20110424/4f764a57/attachment.htm


More information about the Vm-dev mailing list