[Vm-dev] VM endianness

tim Rowledge tim at rowledge.org
Wed Mar 18 19:17:45 UTC 2015


On 18-03-2015, at 12:10 PM, Eliot Miranda <eliot.miranda at gmail.com> wrote:

> 
> 
> On Wed, Mar 18, 2015 at 10:54 AM, stephane ducasse <stephane.ducasse at gmail.com> wrote:
>  
> 
>>  
>> In Pharo it is similar. However, we would like to have an image where BitBlt and Form are not there.
>> 
>> Here's one that works on both Spur and V3.  It only works on a Cog or Stack VM (and hence is OK for Pharo) since it depends on Floats being stored in the platform order internally.
>> 
>> 
>> | f |
>> f := Float new.
>> f at: 2 put: 1. "store the least significant word of the float with 1; on big endian machines this is the second word"
>> Bitmap adoptInstance: f.
>> f first = 1 ifTrue: [#little] ifFalse: [#big]
> 
> Do you have a magic invocation that would not involved graphic objects?
> What would be cool is to have vm parameter or something like that. We want to reduce the dependencies in the core. 
> 
> At least it doesn't use BitBlt.  Its got much less dependencies than the existing code and is much simpler.  Isn't that worth something?

No need to use Bitmap if that’s a real problem - make a trivial class that is ArrayedCollection variableWordSubclass:#EndianTestThing and use that.


tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Strange OpCodes: AG: Add Gibberish




More information about the Vm-dev mailing list