[Vm-dev] Cuis now runs with latest Cog, but I don't understand the problem we had

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Thu Apr 28 19:21:24 UTC 2016


Hi Juan, then how do you explain:

"Just to clarify: the issue was experienced only when running on Cog...
current versions of the Stack VM performed as expected."


2016-04-28 21:10 GMT+02:00 Juan Vuletich <JuanVuletich at zoho.com>:

>
> On 4/28/2016 2:13 PM, Phil (list) wrote:
>
>>
>> On Thu, 2016-04-28 at 12:58 -0400, Phil (list) wrote:
>>
>>> On Thu, 2016-04-28 at 16:43 +0200, Clément Bera wrote:
>>>
>>>>   Have you tried on latest VM ? I remembered fixing a bug on #==
>>>> primitive like a month ago. The problem was when performing #==
>>>> primitive with the argument being a forwarder to an immediate.
>>>>
>>>> The problem still existed as of Cog #3686 (Juan found the fix
>>> yesterday.)  On my system, Cuis last worked perfectly with 3370,
>>> mostly
>>> worked with 3390, somewhat worked with 3427 and did not work after
>>> that
>>> until we found the Character>>#= bug/fix.
>>>
>> Just to clarify: the issue was experienced only when running on Cog...
>> current versions of the Stack VM performed as expected.
>>
>
> Fortunately I work with Gera Richarte @ Satellogic, and it didn't take
> long for him to suggest an explanation: Maybe prim 110 is broken in recent
> Cog VMs, but nobody notices it because the only sender is #== that is
> already optimized by the jitter, so prim 110 is never really called. And I
> realized we can test that theory. First, we add this method to Character:
>
> === aCharacter
> <primitive: 110>
>     self halt
>
> Then the following snippet (in latest Cuis, #2744):
>
>     0 to: 255 do: [ :i1 | 0 to: 255 do: [ :i2 | i1 = i2 ifFalse:
> [(Character value: i1) === (Character value: i2) ifTrue: [{i1.i2} print ]]]]
>
> prints nothing if run with Cog 3370, but prints a lot of pairs in more
> recent Cog. So I think Gera is right.
>
> Thanks,
> Juan Vuletich
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20160428/d9f5affa/attachment.htm


More information about the Vm-dev mailing list