Hi,
testing 1.8.11 on the new cygwin64 platform with

 $ gcc --version
gcc (GCC) 4.8.0
Copyright (C) 2013 Free Software Foundation, Inc.


I have alot of long double conversion,
but the output is a bit strange:
---------------------------------------------------------------------
Testing hard signed char -> long double conversions *FAILED*
    elmt 0:
        src =  01                     1
dst = ff 80 7f 40 3f 20 3f ff 80 00 00 00 00 00 00 00 1.000000 ans = 00 00 00 00 00 00 3f ff 80 00 00 00 00 00 00 00 1.000000

[cut]
    elmt 87:
        src =  00 00 0f ff ff ff ff ff        17592186044415
dst = ff ff 80 00 00 00 40 2a ff ff ff ff ff f0 00 00 17592186044415.000000 ans = 00 00 00 00 00 00 40 2a ff ff ff ff ff f0 00 00 17592186044415.000000
    maximum failures reached, aborting test...
(dst is library's conversion output. ans is compiler's conversion output.)
----------------------------------------------------------------------

But in  theory this case is handled by

-------------------------------- dt_arith.c ----------------------
/* Make certain that there isn't some weird number of destination bits */
        assert(dst_nbits%8==0);

/* For Intel machines, the size of "long double" is 12 bytes, precision * is 80 bits; for AMD processors, the size of "long double" is 16 bytes, * precision is 80 bits. During hardware conversion, the last few unused * bytes may have garbage in them. Clean them out with 0s before compare
         * the values.
         */
#if H5_SIZEOF_LONG_DOUBLE !=0
        if(dendian==H5T_ORDER_LE && dst_type==FLT_LDOUBLE) {
            unsigned int q;
            for(q=dst_nbits/8; q<dst_size; q++) {
                buf[j*dst_size+q] = 0x00;
            }
        }
--------------------------------------------------------------------

any one seeing the same issue on other 64bit platform ?

Regards
Marco

_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org

Reply via email to