summaryrefslogtreecommitdiffstats
path: root/src/H5Shyper.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2010-10-01 05:39:05 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2010-10-01 05:39:05 (GMT)
commitdc4756fbf47d8fe84472269f24cedc16c8093c48 (patch)
tree6cc8a9172767ebdbf4cc73c8db5b95b8e7aa4f88 /src/H5Shyper.c
parente171b57b999a4d0b6c0b97c8138880056fc4a956 (diff)
downloadhdf5-dc4756fbf47d8fe84472269f24cedc16c8093c48.zip
hdf5-dc4756fbf47d8fe84472269f24cedc16c8093c48.tar.gz
hdf5-dc4756fbf47d8fe84472269f24cedc16c8093c48.tar.bz2
[svn-r19498] Description:
Optimize the vector-vector memcpy() routine even further, for a total of ~2x speedup. :-) Make a generic vector-vector operation routine and convert other vector-vector read & write routines to use generic routine instead of multiple copies of the basic algorithm. Tested on: FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, w/threadsafe, in production mode Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode Mac OS X/32 10.6.4 (amazon) in debug mode Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
Diffstat (limited to 'src/H5Shyper.c')
-rw-r--r--src/H5Shyper.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/H5Shyper.c b/src/H5Shyper.c
index 45371dd..4aa887b 100644
--- a/src/H5Shyper.c
+++ b/src/H5Shyper.c
@@ -8652,6 +8652,10 @@ H5S_hyper_get_seq_list_single(const H5S_t *space, H5S_sel_iter_t *iter,
*nelem += elmt_remainder;
} /* end if */
+ /* Sanity check */
+ HDassert(*nseq > 0);
+ HDassert(*nelem > 0);
+
FUNC_LEAVE_NOAPI(SUCCEED)
} /* end H5S_hyper_get_seq_list_single() */
@@ -8699,6 +8703,7 @@ H5S_hyper_get_seq_list(const H5S_t *space, unsigned UNUSED flags, H5S_sel_iter_t
/* Check args */
HDassert(space);
HDassert(iter);
+ HDassert(iter->elmt_left > 0);
HDassert(maxseq > 0);
HDassert(maxelem > 0);
HDassert(nseq);