[Vm-dev] Reserving/allocating some slots in the specialObjectsArray for DoubleByteArray, WordArray and DoubleWordArray

Juan Vuletich JuanVuletich at zoho.com
Wed Jan 15 13:36:38 UTC 2020


Hi Eliot, Folks,

Speaking for Cuis.

On 1/13/2020 2:47 PM, Eliot Miranda wrote:
> Hi All,
>
>     currently the following slots in the specialObjectsArray are 
> unused in both Squeak and Pharo (& I suspect Cuis).
>
> newArray at: 32 put: nil. "was the prototype Float"
> newArray at: 33 put: nil. "was the prototype 4-byte LargePositiveInteger"
> newArray at: 34 put: nil. "was the prototype Point"
>
> The specialObjectsArray already contains ByteArray
> newArray at: 27 put: ByteArray.

Yep. The same in Cuis.

> I would like to have a full set of little-endian unsigned integer 
> arrays.  In Spur Squeak these are ByteArray, DoubleByteArray, 
> WordArray (Bitmap is big endian), and DoubleWordArray.

Same in Spur Cuis (if you load the optional 
"Collections-TwoAndEightByteArrays.pck.st" package).

> The VM's at:[put:] directly supports these four at the JIT level 
> giving us efficient unsigned access.  There is also efficient signed 
> access for some signed arrays but these are less useful (at least in 
> theVM simulator).
>
> I want to make all four unsigned integer array classs available to 
> plugins etc via the interpreterProxy.  So here's a formal request to 
> reserve these values for use as follows:
> newArray at: 27 put: ByteArray.
> ...
> newArray at: 32 put: DoubleByteArray.
> newArray at: 33 put: WordArray.
> newArray at: 34 put: DoubleWordArray.
>
> _,,,^..^,,,_
> best, Eliot
>

Sounds good to me.

Thanks,

-- 
Juan Vuletich
www.cuis-smalltalk.org
https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev
https://github.com/jvuletich
https://www.linkedin.com/in/juan-vuletich-75611b3
@JuanVuletich

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20200115/c1e3be1b/attachment.html>


More information about the Vm-dev mailing list