diff options
author | Vailin Choi <vchoi@hdfgroup.org> | 2015-04-22 22:31:12 (GMT) |
---|---|---|
committer | Vailin Choi <vchoi@hdfgroup.org> | 2015-04-22 22:31:12 (GMT) |
commit | e0e28a7aae2fabf3ae9d03a1bd5809176935466a (patch) | |
tree | a6b840f4c13522aecdd504d16ee5a265e2abad27 /src/H5Tpkg.h | |
parent | 65b3bc2a937337239ceede5e39261c6b2ba4dc69 (diff) | |
download | hdf5-e0e28a7aae2fabf3ae9d03a1bd5809176935466a.zip hdf5-e0e28a7aae2fabf3ae9d03a1bd5809176935466a.tar.gz hdf5-e0e28a7aae2fabf3ae9d03a1bd5809176935466a.tar.bz2 |
[svn-r26894] Bring revisions #26459 - #26785 from trunk to revise_chunks.
h5committested.
Diffstat (limited to 'src/H5Tpkg.h')
-rw-r--r-- | src/H5Tpkg.h | 117 |
1 files changed, 0 insertions, 117 deletions
diff --git a/src/H5Tpkg.h b/src/H5Tpkg.h index bd37829..4697bfc 100644 --- a/src/H5Tpkg.h +++ b/src/H5Tpkg.h @@ -111,123 +111,6 @@ /* (_not_ setting H5T_VISIT_SIMPLE and setting either H5T_VISIT_COMPLEX_FIRST or H5T_VISIT_COMPLEX_LAST will mean visiting all nodes _except_ "simple" "leafs" in the "tree" */ -/* Define an internal macro for converting between floating number(float and double) and floating number. - * All Cray compilers don't support denormalized floating values generating exception(?). */ -#if H5_CONVERT_DENORMAL_FLOAT -#define H5T_CONV_INTERNAL_FP_FP 1 -#endif /*H5_CONVERT_DENORMAL_FLOAT*/ - -/* Define an internal macro for converting between floating number(float and double) and long double. - * All Cray compilers don't support denormalized floating values generating exception(?). NEC doesn't - * support long double. */ -#if H5_SIZEOF_LONG_DOUBLE && H5_CONVERT_DENORMAL_FLOAT -#define H5T_CONV_INTERNAL_FP_LDOUBLE 1 -#endif /*H5_SIZEOF_LONG_DOUBLE && H5_CONVERT_DENORMAL_FLOAT*/ - -/* Define an internal macro for converting all integers to long double. SGI compilers give some - * incorrect conversions. */ -#if (H5_WANT_DATA_ACCURACY && H5_INTEGER_TO_LDOUBLE_ACCURATE) || (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_INTEGER_LDOUBLE 1 -#endif - -/* Define an internal macro for converting unsigned long to float. - * Pathscale compiler on Sandia's Linux machine has some problem. - * 64-bit Solaris does different rounding. */ -#if (H5_WANT_DATA_ACCURACY && H5_ULONG_TO_FLOAT_ACCURATE && H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE) || \ - (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_ULONG_FLT 1 -#endif - -/* Define an internal macro for converting unsigned (long) long to double. - * 64-bit Solaris does different rounding. */ -#if (H5_WANT_DATA_ACCURACY && H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE) || (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_ULONG_DBL 1 -#endif - -/* Define an internal macro for converting unsigned long to long double. SGI compilers give some - * incorrect conversions. 64-bit Solaris does different rounding. */ -#if (H5_WANT_DATA_ACCURACY && H5_INTEGER_TO_LDOUBLE_ACCURATE && H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE) || \ - (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_ULONG_LDOUBLE 1 -#endif - -/* Define an internal macro for converting long long to long double. Mac OS 10.4 gives some - * incorrect conversions. */ -#if (H5_WANT_DATA_ACCURACY && H5_INTEGER_TO_LDOUBLE_ACCURATE && defined(H5_LLONG_TO_LDOUBLE_CORRECT)) || \ - (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_LLONG_LDOUBLE 1 -#endif - -/* Define an internal macro for converting unsigned long long to floating numbers. SGI compilers give - * some incorect conversion. 64-bit Solaris does different rounding. Windows Visual Studio 6 does - * not support unsigned long long. */ -#if (H5_WANT_DATA_ACCURACY && H5_ULLONG_TO_FP_CAST_WORKS && H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE) || \ - (!H5_WANT_DATA_ACCURACY && H5_ULLONG_TO_FP_CAST_WORKS) -#define H5T_CONV_INTERNAL_ULLONG_FP 1 -#endif - -/* Define an internal macro for converting unsigned long long to long double. SGI compilers give - * some incorect conversion. 64-bit Solaris does different rounding. Windows Visual Studio 6 does - * not support unsigned long long. For FreeBSD(sleipnir), the last 2 bytes of mantissa are lost when - * compiler tries to do the conversion. For Cygwin, compiler doesn't do rounding correctly. - * Mac OS 10.4 gives some incorrect result. */ -#if (H5_WANT_DATA_ACCURACY && H5_ULLONG_TO_FP_CAST_WORKS && H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE && \ - defined(H5_ULLONG_TO_LDOUBLE_PRECISION) && defined(H5_LLONG_TO_LDOUBLE_CORRECT)) || (!H5_WANT_DATA_ACCURACY && \ - H5_ULLONG_TO_FP_CAST_WORKS) -#define H5T_CONV_INTERNAL_ULLONG_LDOUBLE 1 -#endif - -/* Define an internal macro for converting long double to all integers. SGI compilers give some incorrect - * conversions. HP-UX 11.00 compiler generates floating exception. */ -#if (H5_WANT_DATA_ACCURACY && H5_LDOUBLE_TO_INTEGER_ACCURATE && H5_LDOUBLE_TO_INTEGER_WORKS) || \ - (!H5_WANT_DATA_ACCURACY && H5_LDOUBLE_TO_INTEGER_WORKS) -#define H5T_CONV_INTERNAL_LDOUBLE_INTEGER 1 -#endif - -/* Define an internal macro for converting long double to unsigned int. SGI compilers give some incorrect - * conversions. HP-UX 11.00 compiler generates floating exception. Some Intel compilers on some Linux - * give incorrect values. */ -#if (H5_WANT_DATA_ACCURACY && H5_LDOUBLE_TO_INTEGER_ACCURATE && H5_LDOUBLE_TO_UINT_ACCURATE && \ - H5_LDOUBLE_TO_INTEGER_WORKS) || (!H5_WANT_DATA_ACCURACY && H5_LDOUBLE_TO_INTEGER_WORKS) -#define H5T_CONV_INTERNAL_LDOUBLE_UINT 1 -#endif - -/* Define an internal macro for converting floating numbers to long long. The hard conversion on Windows - * .NET 2003 has a bug and gives wrong exception value. */ -#if (H5_WANT_DATA_ACCURACY && !defined(H5_HW_FP_TO_LLONG_NOT_WORKS)) || (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_FP_LLONG 1 -#endif - -/* Define an internal macro for converting long double to long long. SGI compilers give some incorrect - * conversions. Mac OS 10.4 gives incorrect conversions. HP-UX 11.00 compiler generates floating exception. - * The hard conversion on Windows .NET 2003 has a bug and gives wrong exception value. */ -#if (H5_WANT_DATA_ACCURACY && !defined(H5_HW_FP_TO_LLONG_NOT_WORKS) && H5_LDOUBLE_TO_INTEGER_ACCURATE && \ - H5_LDOUBLE_TO_INTEGER_WORKS && defined(H5_LDOUBLE_TO_LLONG_ACCURATE)) || \ - (!H5_WANT_DATA_ACCURACY && !defined(H5_HW_FP_TO_LLONG_NOT_WORKS) && H5_LDOUBLE_TO_INTEGER_WORKS) -#define H5T_CONV_INTERNAL_LDOUBLE_LLONG 1 -#endif - -/* Define an internal macro for converting floating numbers to unsigned long long. PGI compiler does - * roundup when the source fraction part is greater than 0.5. HP-UX compilers set the maximal number - * for unsigned long long as 0x7fffffffffffffff during conversion. */ -#if (H5_WANT_DATA_ACCURACY && H5_FP_TO_ULLONG_ACCURATE && defined(H5_FP_TO_ULLONG_RIGHT_MAXIMUM)) || \ - (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_FP_ULLONG 1 -#else -#define H5T_CONV_INTERNAL_FP_ULLONG 0 -#endif - -/* Define an internal macro for converting long double to unsigned long long. SGI compilers give some - * incorrect conversions. Mac OS 10.4 gives incorrect conversions. HP-UX 11.00 compiler generates - * floating exception. */ -#if (H5_WANT_DATA_ACCURACY && H5_LDOUBLE_TO_INTEGER_ACCURATE && H5_LDOUBLE_TO_INTEGER_WORKS && \ - H5_FP_TO_ULLONG_ACCURATE && defined(H5_FP_TO_ULLONG_RIGHT_MAXIMUM) && defined(H5_LDOUBLE_TO_LLONG_ACCURATE)) || \ - (!H5_WANT_DATA_ACCURACY && H5_LDOUBLE_TO_INTEGER_WORKS) -#define H5T_CONV_INTERNAL_LDOUBLE_ULLONG 1 -#else -#define H5T_CONV_INTERNAL_LDOUBLE_ULLONG 0 -#endif - /* Statistics about a conversion function */ struct H5T_stats_t { unsigned ncalls; /*num calls to conversion function */ |