[squeak-dev] Spur with Immediate Floating Point Support implies a break

Eliot Miranda eliot.miranda at gmail.com
Tue Dec 2 06:58:02 UTC 2014

Hi Levente,

On Mon, Dec 1, 2014 at 7:52 PM, Levente Uzonyi <leves at elte.hu> wrote:

> Hi Eliot,
> It's a bit off-topic, but shouldn't there be a primitive that can convert
> a float from the boxed representation to immediate? Something like
> primNormalizePositive for LargePositiveIntegers. I know it's possible (or
> at least it should be, see below) to do it with an operation which has no
> effect, but a dedicated primitive looks more natural to me.

   I was assuming that any of add or subtract positive or negative zero, or
multiply or divide by 1.0 would do the trick.  Why wouldn't this be

Another thing is that it seems like the VM doesn't want to create
> SmallFloat64 instances at all:
> 1.0 class "==> BoxedFloat64"
> Maybe it's just the compiler not "normalizing":
> (1.0 + 0.0) class "==> BoxedFloat64"
> 1.0 sin class "==> BoxedFloat64"
> No, the plugin doesn't "normalize" either.

Ah, I see.  Hang on.  There is no support for SmallFloat64 on 32-bit Spur.
Only in a 64-bit image/on a 64-bit Spur VM will you be able to create
instances of SmallFloat64.  And so far I only have this working in the VM
simulator.  I've yet to try and create a real VM, and even then it will
only be a Stack VM.

> On Mon, 1 Dec 2014, Eliot Miranda wrote:
>  Hi All,
>>     some of you have been brave enough to use Spur and may have got used
>> to being able to update.  Recently I've updated Spur with support for
>> immediate floating-point in 64-bit Spur.  Alas these changes are not
>> amenable to a straight-forward Monticello update.
>> Now that I've updated Kernel.spur with these changes you'll not be able
>> to simply update your image.  There /may/ be a chance of being able to
>> update if you first file-in MorphFloat.st (find attached).  It worked for
>> me.  So in a recent SPur image, file-in MorphFloat.st and then update.
>> If things get stuck on a partial update of Kernel.spur-eem.867(blah).mcd,
>> then load Kernel.spur-eem.867.mcz manually and then update again. If
>> this doesn't work apologies.
>> What you can definitely do is upload the latest Spur image from
>> www.mirandabanda.org/files/Cog/SpurImages/2014-12-01 and rebuild.
>> --
>> best,Eliot

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20141201/de90c628/attachment.htm

More information about the Squeak-dev mailing list