[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: buildd failure for ia64 - floating point encoding?

On Mon, Oct 25, 2004 at 06:08:03PM +0100, Helen Faulkner wrote:
> The program defines the floating point encoding like this.

> /*****************************************************************************
> * Floating-point encodings.
> *   1..........Sun, SGi, IBM-RS, HP, NeXT, Macintosh
> *   2..........DECstation, IBM-PC, Alpha (OSF/1), Alpha (OpenVMS - IEEE_FLOAT)
> *   3..........VAX, Alpha (OpenVMS - D_FLOAT)
> *   4..........Alpha (OpenVMS - G_FLOAT)
> *****************************************************************************/

Seems your program uses the Common Data Format libraries


I'm no expert in this area, but I would assume number 2.  

Peeking at the code, these structs are used by the library to convert
from the CDF base float format into a requested output float format.
fp1 is for IEEE floating point big-endian machines, fp2 for IEEE
floating point little endian machines, fp3 is for vax and fp4 is a
special case for 64 bit floats.  From what I can see, any machine can
request any output format, which results in the matrix of structs you
posted (at a glance it looks like it relies on the ordering of
bit-fields, which I thought was a no-no?).

Itanium Linux is IEEE little-endian, so hacking the library to use
that is probably your best guess.  I noticed that they are working on
a new version of CDF so if anyone knows more about it maybe they
should try to get Itanium support included "out of the box".



Attachment: signature.asc
Description: Digital signature

Reply to: