diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2015-03-27 21:03:13 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2015-03-27 21:03:13 (GMT) |
commit | d4e0d3020ea03f71a3b2c289cacaf6ec5deb4b9a (patch) | |
tree | 0e15db908320499ab892cde921f3305f26320670 /config | |
parent | 0ea42d66677ffac366aec707fa448793ac5be6b6 (diff) | |
download | hdf5-d4e0d3020ea03f71a3b2c289cacaf6ec5deb4b9a.zip hdf5-d4e0d3020ea03f71a3b2c289cacaf6ec5deb4b9a.tar.gz hdf5-d4e0d3020ea03f71a3b2c289cacaf6ec5deb4b9a.tar.bz2 |
[svn-r26626] Description:
Bring r26587 from trunk to 1.8 branch:
Bring r26489 from autotools_rework branch to trunk:
Remove the ULONG_TO_FP_BOTTOM_BIT_ACCURATE macro/define, as it was added
for SGI systems and old Solaris systems, which are no longer supported.
Tested on:
Linux/32 2.6.18 (jam) w/serial & parallel
(Daily tested on trunk for 2+ days)
Diffstat (limited to 'config')
-rw-r--r-- | config/cmake/ConfigureChecks.cmake | 12 | ||||
-rw-r--r-- | config/cmake/ConversionTests.c | 66 | ||||
-rw-r--r-- | config/cmake/H5pubconf.h.in | 4 |
3 files changed, 0 insertions, 82 deletions
diff --git a/config/cmake/ConfigureChecks.cmake b/config/cmake/ConfigureChecks.cmake index 74fbd28..915ec56 100644 --- a/config/cmake/ConfigureChecks.cmake +++ b/config/cmake/ConfigureChecks.cmake @@ -260,18 +260,6 @@ ENDMACRO (H5MiscConversionTest) # ---------------------------------------------------------------------- # Set the flag to indicate that the machine can accurately convert -# 'unsigned (long) long' values to 'float' and 'double' values. -# (This flag should be set for all machines, except for the SGIs) and Solaris -# 64-bit machines, where the short program below tests if round-up is -# correctly handled. -# -if (CMAKE_SYSTEM MATCHES "solaris2.*") - H5ConversionTests (H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE "Checking IF accurately converting unsigned long long to floating-point values") -else (CMAKE_SYSTEM MATCHES "solaris2.*") - set (H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE 1) -endif (CMAKE_SYSTEM MATCHES "solaris2.*") -# ---------------------------------------------------------------------- -# Set the flag to indicate that the machine can accurately convert # 'float' or 'double' to 'unsigned long long' values. # (This flag should be set for all machines, except for PGI compiler # where round-up happens when the fraction of float-point value is greater diff --git a/config/cmake/ConversionTests.c b/config/cmake/ConversionTests.c index e157909..82342a4 100644 --- a/config/cmake/ConversionTests.c +++ b/config/cmake/ConversionTests.c @@ -409,69 +409,3 @@ done: #endif - -#ifdef H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE_TEST - -#include <string.h> - - -int main(void) -{ - unsigned long l1; - unsigned long l2; - unsigned long l3; - unsigned long l4; - unsigned long long ld1; - unsigned long long ld2; - unsigned long long ld3; - unsigned long long ld4; - double d1, d2, d3, d4; - unsigned char s[8]; - int ret = 0; - - if(sizeof(unsigned long)==8) { - l1 = 0xf000000000000b00UL; /*Round-down case*/ - l2 = 0xf000000000000401UL; /*Round-up case*/ - l3 = 0xf000000000000400UL; /*Round-down case*/ - l4 = 0xf000000000000c00UL; /*Round-up case*/ - - d1 = (double)l1; - d2 = (double)l2; - d3 = (double)l3; - d4 = (double)l4; - } else if(sizeof(unsigned long long)==8) { - ld1 = 0xf000000000000b00ULL; /*Round-down case*/ - ld2 = 0xf000000000000401ULL; /*Round-up case*/ - ld3 = 0xf000000000000400ULL; /*Round-down case*/ - ld4 = 0xf000000000000c00ULL; /*Round-up case*/ - - d1 = (double)ld1; - d2 = (double)ld2; - d3 = (double)ld3; - d4 = (double)ld4; - } else { - ret = 1; - goto done; - } - - memcpy(s, &d1, 8); - if(s[7]!=1) - ret = 1; - - memcpy(s, &d2, 8); - if(s[7]!=1) - ret = 1; - - memcpy(s, &d3, 8); - if(s[7]!=0) - ret = 1; - - memcpy(s, &d4, 8); - if(s[7]!=2) - ret = 1; - -done: - exit(ret); -} -} -#endif diff --git a/config/cmake/H5pubconf.h.in b/config/cmake/H5pubconf.h.in index 4b955be..0c45432 100644 --- a/config/cmake/H5pubconf.h.in +++ b/config/cmake/H5pubconf.h.in @@ -669,10 +669,6 @@ correct precision. */ #cmakedefine H5_ULLONG_TO_LDOUBLE_PRECISION @H5_ULLONG_TO_LDOUBLE_PRECISION@ -/* Define if your system can accurately convert unsigned (long) long values to - floating-point values. */ -#cmakedefine H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE @H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE@ - /* Define using v1.6 public API symbols by default */ #cmakedefine H5_USE_16_API_DEFAULT @H5_USE_16_API_DEFAULT@ |