2GB changes file and a pony (was: [squeak-dev] ALL CLEAR (Re: CompiledMethodTrailers ready for use))

Igor Stasenko siguctua at gmail.com
Wed Dec 23 09:31:11 UTC 2009


2009/12/23 John McIntosh <johnmci at smalltalkconsulting.com>:
> It should be 64bit since I made that change years back. However most
> (all?) file systems don't support all 64 bit of space. Still it was
> intersting to learn I could make terabyte sparse file on my freebsd
> system.
>
> So is it 2gb or 4gb? Is that a limit due to 32bit signed numbers?
>
the limit was in a method sourcePointer, which were using up to 4
bytes in method's trailer (and some bits reserved).
Now this is no longer issue, and you can encode any integer value (>0)
as sourcePointer in method's trailer.
So it is now up to stream/file primitives to handle these big numbers well.

> On 12/23/09, Igor Stasenko <siguctua at gmail.com> wrote:
>> 2009/12/23 David T. Lewis <lewis at mail.msen.com>:
>>> On Tue, Dec 22, 2009 at 01:59:34PM +0100, Andreas Raab wrote:
>>>> Folks -
>>>>
>>>> We're all clear now after the CompiledMethodTrailer changes.
>>>> Can I have a 2GB changes file now? And a pony? :)
>>>>
>>>
>>> Here's the 2GB changes file patch. File it in, run tests, install
>>> with ExpandedSourceFileArray install.
>>>
>>
>> so, we're now bound to VM file-size handling limitation, or its using
>> 64-bits for file pointers?
>> 2GB is better than 32M.. but still small :)
>>
>>> You will want to disable the changes size check in #checkOKToAdd:at:
>>> and also arrange for the ExpandedSourceFileArray to be installed
>>> at image startup.
>>>
>>> I was able to grow a changes file beyond 32M, and verified that
>>> the image has large sourcePointer values beyond the range previously
>>> allowed.
>>>
>>>  (CompiledMethod allInstances collect: [:e | e sourcePointer]) max hex ==>
>>> '6054DAA'
>>>
>>> I'm not so sure about the pony, but Randal promised to send one ;)
>>>
>>> Cheers,
>>> Dave
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>> --
>> Best regards,
>> Igor Stasenko AKA sig.
>>
>>
>
>
> --
> ===========================================================================
> John M. McIntosh <johnmci at smalltalkconsulting.com>
> Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
> ===========================================================================
>
>



-- 
Best regards,
Igor Stasenko AKA sig.



More information about the Squeak-dev mailing list