#1251: handle ARM mixed-endian doubles
---------------------+------------------------------------------------------
 Reporter:  jkeenan  |       Owner:       
     Type:  todo     |      Status:  new  
 Priority:  normal   |   Milestone:       
Component:  core     |     Version:  1.7.0
 Severity:  medium   |    Keywords:       
     Lang:           |       Patch:       
 Platform:           |  
---------------------+------------------------------------------------------
 This ticket moves discussion into Trac from
 [http://rt.perl.org/rt3/Ticket/Display.html?id=37461 RT #37461].

 Leopold Toetsch opened the ticket in October 2005:

 Parrot bytecode (PBC) is designed to be portable. Therefore we need
 some code to convert ARM-generated PBCs to machine-native doubles and
 ARM architectures must be able to read other already supported float
 types.

 A PBC header has a 'floattype' field, which identifies known FLOATVAL
 layouts.

 We have currently:

 0 ... 8 byte IEEE double
 1 ... 12 byte IEEE double (both according to endianess)

 We need additionally (at least and AFAIK):

 2 ... 8 byte (ARM) mixed-endian

 which is according to Nicholas a LE double with 2 BE arranged words.

 And Nicholas Clark commented:

 and totally legal IEEE.

 (Mozilla thought that it could cheat. And it was wrong)

 The mixed endian is the old soft float, as I understand it, and will be
 replaced by something less surprising, but that's a C ABI change.

 ... and that's where things stand.

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/1251>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to