[squeak-dev] Release image format (was: "Future Directions" welcome workspace)

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Sun Jun 16 20:30:22 UTC 2013


You said "if it doesn't fail", that's precisely the point, we got a
crash.dmp so something presumably failed.
I understand that we should distinguish if failure occured inside
primitive, or in fallback code.
But even if primitive was called recently, what tells me we were inside it
when the VM crashed?
If you are right, then the dump is not informative enough.
And you seem right from what I read from CoInterpreter>>#executeNewMethod
but it's a bit involved

Concerning \\\, there used to be a noticeable advantage versus \\ for large
integers.
The method comment says
    "a modulo method for use in DSA. Be careful if you try to use this
elsewhere"
Since reciprocalModulo; and raisedTo:modulo: are typically used in
cryptography with rather large ints, it's possible that I tried to not
spoil efficiency.
Now that the advantage has been greatly reduced with introduction of new
primitive and more efficient fallback code, I think that it's time to
update.


2013/6/16 Levente Uzonyi <leves at elte.hu>

> On Sun, 16 Jun 2013, Nicolas Cellier wrote:
>
>  Interesting, but the primitive is digitDiv:neg: , not \\\
>> Why wouldn't the primitive be reported on the Smalltalk stack?
>>
>
> I think that's the normal behavior. Why should a primitive call "pollute"
> the Smalltalk stack if it doesn't fail? The recently used primitives are
> listed separately.
>
> Most recent primitives
> digitCompare:
> digitDiv:neg:
>
>> =
>>
> digitCompare:
> digitDiv:neg:
>
>> =
>>
> ...
>
>
>
>> By the way, \\\ is not really usefull anymore.
>> The main difference is that \\\ avoids a normalization of the result.
>> Please note that you should not use it with negative receiver or argument.
>> Also note that \\ should be faster for Small Integers and for
>> LargeInteger up to 64 bits (we now have a primitive for that)
>> For LargeIntegers > 64 bits, \\ will be a bit longer because we pass thru
>> a primitiveFail before  calling same primitive than \\\, and then normalize
>> quotient and
>> remainder.
>>
>
> All senders of #\\\ in my image have your initials. It's a bit suspicious
> that Integer >> #reciprocalModulo: doesn't normalize v after the loop, but
> it's possible that #- will do it anyway. In the other user - Integer >>
> #slidingLeftRightRaisedTo:**modulo: - the result is normalized via
> #normalize.
>
>
> Levente
>
>
>
>> Nicolas
>>
>>
>> 2013/6/16 Frank Shearar <frank.shearar at gmail.com>
>>       On 16 June 2013 10:13, Frank Shearar <frank.shearar at gmail.com>
>> wrote:
>>       > On 9 December 2012 00:00, David T. Lewis <lewis at mail.msen.com>
>> wrote:
>>       >> On Sat, Dec 08, 2012 at 10:48:16PM +0000, Frank Shearar wrote:
>>       >>> On 8 December 2012 21:56, David T. Lewis <lewis at mail.msen.com>
>> wrote:
>>       >>> > On Sat, Dec 08, 2012 at 09:50:21PM +0000, Frank Shearar wrote:
>>       >>> >> On 8 December 2012 21:24, David T. Lewis <
>> lewis at mail.msen.com> wrote:
>>       >>> >> >
>>       >>> >> > We may have tripped an intermittent bug, and it might or
>> might not be
>>       >>> >> > aggrivated by the image having been saved in the 6504
>> format. The actual
>>       >>> >> > failure was in a LargeIntegersPlugin primitive, so I'm not
>> quite sure
>>       >>> >> > what to make of it.
>>       >>> >>
>>       >>> >> Indeed. #55 passed, and so has #56.
>>       >>> >>
>>       >>> >
>>       >>> > I see three successful runs now. It wouldn't hurt to run it a
>> couple more
>>       >>> > times and see if it stays healthy. But I need to leave for an
>> hour or two,
>>       >>> > so I won't do anything further right now.
>>       >>>
>>       >>> #57 - 60 have all passed.
>>       >>>
>>       >>
>>       >> Good. Whatever it was, it's not an issue to get in the way of
>> the release.
>>       >
>>       > It just manifested again, for the first time in ages:
>>       > http://build.squeak.org/job/**SqueakTrunk/383/console<http://build.squeak.org/job/SqueakTrunk/383/console>
>>
>> And here's the crash dump.
>>
>> > frank
>> >
>> >
>> >> Dave
>> >>
>>
>>
>>
>>
>>
>>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20130616/3bec8056/attachment.htm


More information about the Squeak-dev mailing list