mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-02-17 16:10:24 +08:00
[svn-r1108] Changes since 19990225
---------------------- ./INSTALL Added warnings and a disclaimer about GNU, DEC, Irix64, and NT compilers that generate incorrect machine code. ./configure.in ./src/H5private.h Detects and includes <sys/param.h> which is needed on FreeBSD before <sys/proc.h> even though we only really using anything from <sys/proc.h> on the DEC Alpha. ./config/irix64 Turned off warnings for duplicate definitions from the linker because -lnsl on irix has the same stuff in it as -lc. ./config/irix6.x Split up the CC and CFLAGS settings like with irix64 so that compilers besides `-n32' can be used. ./bin/snapshot The snapshots are tagged with names like hdf5-1_1_52 which is similar to the way the releases are tagged (cvs doesn't allow dots in tags). ./test/dtypes.c ./src/H5private.h ./src/H5Tconv.c Fixed some alignment violations on the DEC when using high optimization levels. The DEC incorrectly optimizes certain memcpy() and memmove() calls when the source argument is not word aligned if the call looks like it's copying an atomic data type. ./test/hyperslab Worked around code generation bugs in the Irix64 Mongoose 7.00 compiler by casting some `unsigned long' values to `unsigned' in an expression. ./src/H5Ocomp.c Fixed a place where %d was used to print a size_t.
This commit is contained in:
parent
efb18f8785
commit
912c5a0874
36
INSTALL
36
INSTALL
@ -18,9 +18,39 @@ can do the following:
|
||||
|
||||
$ make install # Optional
|
||||
|
||||
Note:
|
||||
For the users of the Intel TFLOPS machine, a special sequence of steps
|
||||
for the install may be found in the file: INSTALL.ascired.
|
||||
Note: For the users of the Intel TFLOPS machine, a special sequence of
|
||||
steps for the install may be found in the file: INSTALL.ascired.
|
||||
|
||||
OUTPUT FROM THE FOLLOWING COMPILERS SHOULD BE EXTREMELY SUSPECT WHEN
|
||||
USED TO COMPILE THE HDF5 LIBRARY, ESPECIALLY IF OPTIMIZATIONS ARE
|
||||
ENABLED. IN ALL CASES, HDF5 ATTEMPTS TO WORK AROUND THE COMPILER BUGS
|
||||
BUT THE HDF5 DEVELOPMENT TEAM MAKES NO GUARANTEES THAT THERE ARE OTHER
|
||||
CODE GENERATION PROBLEMS.
|
||||
|
||||
* GNU (Intel platforms)
|
||||
Versions before 2.8.1 have serious problems allocating
|
||||
registers when functions contain operations on `long long'
|
||||
data types. Supplying the `--disable-hsizet' switch to
|
||||
configure (documented below) will prevent hdf5 from using
|
||||
`long long' data types in situations that are known not to
|
||||
work, but it limits the hdf5 address space to 2GB.
|
||||
|
||||
* DEC
|
||||
The V5.2-038 compiler (and possibly others) occasionally
|
||||
generates incorrect code for memcpy() calls when optimizations
|
||||
are enabled, resulting in unaligned access faults. HDF5 works
|
||||
around the problem by casting the second argument to `char*'.
|
||||
|
||||
* SGI (Irix64 6.2)
|
||||
The Mongoose 7.00 compiler has serious optimization bugs and
|
||||
should be upgraded to MIPSpro 7.2.1.2m. Patches are available
|
||||
from SGI.
|
||||
|
||||
* Windows/NT
|
||||
The MicroSoft Win32 5.0 compiler is unable to cast unsigned
|
||||
long long values to doubles. HDF5 works around this bug by
|
||||
first casting to signed long long and then to double.
|
||||
|
||||
|
||||
=======
|
||||
Step 0: Install optional third-party packages.
|
||||
|
2
README
2
README
@ -1,4 +1,4 @@
|
||||
This is hdf5-1.1.52 released on Fri Feb 26 04:18:35 CST 1999
|
||||
This is hdf5-1.1.53 released on Fri Feb 26 09:31:50 CST 1999
|
||||
Please refer to the INSTALL file for installation instructions.
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
|
@ -71,10 +71,11 @@ if [ "$snapshot" = "yes" ]; then
|
||||
(cd ${COMPARE}/current; make distclean)
|
||||
fi
|
||||
|
||||
# Release snapshot, update version, and commit to cvs
|
||||
# Release snapshot, update version, and commit to cvs and tag
|
||||
if [ "$snapshot" = "yes" ]; then
|
||||
(
|
||||
cd ${COMPARE}/current
|
||||
cvs -Q tag hdf5-`./bin/h5vers |tr . _`
|
||||
./bin/release -d $ARCHIVES $METHODS
|
||||
./bin/h5vers -i
|
||||
cvs -Q commit -m Snapshot
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
# The default compiler is `cc' and there is no ranlib.
|
||||
if test "X-" = "X-$CC"; then
|
||||
CC=cc
|
||||
CC='cc -n32'
|
||||
CC_BASENAME=cc
|
||||
fi
|
||||
RANLIB=:
|
||||
@ -25,22 +25,32 @@ case "X-$CC_BASENAME" in
|
||||
;;
|
||||
|
||||
*)
|
||||
CFLAGS="$CFLAGS -ansi"
|
||||
|
||||
# Always turn off these compiler warnings:
|
||||
# 1174: function declared but not used
|
||||
# 1429: the `long long' type is not standard
|
||||
# 1209: constant expressions
|
||||
# 1196: __vfork() (this is an SGI config problem)
|
||||
CFLAGS="$CFLAGS -woff 1174,1429,1209,1196"
|
||||
|
||||
# Always turn off these loader warnings:
|
||||
# 47: linked module might degrade performance
|
||||
# 84: a library is not used
|
||||
# 85: duplicate definition preemption
|
||||
# 134: duplicate weak definition preemption
|
||||
CFLAGS="$CFLAGS -ansi -n32 -woff 1174,1429,1209,1196 -Wl,-woff,47 -Wl,-woff,84 -Wl,-woff,85 -Wl,-woff,134"
|
||||
CFLAGS="$CFLAGS -Wl,-woff,47,-woff,84,-woff,85,-woff,134"
|
||||
|
||||
# Extra debugging flags
|
||||
DEBUG_CFLAGS=-g
|
||||
DEBUG_CPPFLAGS=
|
||||
# Higher optimizations relax alignment requirements needed
|
||||
|
||||
# Extra production flags
|
||||
# Note: higher optimizations relax alignment requirements needed.
|
||||
PROD_CFLAGS=-O1
|
||||
PROD_CPPFLAGS=
|
||||
|
||||
# Extra profiling flags
|
||||
PROFILE_CFLAGS=-pg
|
||||
PROFILE_CPPFLAGS=
|
||||
;;
|
||||
|
@ -46,7 +46,9 @@ case "X-$CC_BASENAME" in
|
||||
# (notice the peculiar syntax)
|
||||
# 47: branch instructions that degrade performance on R4000
|
||||
# 84: a library is not used
|
||||
CFLAGS="$CFLAGS -Wl,-woff,47 -Wl,-woff,84"
|
||||
# 85: duplicate definition preemption (from -lnsl)
|
||||
# 134: duplicate weak definition preemption (from -lnsl)
|
||||
CFLAGS="$CFLAGS -Wl,-woff,47,-woff,84,-woff,85,-woff,134"
|
||||
|
||||
# Extra debugging flags
|
||||
DEBUG_CFLAGS="-g -fullwarn"
|
||||
|
@ -143,7 +143,7 @@ AC_HEADER_STDC
|
||||
AC_HEADER_TIME
|
||||
dnl Unix
|
||||
AC_CHECK_HEADERS(sys/resource.h sys/time.h unistd.h sys/ioctl.h sys/stat.h)
|
||||
AC_CHECK_HEADERS(stddef.h)
|
||||
AC_CHECK_HEADERS(stddef.h sys/sysinfo.h sys/proc.h sys/param.h)
|
||||
dnl Windows
|
||||
AC_CHECK_HEADERS(io.h winsock.h sys/timeb.h)
|
||||
|
||||
@ -348,7 +348,7 @@ dnl ----------------------------------------------------------------------
|
||||
dnl How do we figure out the width of a tty in characters?
|
||||
dnl
|
||||
AC_CHECK_FUNCS(_getvideoconfig gettextinfo GetConsoleScreenBufferInfo)
|
||||
AC_CHECK_FUNCS(_scrsize ioctl compress2)
|
||||
AC_CHECK_FUNCS(_scrsize ioctl compress2 setsysinfo)
|
||||
|
||||
AC_MSG_CHECKING(for struct videoconfig)
|
||||
AC_TRY_COMPILE(,[struct videoconfig w; w.numtextcols=0;],
|
||||
|
2026
src/.distdep
2026
src/.distdep
File diff suppressed because it is too large
Load Diff
@ -449,7 +449,7 @@ H5O_pline_debug (H5F_t __unused__ *f, const void *mesg, FILE *stream,
|
||||
(unsigned long)(pline->filter[i].cd_nelmts));
|
||||
for (j=0; j<pline->filter[i].cd_nelmts; j++) {
|
||||
char field_name[32];
|
||||
sprintf(field_name, "CD value %d", j);
|
||||
sprintf(field_name, "CD value %lu", (unsigned long)j);
|
||||
fprintf(stream, "%*s%-*s %lu\n", indent+6, "", MAX(0, fwidth-6),
|
||||
field_name,
|
||||
(unsigned long)(pline->filter[i].cd_values[j]));
|
||||
|
@ -305,7 +305,7 @@ static intn interface_initialize_g = 0;
|
||||
if (d_mv) priv->d_aligned += nelmts; \
|
||||
for (elmtno=0; elmtno<nelmts; elmtno++, DIR src, DIR dst) { \
|
||||
if (s_mv) { \
|
||||
memcpy(&aligned, src, sizeof(ST)); \
|
||||
HDmemcpy(&aligned, src, sizeof(ST)); \
|
||||
s = (ST*)&aligned; \
|
||||
} else { \
|
||||
s = src; \
|
||||
@ -317,7 +317,7 @@ static intn interface_initialize_g = 0;
|
||||
}
|
||||
/* ... user-defined stuff here ... */
|
||||
#define CI_END \
|
||||
if (d_mv) memcpy(dst, &aligned, dt_size); \
|
||||
if (d_mv) HDmemcpy(dst, &aligned, dt_size); \
|
||||
} \
|
||||
break; \
|
||||
default: \
|
||||
@ -4718,7 +4718,7 @@ H5T_conv_float_double (hid_t src_id, hid_t dst_id, H5T_cdata_t *cdata,
|
||||
for (elmtno=0; elmtno<nelmts; elmtno++, --src, --dst) {
|
||||
/* Align source and/or destination */
|
||||
if (src_mv) {
|
||||
memcpy(&aligned, src, sizeof(float));
|
||||
HDmemcpy(&aligned, src, sizeof(float));
|
||||
s = (float*)&aligned;
|
||||
} else {
|
||||
s = src;
|
||||
@ -4730,7 +4730,7 @@ H5T_conv_float_double (hid_t src_id, hid_t dst_id, H5T_cdata_t *cdata,
|
||||
*d = *s;
|
||||
|
||||
/* Unalign destination */
|
||||
if (dst_mv) memcpy(dst, &aligned, sizeof(double));
|
||||
if (dst_mv) HDmemcpy(dst, &aligned, sizeof(double));
|
||||
}
|
||||
break;
|
||||
|
||||
@ -4821,7 +4821,7 @@ H5T_conv_double_float (hid_t src_id, hid_t dst_id, H5T_cdata_t *cdata,
|
||||
for (elmtno=0; elmtno<nelmts; elmtno++, src++, dst++) {
|
||||
/* Align source and/or destination */
|
||||
if (src_mv) {
|
||||
memcpy(&aligned, src, sizeof(double));
|
||||
HDmemcpy(&aligned, src, sizeof(double));
|
||||
s = (double*)&aligned;
|
||||
} else {
|
||||
s = src;
|
||||
@ -4845,7 +4845,7 @@ H5T_conv_double_float (hid_t src_id, hid_t dst_id, H5T_cdata_t *cdata,
|
||||
}
|
||||
|
||||
/* Unalign destination */
|
||||
if (dst_mv) memcpy(dst, &aligned, sizeof(float));
|
||||
if (dst_mv) HDmemcpy(dst, &aligned, sizeof(float));
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -176,6 +176,9 @@
|
||||
/* Define if you have the lseek64 function. */
|
||||
#undef HAVE_LSEEK64
|
||||
|
||||
/* Define if you have the setsysinfo function. */
|
||||
#undef HAVE_SETSYSINFO
|
||||
|
||||
/* Define if you have the sigaction function. */
|
||||
#undef HAVE_SIGACTION
|
||||
|
||||
@ -200,12 +203,21 @@
|
||||
/* Define if you have the <sys/ioctl.h> header file. */
|
||||
#undef HAVE_SYS_IOCTL_H
|
||||
|
||||
/* Define if you have the <sys/param.h> header file. */
|
||||
#undef HAVE_SYS_PARAM_H
|
||||
|
||||
/* Define if you have the <sys/proc.h> header file. */
|
||||
#undef HAVE_SYS_PROC_H
|
||||
|
||||
/* Define if you have the <sys/resource.h> header file. */
|
||||
#undef HAVE_SYS_RESOURCE_H
|
||||
|
||||
/* Define if you have the <sys/stat.h> header file. */
|
||||
#undef HAVE_SYS_STAT_H
|
||||
|
||||
/* Define if you have the <sys/sysinfo.h> header file. */
|
||||
#undef HAVE_SYS_SYSINFO_H
|
||||
|
||||
/* Define if you have the <sys/time.h> header file. */
|
||||
#undef HAVE_SYS_TIME_H
|
||||
|
||||
|
@ -898,6 +898,22 @@ main(void)
|
||||
detected_t d[MAXDETECT];
|
||||
int nd = 0;
|
||||
|
||||
#if defined(HAVE_SETSYSINFO) && defined(SSI_NVPAIRS)
|
||||
#if defined(UAC_NOPRINT) && defined(UAC_SIGBUS)
|
||||
/*
|
||||
* Make sure unaligned access generates SIGBUS and doesn't print warning
|
||||
* messages so that we can detect alignment constraints on the DEC Alpha.
|
||||
*/
|
||||
int nvpairs[2];
|
||||
nvpairs[0] = SSIN_UACPROC;
|
||||
nvpairs[1] = UAC_NOPRINT | UAC_SIGBUS;
|
||||
if (setsysinfo(SSI_NVPAIRS, nvpairs, 1, 0, 0)<0) {
|
||||
fprintf(stderr, "H5detect: unable to turn off UAC handling: %s\n",
|
||||
strerror(errno));
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
print_header();
|
||||
|
||||
DETECT_I(signed char, SCHAR, d[nd]); nd++;
|
||||
|
@ -89,6 +89,23 @@
|
||||
# include <sys/ioctl.h>
|
||||
#endif
|
||||
|
||||
/*
|
||||
* System information. These are needed on the DEC Alpha to turn off fixing
|
||||
* of unaligned accesses by the operating system during detection of
|
||||
* alignment constraints in H5detect.c:main(). The <sys/param.h> must be
|
||||
* included before <sys/proc.h> on FreeBSD even though we never use anything
|
||||
* from either header file on that system.
|
||||
*/
|
||||
#ifdef HAVE_SYS_SYSINFO_H
|
||||
# include <sys/sysinfo.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_PARAM_H
|
||||
# include <sys/param.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_PROC_H
|
||||
# include <sys/proc.h>
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Win32 is severely broken when it comes to ANSI-C and Posix.1 compliance.
|
||||
*/
|
||||
@ -540,8 +557,12 @@ __DLL__ int HDfprintf (FILE *stream, const char *fmt, ...);
|
||||
#define HDmbtowc(P,S,Z) mbtowc(P,S,Z)
|
||||
#define HDmemchr(S,C,Z) memchr(S,C,Z)
|
||||
#define HDmemcmp(X,Y,Z) memcmp(X,Y,Z)
|
||||
#define HDmemcpy(X,Y,Z) memcpy(X,Y,Z)
|
||||
#define HDmemmove(X,Y,Z) memmove(X,Y,Z)
|
||||
/*
|
||||
* The (char*) casts are required for the DEC when optimizations are turned
|
||||
* on and the source and/or destination are not aligned.
|
||||
*/
|
||||
#define HDmemcpy(X,Y,Z) memcpy((char*)(X),(const char*)(Y),Z)
|
||||
#define HDmemmove(X,Y,Z) memmove((char*)(X),(const char*)(Y),Z)
|
||||
#define HDmemset(X,C,Z) memset(X,C,Z)
|
||||
#define HDmkdir(S,M) mkdir(S,M)
|
||||
#define HDmkfifo(S,M) mkfifo(S,M)
|
||||
|
494
test/.distdep
494
test/.distdep
@ -30,6 +30,38 @@ h5test.o: \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
big.o: \
|
||||
big.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
bittests.o: \
|
||||
bittests.c \
|
||||
h5test.h \
|
||||
@ -87,6 +119,102 @@ chunk.o: \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h
|
||||
cmpd_dset.o: \
|
||||
cmpd_dset.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
dsets.o: \
|
||||
dsets.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
dtypes.o: \
|
||||
dtypes.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
extend.o: \
|
||||
extend.c \
|
||||
h5test.h \
|
||||
@ -119,6 +247,38 @@ extend.o: \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
external.o: \
|
||||
external.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
fillval.o: \
|
||||
fillval.c \
|
||||
h5test.h \
|
||||
@ -250,12 +410,6 @@ gheap.o: \
|
||||
../src/H5Gprivate.h \
|
||||
../src/H5Bprivate.h \
|
||||
../src/H5Eprivate.h
|
||||
hyperslab.o: \
|
||||
hyperslab.c \
|
||||
../src/H5private.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h
|
||||
iopipe.o: \
|
||||
iopipe.c \
|
||||
../src/hdf5.h \
|
||||
@ -421,6 +575,76 @@ mount.o: \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
mtime.o: \
|
||||
mtime.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
ohdr.o: \
|
||||
ohdr.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h \
|
||||
../src/H5Gprivate.h \
|
||||
../src/H5Bprivate.h \
|
||||
../src/H5Iprivate.h \
|
||||
../src/H5Oprivate.h \
|
||||
../src/H5Sprivate.h \
|
||||
../src/H5Zprivate.h
|
||||
overhead.o: \
|
||||
overhead.c \
|
||||
../src/hdf5.h \
|
||||
@ -531,14 +755,18 @@ tattr.o: \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h
|
||||
testhdf5.o: \
|
||||
testhdf5.c \
|
||||
testhdf5.h \
|
||||
../src/H5private.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Eprivate.h \
|
||||
../src/H5Epublic.h
|
||||
tfile.o: \
|
||||
tfile.c \
|
||||
testhdf5.h \
|
||||
@ -553,8 +781,7 @@ tfile.o: \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Pprivate.h
|
||||
../src/H5Dpublic.h
|
||||
th5s.o: \
|
||||
th5s.c \
|
||||
testhdf5.h \
|
||||
@ -581,8 +808,7 @@ th5s.o: \
|
||||
../src/H5Tprivate.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5Zprivate.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Pprivate.h
|
||||
../src/H5Zpublic.h
|
||||
tmeta.o: \
|
||||
tmeta.c \
|
||||
testhdf5.h \
|
||||
@ -592,7 +818,9 @@ tmeta.o: \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Eprivate.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Ipublic.h
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Fpublic.h
|
||||
trefer.o: \
|
||||
trefer.c \
|
||||
testhdf5.h \
|
||||
@ -617,7 +845,9 @@ trefer.o: \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h
|
||||
tselect.o: \
|
||||
tselect.c \
|
||||
testhdf5.h \
|
||||
@ -642,7 +872,9 @@ tselect.o: \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h
|
||||
unlink.o: \
|
||||
unlink.c \
|
||||
h5test.h \
|
||||
@ -675,172 +907,6 @@ unlink.o: \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
external.o: \
|
||||
external.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
big.o: \
|
||||
big.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
cmpd_dset.o: \
|
||||
cmpd_dset.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
mtime.o: \
|
||||
mtime.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
ohdr.o: \
|
||||
ohdr.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h \
|
||||
../src/H5Gprivate.h \
|
||||
../src/H5Bprivate.h \
|
||||
../src/H5Iprivate.h \
|
||||
../src/H5Oprivate.h \
|
||||
../src/H5Sprivate.h \
|
||||
../src/H5Zprivate.h
|
||||
enum.o: \
|
||||
enum.c \
|
||||
h5test.h \
|
||||
@ -873,67 +939,11 @@ enum.o: \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
dsets.o: \
|
||||
dsets.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
hyperslab.o: \
|
||||
hyperslab.c \
|
||||
../src/H5private.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
dtypes.o: \
|
||||
dtypes.c \
|
||||
h5test.h \
|
||||
../src/hdf5.h \
|
||||
../src/H5public.h \
|
||||
../src/H5config.h \
|
||||
../src/H5api_adpt.h \
|
||||
../src/H5Ipublic.h \
|
||||
../src/H5Apublic.h \
|
||||
../src/H5ACpublic.h \
|
||||
../src/H5Bpublic.h \
|
||||
../src/H5Dpublic.h \
|
||||
../src/H5Epublic.h \
|
||||
../src/H5Fpublic.h \
|
||||
../src/H5Gpublic.h \
|
||||
../src/H5HGpublic.h \
|
||||
../src/H5HLpublic.h \
|
||||
../src/H5MFpublic.h \
|
||||
../src/H5MMpublic.h \
|
||||
../src/H5Opublic.h \
|
||||
../src/H5Ppublic.h \
|
||||
../src/H5Zpublic.h \
|
||||
../src/H5Rpublic.h \
|
||||
../src/H5RApublic.h \
|
||||
../src/H5Spublic.h \
|
||||
../src/H5Tpublic.h \
|
||||
../src/H5private.h \
|
||||
../src/H5Tpkg.h \
|
||||
../src/H5HGprivate.h \
|
||||
../src/H5Fprivate.h \
|
||||
../src/H5Rprivate.h \
|
||||
../src/H5Tprivate.h
|
||||
../src/H5MMprivate.h \
|
||||
../src/H5MMpublic.h
|
||||
|
553
test/dtypes.c
553
test/dtypes.c
@ -1294,7 +1294,7 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
unsigned char dst_bits[32]; /*dest value in LE order*/
|
||||
size_t src_nbits; /*source length in bits */
|
||||
size_t dst_nbits; /*dst length in bits */
|
||||
long_long aligned; /*restrictive alignment */
|
||||
void *aligned=NULL; /*aligned temp buffer */
|
||||
signed char hw_char;
|
||||
unsigned char hw_uchar;
|
||||
short hw_short;
|
||||
@ -1395,6 +1395,7 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
dst_size = H5Tget_size(dst);
|
||||
buf = aligned_malloc(nelmts*MAX(src_size, dst_size));
|
||||
saved = aligned_malloc(nelmts*MAX(src_size, dst_size));
|
||||
aligned = malloc(sizeof(long_long));
|
||||
#ifdef SHOW_OVERFLOWS
|
||||
noverflows_g = 0;
|
||||
#endif
|
||||
@ -1428,47 +1429,49 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_char;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j, sizeof(char));
|
||||
hw_char = (char)(*((signed char*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(char), sizeof(char));
|
||||
hw_char = (char)(*((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j, sizeof(char));
|
||||
hw_char = (char)(*((unsigned char*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(char), sizeof(char));
|
||||
hw_char = (char)(*((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_char = (char)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_char = (char)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_char = (char)(*((unsigned short*)&aligned));
|
||||
hw_char = (char)(*((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_char = (char)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_char = (char)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_char = (char)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_char = (char)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_char = (char)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_char = (char)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_char = (char)(*((unsigned long*)&aligned));
|
||||
hw_char = (char)(*((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_char = (char)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_char = (char)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_char = (char)(*((unsigned long_long*)&aligned));
|
||||
hw_char = (char)(*((unsigned long_long*)aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -1477,50 +1480,52 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_uchar;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(signed char));
|
||||
hw_uchar = (unsigned char)(*((signed char*)&aligned));
|
||||
hw_uchar = (unsigned char)(*((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(unsigned char));
|
||||
hw_uchar = (unsigned char)(*((unsigned char*)&aligned));
|
||||
hw_uchar = (unsigned char)(*((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_uchar = (unsigned char)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_uchar = (unsigned char)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_uchar = (unsigned char)(*((unsigned short*)&aligned));
|
||||
hw_uchar = (unsigned char)(*((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_uchar = (unsigned char)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_uchar = (unsigned char)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_uchar = (unsigned char)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_uchar = (unsigned char)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_uchar = (unsigned char)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_uchar = (unsigned char)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_uchar = (unsigned char)(*((unsigned long*)&aligned));
|
||||
hw_uchar = (unsigned char)(*((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_uchar = (unsigned char)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_uchar = (unsigned char)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_uchar = (unsigned char)(*((unsigned long_long*)
|
||||
&aligned));
|
||||
aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -1529,49 +1534,50 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_short;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j,
|
||||
sizeof(signed char));
|
||||
hw_short = (short)(*((signed char*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(char), sizeof(signed char));
|
||||
hw_short = (short)(*((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(unsigned char));
|
||||
hw_short = (short)(*((unsigned char*)&aligned));
|
||||
hw_short = (short)(*((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_short = (short)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_short = (short)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_short = (short)(*((unsigned short*)&aligned));
|
||||
hw_short = (short)(*((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_short = (short)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_short = (short)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_short = (short)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_short = (short)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_short = (short)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_short = (short)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_short = (short)(*((unsigned long*)&aligned));
|
||||
hw_short = (short)(*((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_short = (short)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_short = (short)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_short = (short)(*((unsigned long_long*)&aligned));
|
||||
hw_short = (short)(*((unsigned long_long*)aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -1580,50 +1586,51 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_ushort;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j,
|
||||
sizeof(signed char));
|
||||
hw_ushort = (unsigned short)(*((signed char*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(char), sizeof(signed char));
|
||||
hw_ushort = (unsigned short)(*((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(unsigned char));
|
||||
hw_ushort = (unsigned short)(*((unsigned char*)&aligned));
|
||||
hw_ushort = (unsigned short)(*((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_ushort = (unsigned short)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_ushort = (unsigned short)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_ushort = (unsigned short)(*((unsigned short*)&aligned));
|
||||
hw_ushort = (unsigned short)(*((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_ushort = (unsigned short)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_ushort = (unsigned short)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_ushort = (unsigned short)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_ushort = (unsigned short)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_ushort = (unsigned short)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_ushort = (unsigned short)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_ushort = (unsigned short)(*((unsigned long*)&aligned));
|
||||
hw_ushort = (unsigned short)(*((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_ushort = (unsigned short)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_ushort = (unsigned short)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_ushort = (unsigned short)(*((unsigned long_long*)
|
||||
&aligned));
|
||||
aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -1632,49 +1639,50 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_int;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j,
|
||||
sizeof(signed char));
|
||||
hw_int = (int)(*((signed char*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(char), sizeof(signed char));
|
||||
hw_int = (int)(*((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(unsigned char));
|
||||
hw_int = (int)(*((unsigned char*)&aligned));
|
||||
hw_int = (int)(*((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_int = (int)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_int = (int)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_int = (int)(*((unsigned short*)&aligned));
|
||||
hw_int = (int)(*((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_int = (int)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_int = (int)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_int = (int)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_int = (int)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_int = (int)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_int = (int)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_int = (int)(*((unsigned long*)&aligned));
|
||||
hw_int = (int)(*((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_int = (int)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_int = (int)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_int = (int)(*((unsigned long_long*)&aligned));
|
||||
hw_int = (int)(*((unsigned long_long*)aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -1683,49 +1691,51 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_uint;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(signed char));
|
||||
hw_uint = (unsigned int)(*((signed char*)&aligned));
|
||||
hw_uint = (unsigned int)(*((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(unsigned char));
|
||||
hw_uint = (unsigned int)(*((unsigned char*)&aligned));
|
||||
hw_uint = (unsigned int)(*((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_uint = (unsigned int)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_uint = (unsigned int)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_uint = (unsigned int)(*((unsigned short*)&aligned));
|
||||
hw_uint = (unsigned int)(*((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_uint = (unsigned int)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_uint = (unsigned int)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_uint = (unsigned int)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_uint = (unsigned int)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_uint = (unsigned int)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_uint = (unsigned int)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_uint = (unsigned int)(*((unsigned long*)&aligned));
|
||||
hw_uint = (unsigned int)(*((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_uint = (unsigned int)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_uint = (unsigned int)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_uint = (unsigned int)(*((unsigned long_long*)&aligned));
|
||||
hw_uint = (unsigned int)(*((unsigned long_long*)aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -1734,49 +1744,51 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_long;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(signed char));
|
||||
hw_long = (long int)(*((signed char*)&aligned));
|
||||
hw_long = (long int)(*((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(unsigned char));
|
||||
hw_long = (long int)(*((unsigned char*)&aligned));
|
||||
hw_long = (long int)(*((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_long = (long int)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_long = (long int)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_long = (long int)(*((unsigned short*)&aligned));
|
||||
hw_long = (long int)(*((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_long = (long int)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_long = (long int)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_long = (long int)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_long = (long int)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_long = (long int)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_long = (long int)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_long = (long int)(*((unsigned long*)&aligned));
|
||||
hw_long = (long int)(*((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_long = (long int)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_long = (long int)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_long = (long int)(*((unsigned long_long*)&aligned));
|
||||
hw_long = (long int)(*((unsigned long_long*)aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -1785,50 +1797,52 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_ulong;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(signed char));
|
||||
hw_ulong = (unsigned long)(*((signed char*)&aligned));
|
||||
hw_ulong = (unsigned long)(*((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(unsigned char));
|
||||
hw_ulong = (unsigned long)(*((unsigned char*)&aligned));
|
||||
hw_ulong = (unsigned long)(*((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_ulong = (unsigned long)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_ulong = (unsigned long)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_ulong = (unsigned long)(*((unsigned short*)&aligned));
|
||||
hw_ulong = (unsigned long)(*((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_ulong = (unsigned long)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_ulong = (unsigned long)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_ulong = (unsigned long)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_ulong = (unsigned long)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_ulong = (unsigned long)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_ulong = (unsigned long)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_ulong = (unsigned long)(*((unsigned long*)&aligned));
|
||||
hw_ulong = (unsigned long)(*((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_ulong = (unsigned long)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_ulong = (unsigned long)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_ulong = (unsigned long)(*((unsigned long_long*)
|
||||
&aligned));
|
||||
aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -1837,49 +1851,51 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_llong;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(signed char));
|
||||
hw_llong = (long_long)(*((signed char*)&aligned));
|
||||
hw_llong = (long_long)(*((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(unsigned char));
|
||||
hw_llong = (long_long)(*((unsigned char*)&aligned));
|
||||
hw_llong = (long_long)(*((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_llong = (long_long)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_llong = (long_long)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_llong = (long_long)(*((unsigned short*)&aligned));
|
||||
hw_llong = (long_long)(*((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_llong = (long_long)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_llong = (long_long)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_llong = (long_long)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_llong = (long_long)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_llong = (long_long)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_llong = (long_long)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_llong = (long_long)(*((unsigned long*)&aligned));
|
||||
hw_llong = (long_long)(*((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_llong = (long_long)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_llong = (long_long)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_llong = (long_long)(*((unsigned long_long*)&aligned));
|
||||
hw_llong = (long_long)(*((unsigned long_long*)aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -1888,54 +1904,56 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
hw = (unsigned char*)&hw_ullong;
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(signed char));
|
||||
hw_ullong = (unsigned long_long)(*((signed char*)
|
||||
&aligned));
|
||||
aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(char),
|
||||
sizeof(unsigned char));
|
||||
hw_ullong = (unsigned long_long)(*((unsigned char*)
|
||||
&aligned));
|
||||
aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
hw_ullong = (unsigned long_long)(*((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
hw_ullong = (unsigned long_long)(*((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
hw_ullong = (unsigned long_long)(*((unsigned short*)
|
||||
&aligned));
|
||||
aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
hw_ullong = (unsigned long_long)(*((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
hw_ullong = (unsigned long_long)(*((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
hw_ullong = (unsigned long_long)(*((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned),
|
||||
sizeof(unsigned));
|
||||
hw_ullong = (unsigned long_long)(*((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
hw_ullong = (unsigned long_long)(*((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
hw_ullong = (unsigned long_long)(*((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long),
|
||||
sizeof(unsigned long));
|
||||
hw_ullong = (unsigned long_long)(*((unsigned long*)
|
||||
&aligned));
|
||||
aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
hw_ullong = (unsigned long_long)(*((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(long_long));
|
||||
hw_ullong = (unsigned long_long)(*((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
hw_ullong = (unsigned long_long)(*((unsigned long_long*)
|
||||
&aligned));
|
||||
aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -2073,49 +2091,47 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
printf("%*s", 3*MAX(0, (ssize_t)dst_size-(ssize_t)src_size), "");
|
||||
switch (src_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j, sizeof(signed char));
|
||||
printf(" %29d\n", *((signed char*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(char), sizeof(signed char));
|
||||
printf(" %29d\n", *((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
sizeof(unsigned char));
|
||||
printf(" %29u\n", *((unsigned char*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(char), sizeof(unsigned char));
|
||||
printf(" %29u\n", *((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
printf(" %29d\n", *((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
printf(" %29d\n", *((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(short),
|
||||
sizeof(unsigned short));
|
||||
printf(" %29u\n", *((unsigned short*)&aligned));
|
||||
printf(" %29u\n", *((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
printf(" %29d\n", *((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
printf(" %29d\n", *((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
printf(" %29u\n", *((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned), sizeof(unsigned));
|
||||
printf(" %29u\n", *((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
printf(" %29ld\n", *((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
printf(" %29ld\n", *((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
sizeof(unsigned long));
|
||||
printf(" %29lu\n", *((unsigned long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(unsigned long));
|
||||
printf(" %29lu\n", *((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
printf(" %29"PRINTF_LL_WIDTH"d\n", *((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long), sizeof(long_long));
|
||||
printf(" %29"PRINTF_LL_WIDTH"d\n", *((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
printf(" %29"PRINTF_LL_WIDTH"u\n",
|
||||
*((unsigned long_long*)&aligned));
|
||||
*((unsigned long_long*)aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -2128,49 +2144,46 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
printf("%*s", 3*MAX(0, (ssize_t)src_size-(ssize_t)dst_size), "");
|
||||
switch (dst_type) {
|
||||
case INT_CHAR:
|
||||
memcpy(&aligned, (signed char*)saved+j, sizeof(signed char));
|
||||
printf(" %29d\n", *((signed char*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(char), sizeof(signed char));
|
||||
printf(" %29d\n", *((signed char*)aligned));
|
||||
break;
|
||||
case INT_UCHAR:
|
||||
memcpy(&aligned, (unsigned char*)saved+j,
|
||||
sizeof(unsigned char));
|
||||
printf(" %29u\n", *((unsigned char*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(char), sizeof(unsigned char));
|
||||
printf(" %29u\n", *((unsigned char*)aligned));
|
||||
break;
|
||||
case INT_SHORT:
|
||||
memcpy(&aligned, (short*)saved+j, sizeof(short));
|
||||
printf(" %29d\n", *((short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(short));
|
||||
printf(" %29d\n", *((short*)aligned));
|
||||
break;
|
||||
case INT_USHORT:
|
||||
memcpy(&aligned, (unsigned short*)saved+j,
|
||||
sizeof(unsigned short));
|
||||
printf(" %29u\n", *((unsigned short*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(short), sizeof(unsigned short));
|
||||
printf(" %29u\n", *((unsigned short*)aligned));
|
||||
break;
|
||||
case INT_INT:
|
||||
memcpy(&aligned, (int*)saved+j, sizeof(int));
|
||||
printf(" %29d\n", *((int*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(int), sizeof(int));
|
||||
printf(" %29d\n", *((int*)aligned));
|
||||
break;
|
||||
case INT_UINT:
|
||||
memcpy(&aligned, (unsigned*)saved+j, sizeof(unsigned));
|
||||
printf(" %29u\n", *((unsigned*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(unsigned), sizeof(unsigned));
|
||||
printf(" %29u\n", *((unsigned*)aligned));
|
||||
break;
|
||||
case INT_LONG:
|
||||
memcpy(&aligned, (long*)saved+j, sizeof(long));
|
||||
printf(" %29ld\n", *((long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(long));
|
||||
printf(" %29ld\n", *((long*)aligned));
|
||||
break;
|
||||
case INT_ULONG:
|
||||
memcpy(&aligned, (unsigned long*)saved+j,
|
||||
sizeof(unsigned long));
|
||||
printf(" %29lu\n", *((unsigned long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long), sizeof(unsigned long));
|
||||
printf(" %29lu\n", *((unsigned long*)aligned));
|
||||
break;
|
||||
case INT_LLONG:
|
||||
memcpy(&aligned, (long_long*)saved+j, sizeof(long_long));
|
||||
printf(" %29"PRINTF_LL_WIDTH"d\n", *((long_long*)&aligned));
|
||||
memcpy(aligned, saved+j*sizeof(long_long), sizeof(long_long));
|
||||
printf(" %29"PRINTF_LL_WIDTH"d\n", *((long_long*)aligned));
|
||||
break;
|
||||
case INT_ULLONG:
|
||||
memcpy(&aligned, (unsigned long_long*)saved+j,
|
||||
memcpy(aligned, saved+j*sizeof(long_long),
|
||||
sizeof(unsigned long_long));
|
||||
printf(" %29"PRINTF_LL_WIDTH"u\n",
|
||||
*((unsigned long_long*)&aligned));
|
||||
*((unsigned long_long*)aligned));
|
||||
break;
|
||||
case INT_OTHER:
|
||||
break;
|
||||
@ -2233,6 +2246,7 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
done:
|
||||
if (buf) aligned_free(buf);
|
||||
if (saved) aligned_free(saved);
|
||||
if (aligned) free(aligned);
|
||||
fflush(stdout);
|
||||
reset_hdf5(); /*print statistics*/
|
||||
return (int)fails_all_tests;
|
||||
@ -2240,6 +2254,7 @@ test_conv_int_1(const char *name, hid_t src, hid_t dst)
|
||||
error:
|
||||
if (buf) aligned_free(buf);
|
||||
if (saved) aligned_free(saved);
|
||||
if (aligned) free(aligned);
|
||||
fflush(stdout);
|
||||
reset_hdf5(); /*print statistics*/
|
||||
return MAX((int)fails_all_tests, 1);
|
||||
@ -2350,11 +2365,9 @@ test_conv_flt_1 (const char *name, hid_t src, hid_t dst)
|
||||
char str[256]; /*hello string */
|
||||
float hw_f; /*hardware-converted */
|
||||
double hw_d; /*hardware-converted */
|
||||
void *aligned=NULL; /*aligned buffer */
|
||||
#if SIZEOF_LONG_DOUBLE!=SIZEOF_DOUBLE
|
||||
long double hw_ld; /*hardware-converted */
|
||||
long double aligned; /*aligned value */
|
||||
#else
|
||||
double aligned; /*aligned value */
|
||||
#endif
|
||||
unsigned char *hw=NULL; /*ptr to hardware-conv'd*/
|
||||
size_t i, j, k; /*counters */
|
||||
@ -2444,6 +2457,7 @@ test_conv_flt_1 (const char *name, hid_t src, hid_t dst)
|
||||
dst_size = H5Tget_size(dst);
|
||||
buf = aligned_malloc(nelmts*MAX(src_size, dst_size));
|
||||
saved = aligned_malloc(nelmts*MAX(src_size, dst_size));
|
||||
aligned = malloc(16); /*should be big enough for any type*/
|
||||
#ifdef SHOW_OVERFLOWS
|
||||
noverflows_g = 0;
|
||||
#endif
|
||||
@ -2516,44 +2530,45 @@ test_conv_flt_1 (const char *name, hid_t src, hid_t dst)
|
||||
|
||||
/* The hardware conversion */
|
||||
if (FLT_FLOAT==src_type) {
|
||||
memcpy(&aligned, (float*)saved+j, sizeof(float));
|
||||
memcpy(aligned, saved+j*sizeof(float), sizeof(float));
|
||||
if (FLT_FLOAT==dst_type) {
|
||||
hw_f = *((float*)&aligned);
|
||||
hw_f = *((float*)aligned);
|
||||
hw = (unsigned char*)&hw_f;
|
||||
} else if (FLT_DOUBLE==dst_type) {
|
||||
hw_d = *((float*)&aligned);
|
||||
hw_d = *((float*)aligned);
|
||||
hw = (unsigned char*)&hw_d;
|
||||
#if SIZEOF_LONG_DOUBLE!=SIZEOF_DOUBLE
|
||||
} else {
|
||||
hw_ld = *((float*)&aligned);
|
||||
hw_ld = *((float*)aligned);
|
||||
hw = (unsigned char*)&hw_ld;
|
||||
#endif
|
||||
}
|
||||
} else if (FLT_DOUBLE==src_type) {
|
||||
memcpy(&aligned, (double*)saved+j, sizeof(double));
|
||||
memcpy(aligned, saved+j*sizeof(double), sizeof(double));
|
||||
if (FLT_FLOAT==dst_type) {
|
||||
hw_f = *((double*)&aligned);
|
||||
hw_f = *((double*)aligned);
|
||||
hw = (unsigned char*)&hw_f;
|
||||
} else if (FLT_DOUBLE==dst_type) {
|
||||
hw_d = *((double*)&aligned);
|
||||
hw_d = *((double*)aligned);
|
||||
hw = (unsigned char*)&hw_d;
|
||||
#if SIZEOF_LONG_DOUBLE!=SIZEOF_DOUBLE
|
||||
} else {
|
||||
hw_ld = *((double*)&aligned);
|
||||
hw_ld = *((double*)aligned);
|
||||
hw = (unsigned char*)&hw_ld;
|
||||
#endif
|
||||
}
|
||||
#if SIZEOF_LONG_DOUBLE!=SIZEOF_DOUBLE
|
||||
} else {
|
||||
memcpy(&aligned, (long double*)saved+j, sizeof(long double));
|
||||
memcpy(aligned, saved+j*sizeof(long double),
|
||||
sizeof(long double));
|
||||
if (FLT_FLOAT==dst_type) {
|
||||
hw_f = *((long double*)&aligned);
|
||||
hw_f = *((long double*)aligned);
|
||||
hw = (unsigned char*)&hw_f;
|
||||
} else if (FLT_DOUBLE==dst_type) {
|
||||
hw_d = *((long double*)&aligned);
|
||||
hw_d = *((long double*)aligned);
|
||||
hw = (unsigned char*)&hw_d;
|
||||
} else {
|
||||
hw_ld = *((long double*)&aligned);
|
||||
hw_ld = *((long double*)aligned);
|
||||
hw = (unsigned char*)&hw_ld;
|
||||
}
|
||||
#endif
|
||||
@ -2709,8 +2724,9 @@ test_conv_flt_1 (const char *name, hid_t src, hid_t dst)
|
||||
#endif
|
||||
|
||||
done:
|
||||
if (buf) aligned_free (buf);
|
||||
if (saved) aligned_free (saved);
|
||||
if (buf) aligned_free(buf);
|
||||
if (saved) aligned_free(saved);
|
||||
if (aligned) free(aligned);
|
||||
fflush(stdout);
|
||||
#ifdef HANDLE_SIGFPE
|
||||
exit(MIN((int)fails_all_tests, 254));
|
||||
@ -2720,8 +2736,9 @@ test_conv_flt_1 (const char *name, hid_t src, hid_t dst)
|
||||
#endif
|
||||
|
||||
error:
|
||||
if (buf) aligned_free (buf);
|
||||
if (saved) aligned_free (saved);
|
||||
if (buf) aligned_free(buf);
|
||||
if (saved) aligned_free(saved);
|
||||
if (aligned) free(aligned);
|
||||
fflush(stdout);
|
||||
#ifdef HANDLE_SIGFPE
|
||||
exit(MIN(MAX((int)fails_all_tests, 1), 254));
|
||||
|
@ -284,7 +284,7 @@ test_fill(size_t nx, size_t ny, size_t nz,
|
||||
* Purpose: Tests H5V_hyper_copy().
|
||||
*
|
||||
* The NX, NY, and NZ arguments are the size for the source and
|
||||
* destination arrays. You map pass zero for NZ or for NY and
|
||||
* destination arrays. You may pass zero for NZ or for NY and
|
||||
* NZ to test the 2-d and 1-d cases respectively.
|
||||
*
|
||||
* A hyperslab is copied from/to (depending on MODE) various
|
||||
@ -384,12 +384,12 @@ test_copy(int mode,
|
||||
dst = H5MM_calloc(nx*ny*nz);
|
||||
init_full(src, nx, ny, nz);
|
||||
|
||||
for (i = 0; i < nx; i += di) {
|
||||
for (j = 0; j < ny; j += dj) {
|
||||
for (k = 0; k < nz; k += dk) {
|
||||
for (dx = 1; dx <= nx - i; dx += ddx) {
|
||||
for (dy = 1; dy <= ny - j; dy += ddy) {
|
||||
for (dz = 1; dz <= nz - k; dz += ddz) {
|
||||
for (i=0; i<nx; i+=di) {
|
||||
for (j=0; j<ny; j+=dj) {
|
||||
for (k=0; k<nz; k+=dk) {
|
||||
for (dx=1; dx<=nx-i; dx+=ddx) {
|
||||
for (dy=1; dy<=ny-j; dy+=ddy) {
|
||||
for (dz=1; dz<=nz-k; dz+=ddz) {
|
||||
|
||||
/*
|
||||
* Describe the source and destination hyperslabs
|
||||
@ -451,10 +451,10 @@ test_copy(int mode,
|
||||
* Set all loc values to 1 so we can detect writing
|
||||
* outside the hyperslab.
|
||||
*/
|
||||
for (u = 0; u < nx; u++) {
|
||||
for (v = 0; v < ny; v++) {
|
||||
for (w = 0; w < nz; w++) {
|
||||
dst[u * ny * nz + v * nz + w] = 1;
|
||||
for (u=0; u<nx; u++) {
|
||||
for (v=0; v<ny; v++) {
|
||||
for (w=0; w<nz; w++) {
|
||||
dst[u*ny*nz + v*nz + w] = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -476,10 +476,10 @@ test_copy(int mode,
|
||||
for (v=dst_offset[1];
|
||||
v<dst_offset[1]+dy;
|
||||
v++) {
|
||||
for (w = dst_offset[2];
|
||||
w < dst_offset[2] + dz;
|
||||
for (w=dst_offset[2];
|
||||
w<dst_offset[2]+dz;
|
||||
w++) {
|
||||
acc += dst[u * ny * nz + v * nz + w];
|
||||
acc += dst[u*ny*nz + v*nz + w];
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -512,14 +512,21 @@ test_copy(int mode,
|
||||
* we added the border of 1's to the hyperslab.
|
||||
*/
|
||||
acc = 0;
|
||||
for (u = 0; u < nx; u++) {
|
||||
for (v = 0; v < ny; v++) {
|
||||
for (w = 0; w < nz; w++) {
|
||||
acc += dst[u * ny * nz + v * nz + w];
|
||||
for (u=0; u<nx; u++) {
|
||||
for (v=0; v<ny; v++) {
|
||||
for (w=0; w<nz; w++) {
|
||||
acc += dst[u*ny*nz + v*nz + w];
|
||||
}
|
||||
}
|
||||
}
|
||||
if (acc != ref_value + nx*ny*nz - dx*dy*dz) {
|
||||
|
||||
/*
|
||||
* The following casts are to work around an
|
||||
* optimization bug in the Mongoose 7.20 Irix64
|
||||
* compiler.
|
||||
*/
|
||||
if (acc+(unsigned)dx*(unsigned)dy*(unsigned)dz !=
|
||||
ref_value + nx*ny*nz) {
|
||||
puts("*FAILED*");
|
||||
if (!isatty(1)) {
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user