[squeak-dev] Cog VM problem?

Eliot Miranda eliot.miranda at gmail.com
Fri May 15 00:07:49 UTC 2015


Hi Raymond,

    yes, thanks.  We have a regression in the code generator due to recent
changes to #== compilation.  We're working on it.  I hope to have a fix
soon.  Apologies for the inconvenience.

For those of you curious why this only affects the V3 VM, not the Spur VM,
the reason is that in Spur the Cogit passes up to 2 argument sends in
registers but in V3 it passes only up to 1 arg sends in registers.  In

(borderWidth = style width and:
["Hah! Try understanding this..."

borderColor == style style or:
["#raised/#inset etc"

#simple == style style and: [borderColor = style color]]])
ifFalse:
[style := borderColor isColor
ifTrue: [BorderStyle width: borderWidth color: borderColor]
ifFalse: [(BorderStyle perform: borderColor) width: borderWidth "argh."].
self setProperty: #borderStyle toValue: style].

#simple erroneously ends up getting spilled to the stack, so that when the
send of width:color: to BorderStyle occurs the code generator emits code to
access what it thinks is BorderWidth, but ends up accessing #simple instead.

As I say we're working on it and should have a fix soon.

On Thu, May 14, 2015 at 8:13 AM, Raymond Asselin <jgr.asselin at me.com> wrote:

> Cog.app-15.19.3336.tgz
> gave me a Debugger window
>
>
>
> with these artefacts
> This is a MauiDomainMorph
>
>
>
>
>


-- 
best,
Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20150514/6c5149cb/attachment.htm


More information about the Squeak-dev mailing list