Commit Graph

163 Commits

Author SHA1 Message Date
David Young
c8f533cfc3 Merge all of my changes from merge-back-to-feature-vfd_swmr-attempt-1,
including the merge of `hdffv/hdf5/develop`, back to the branch that Vailin and
I share.

Now I need to put this branch on a fork with a less confusing name than
vchoi_fork!
2019-12-09 10:30:58 -06:00
Dana Robinson
b48686febd Normalization with vol_integration (misc internal and datatype) 2018-09-20 13:38:40 -07:00
Binh-Minh Ribler
ec31438afd Fixed HDFFV-10404
Description:
    Applied the typo fixes from user's report.
    The previous pull request couldn't be merged because it was too old,
    and it was too complicated for me to resolve conflicts.
Platform tested:
    Linux/64 (jelly) - very minor
2018-07-13 13:40:22 -05:00
Quincey Koziol
f38864920d Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into merge_func_enter_vol
Plus initial steps toward merging API context push into FUNC_ENTER_API* macros
2018-03-18 18:36:49 -05:00
Quincey Koziol
4a17aff408 Add API context interface and use it throughout the library. 2018-03-15 16:54:30 -05:00
Vailin Choi
e277d537d2 Fix for daily test failures
Move the declarations for the three arrays of versions from H5Opkg.h:
(1) H5O_layout_vers_bounds to H5Dpkg.h
(2) H5O_dtype_ver_bounds to H5Tpkg.h
(3) H5O_sdspace_ver_bounds to H5Spkg.h
This is to fix Windows' complaint for unresolved symbols.
2018-02-14 14:30:51 -06:00
Larry Knox
89fbe00dec Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to hdf5_1_10
* commit '54957d37f5aa73912763dbb6e308555e863c43f4':
  Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes.
  Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh.
  Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1
  Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
2017-04-25 16:05:36 -05:00
Quincey Koziol
dd6c8994c0 [svn-r30017] Description:
Bring warning cleanusp in r29990, 29993, 29997, 29999, 30004 from
revise_chunks branch to trunk.

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial, parallel & production.
    (h5committest forthcoming)
2016-06-05 19:45:37 -05:00
Quincey Koziol
1023374492 [svn-r27768] Description:
Complete revamp of package initialization/shutdown mechanism in the library.
Each package now has a single init/term routine.

    This new way should avoid packages being re-initialized during library
shutdown and is also be _much_ more proactive about giving feedback for
resource leaks internal to the library.

    Introduces a new "module" header file for packages in the library
(e.g src/H5Fmodule.h) which sets up some necessary package configuration macros
for the FUNC_ENTER/LEAVE macros.  (The VFL drivers have their own slightly
modified version of this header, src/H5FDdrvr_module.h)

    Also cleaned up a bunch of resources leaks all across the library and tests,
along with addressing many warnings, as I encountered them.

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    Linux/64 3.10.x (kituo) w/serial & parallel
    Linux/64 2.6.x (ostrich) w/serial
2015-09-13 22:58:59 -05:00
Albert Cheng
ac5a796db2 [svn-r27428] Bug fix: DAILYTEST-170
Description:
    XL compilers in ostrich (PowerPC64 linux) fail in test/dt_arith
    because of the removal of the LLONG_TO_LDOUBLE_CORRECT (removed in
    r26625) and LDOUBLE_TO_LLONG_ACCURATE (removed in r26623).

Solution:
    Reverse revisions
	r26623: bring back LDOUBLE_TO_LLONG_ACCURATE configure macro
	r26625: bring back LLONG_TO_LDOUBLE_CORRECT configure macro
	r26627: bring back WANT_DATA_ACCURACY configure macro which is
	    used together with the above two macros. This also brings
	    back the enable-dconv-accuracy configure option.

Tested:
    h5committested.
    Also tested in ostrich using the XL compilers.
2015-07-24 02:04:52 -05:00
Quincey Koziol
c2472b4d00 [svn-r26625] Description:
Bring r26543 from autotools_rework branch to trunk:

    Remove the LLONG_TO_LDOUBLE_CORRECT macro/define, it's working around
bugs in very old SGI/FreeBSD/Windows compilers.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (Daily tested on branch for 2+ days)
2015-03-27 15:50:44 -05:00
Quincey Koziol
79f59eaf4d [svn-r26623] Description:
Bring r26513 from autotools_rework branch to trunk:

    Remove the LDOUBLE_TO_LLONG_ACCURATE macro/define, it's working around
bugs in older SGI, HP/UX, MacOSX and Windows .NET 2003 compilers.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (Daily tested on branch for 2+ days)
2015-03-27 15:11:12 -05:00
Quincey Koziol
c4ec20a6de [svn-r26606] Description:
Bring r26508 from autotools_rework branch to trunk:

    Remove HW_FP_TO_LLONG_NOT_WORKS macro/define, it was only addressing
Windows .NET 2003 compiler issues.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (Daily tested on branch for 2+ days)
2015-03-26 14:13:13 -05:00
Quincey Koziol
39373fbabb [svn-r26605] Description:
Bring r26503 & r26528 from autotools_rework branch back to the trunk:

    Remove old platform configure files: craynv, dec-flags, hpux11.23,
ia64-linux-gnu, nec-superux14.1, sv1-cray, x86_64-redstorm-linux-gnu

   Also remove CONVERT_DENORMAL_FLOAT, since this was only set in the
configure files being removed.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (Daily tested on branch for 2+ days)
2015-03-26 13:34:11 -05:00
Quincey Koziol
90cc5df290 [svn-r26598] Description:
Bring r26501 from the autotools_rework branch to the trunk:

    Remove ULLONG_TO_LDOUBLE_PRECISION macro/define, as it's targeting bugs
in the FreeBSD and Cygwin compilers.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (Daily tested on branch for 2+ days)
2015-03-25 22:05:30 -05:00
Quincey Koziol
b03d04742d [svn-r26596] Description:
Bring r26499 from autotools_rework branch to trunk:

    Remove ULLONG_TO_FP_CAST_WORKS macro/define, as it only applies to older
platforms we aren't supporting any longer.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (Daily tested on branch for 2+ days)
2015-03-25 20:47:41 -05:00
Quincey Koziol
c622cc7b38 [svn-r26595] Description:
Bring r26494 from autotools_rework branch back to trunk:

    Remove the LDOUBLE_TO_UINT_ACCURATE macro/define, it was addressing
problems with older Intel compilers on Linux that are no longer supported.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (Daily tested on branch for several days)
2015-03-25 17:11:19 -05:00
Quincey Koziol
d3114a96da [svn-r26591] Description:
Bring r26492 from autotools_rework branch back to trunk:

    Remove the FP_TO_ULLONG_ACCURATE and FP_TO_ULLONG_RIGHT_MAXIMUM
macros/defines, which were added to address problems with older PGI
compilers and HP-UX systems and are no longer supported.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (daily tested on branch for >1 week)
2015-03-25 16:33:48 -05:00
Quincey Koziol
597c3c089b [svn-r26587] Description:
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 for >1 week)
2015-03-25 14:54:36 -05:00
Quincey Koziol
e89290b777 [svn-r26584] Description:
Bring r26485 from the autotools_rework branch to the trunk:

    Remove the ULONG_TO_FLOAT_ACCURATE macro/define, we no longer support the
Sandia system where it was necessary.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (daily tested for >1 week)
2015-03-25 14:12:00 -05:00
Quincey Koziol
460b629e03 [svn-r26560] Description:
Bring r26483 from autotools_rework branch back to trunk:

    Remove INTEGER_TO_LDOUBLE_ACCURATE macro/define - we no longer support
SGI systems.

Tested on:
    Linux/32 2.6.18 (jam) w/serial & parallel
    (daily tested on branch for >1 week)
2015-03-24 17:06:27 -05:00
Quincey Koziol
9fb399b3d2 [svn-r26495] Description:
Bring r26258 from the autotools_rework branch to the trunk - remove
the LDOUBLE_TO_INTEGER_WORKS macro/define, which was addressing issues with
SGI systems that are no longer supported.

Tested on:
    Linux 2.6.x (jam) w/serial & parallel
    Daily tested on branch for >2 weeks
2015-03-19 17:22:06 -05:00
Quincey Koziol
5329a7d6f1 [svn-r26491] Description:
Bring r26257 from autotools_rework branch back to the trunk - removes
the LDOUBLE_TO_INTEGER_ACCURATE macro/define, which was addressing problems
with SGI systems and is no longer supported.

Tested on:
    Linux 2.6.x/32 (jam) w/serial & parallel
    Daily tested on branch for >2 weeks.
2015-03-19 16:52:50 -05:00
Quincey Koziol
3de25ee226 [svn-r24998] Description:
Check in Neil's changes for correctly handling case where library is
reinitialized through a deprecated routine.

Tested on:
    Linux 2.4.x/32 (jam)
2014-04-09 00:08:21 -05:00
Raymond Lu
1c45b31cc6 [svn-r22914] I checked in the conversion function H5T__conv_enum_numeric (numeric type means integer or floating number) and the C test for it. This is the work for Chicago.
Tested on jam, koala, and ostrich.
2012-10-17 13:38:38 -05:00
Quincey Koziol
75f4e51a1a [svn-r22582] Description:
Refactor ID class registration to be more like how other "class"s in the
library are registered, and clean up compiler warnings.

Tested on:
    Mac OSX/64 10.7.4 (amazon) w/debug
    (Too minor to require h5comittest)
2012-07-16 14:54:26 -05:00
Quincey Koziol
a07c8f9247 [svn-r22287] Description:
Clean up more FUNC_ENTER/FUNC_LEAVE macros and move H5D & H5T code toward
the final design (as exemplified by the H5EA & H5FA code).

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug & parallel
2012-04-16 16:20:26 -05:00
Quincey Koziol
3d9e0b86ac [svn-r21923] Description:
Add FUNC_ENTER macros for package-private routines and begin process of
switching package routines to use them.  All H5G routines are currently
finished.

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
2012-02-09 21:16:52 -05:00
Quincey Koziol
53a2317c8f [svn-r18625] Description:
Checkpoint progress on Bz#1398 - strict aliasing issues.  (Lots of compiler
warnings & code cleanups also)

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, in production mode
    Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
    Mac OS X/32 10.6.3 (amazon) in debug mode
    Mac OS X/32 10.6.3 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2010-04-23 15:03:17 -05:00
Neil Fortner
376a788840 [svn-r17760] Purpose: Fix problem with H5TB API
Description:
The H5TB API makes some improper assumptions about the order of compound
datatype members.  Namely, it assumes that members remain in the order in which
they were inserted.  Unfortunately, this assumption is inherent in the design of
the interface.  The library has been patched so that this assumption holds in
situations relevant to H5TB.

Tested: jam, linew, amani (h5committest)
2009-10-27 17:23:49 -05:00
Raymond Lu
0b3b4351e7 [svn-r17392] I added a detection for the correctness of converting from unsigned long to float in the
configure.in.  The Pathscale compiler on Sandia's Linux machine misinterprets the values of 
unsigned long as negative during the conversion to float, when the first bit of unsigned long
is on.  

Tested on jam.  Need to test it on Sandia's machine.
2009-08-20 13:40:50 -05:00
Neil Fortner
5bbc0eedff [svn-r15682] Purpose: fix bug 1298
Description: The optimized "subset" compound conversion function would
improperly copy the "blank" space at the end of compound types.  Modified
H5T_conv_struct_init to detect when the subset type has extra space at the end,
and calculate the size of the data that should be copied into the conversion
buffer for each element.  Changes to the functions that implement these
conversions.

Tested: kagiso, linew, smirom (h5committest)
2008-09-22 18:41:31 -05:00
Quincey Koziol
c465e18a68 [svn-r15609] Description:
Omnibus compiler warning cleanup & some reformatting also.

Tested on:
    Mac OS X/32 10.5.4 (amazon)
    Too minor to require h5committest
2008-09-10 14:10:41 -05:00
Quincey Koziol
922a109192 [svn-r15227] Description:
Small clean up of datatype copying.

Tested on:
        FreeBSD/32 6.2 (duty) in debug mode
        FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Mac OS X/32 10.5.3 (amazon) in debug mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
2008-06-17 15:01:52 -05:00
Quincey Koziol
b0eb42058c [svn-r14208] Description:
Make H5Pget_filter_by_id() API versioned and switch internal usage
to H5Pget_filter_by_id2().

	Add simple regression test for H5Pget_filter_by_id1().

Tested on:
        FreeBSD/32 6.2 (duty) in debug mode
        FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Mac OS X/32 10.4.10 (amazon) in debug mode
2007-10-18 11:10:46 -05:00
Quincey Koziol
492e5ca2b4 [svn-r14004] Description:
Fix problem with datatype messages where the version of the format
for a datatype message could depend on the "use the latest format" flag from
the file after it was initially created.

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Mac OS X/32 10.4.10 (amazon)
2007-07-24 14:10:00 -05:00
Quincey Koziol
4a9a1c90f3 [svn-r13917] Description:
Code & warning cleanups

Tested on:
    Mac OS X/32 10.4.10 (amazon)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-06-26 12:44:39 -05:00
Raymond Lu
6017d0c70f [svn-r13884] The second step of optimization for compound data for the Chicago
company.  The I/O is optimized when the source and destination 
members are a subset of each other one way or another, and
the order is the same, and no conversion is needed.  For example:
    struct source {            struct destination {
        TYPE1 A;      -->          TYPE1 A;
        TYPE2 B;      -->          TYPE2 B;
        TYPE3 C;      -->          TYPE3 C;
    };                             TYPE4 D;
                                   TYPE5 E;
                               };
    or
    struct destination {       struct source {
        TYPE1 A;      -->          TYPE1 A;
        TYPE2 B;      -->          TYPE2 B;
        TYPE3 C;      -->          TYPE3 C;
    };                             TYPE4 D;
                                   TYPE5 E;
                                };
The optimization is simply moving data from the source to the 
appropriate places in the buffer and bypass the reading of 
the background data and data conversion.

Tested on smirom, liberty, sol, and copper.
2007-06-19 15:05:24 -05:00
Quincey Koziol
31ff357f31 [svn-r13753] Description:
Check in "unique, but sharable" optimization to ISOHM code, which
allows object header messages that are only used in one object to remain in
the sole user's header, but migrates messages that are used in more than one
header into the ISOHM heap.

Tested on:
	Mac OS X/32 10.4.9 (amazon)
	FreeBSD/32 6.2 (duty)
	Linux/32 2.6 (chicago)
	Linux/64 2.6 (chicago2)
2007-05-14 15:24:08 -05:00
Quincey Koziol
9d2070890b [svn-r13636] Description:
Change H5[D|G|T]<foo>_expand() "temporary" API routines to
H5[D|G|T]<foo>2() "versioned" routines.  Also added
H5[D|G|T](create|commit)_anon() routines to continue to allow "anonymous"
objects to be created in a file.

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    FreeBSD/32 6.2 (duty)
    FreeBSD/64 6.2 (liberty)
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-04-11 11:22:16 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
Quincey Koziol
c560e68258 [svn-r13240] Description:
More cleanups on the object header message handling code, to make it
easier to work with and move forward on the creation order coding.

	Various other minor cleanups & warning fixes.

Tested on:
	FreeBSD/32 6.2 (duty)
2007-02-05 17:26:44 -05:00
Quincey Koziol
d4909147e1 [svn-r13156] Description:
Begin refactoring code to straighten out the contorted code that handles
shared messages.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-19 12:31:41 -05:00
Quincey Koziol
d978a22b36 [svn-r13121] Description:
Add support & tests for using shared datatypes with shared & un-shared
attributes.  Involves some fairly icky code to make the "copy on write"
paradigm for shared attributes work.

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
2007-01-08 17:25:26 -05:00
Quincey Koziol
98f3bca75e [svn-r12949] Description:
Finish implementation of H5Literate() [still needs real tests]

    Clean up datatype macro warnings a bit more.

    Unify iterator callback macros and put up in public header file, with the
iterator directions.

Tested on:
    Mac OS X/32 10.4.8 (amazon)
    FreeBSD/32 4.11 (sleipnir)
    Linux/32 2.4 (heping)
    Linux/64 2.4 (mir)
    AIX/32 5.? (copper)
2006-11-20 10:23:29 -05:00
Quincey Koziol
743c65ea9c [svn-r12904] Description:
Clean up warnings from undefined macros...

Tested on:
    Linux/64 2.6 (chicago2)
2006-11-13 16:09:34 -05:00
James Laird
b6c317f27c [svn-r12902] Checkin of Shared Object Header Message work.
This feature is still in progress; Shared Object Header Messages are not
complete as a feature and are not thoroughly tested.  There are still
"TODO" comments in the code (comments with the word "JAMES" in them,
so as not to be confused with other TODO comments).

Hopefully this checkin will reduce the liklihood of conflicts as I finish
implementing this feature.

All current tests pass on juniper, copper (parallel), heping, kagiso, and mir.
2006-11-13 15:41:36 -05:00
Quincey Koziol
14dcb6db33 [svn-r12736] Description:
Add "use the latest format" support for dataspace object header encode/
decode routines and clean up format a bit for the latest format (new to 1.8.x
releases)

    Remove storing 'perm' parameter for array datatypes in memory and the file,
and add test to make certain that if any user applications are attempting to
store them, we get some reports back.  (Should be unlikely, since the RefMan
says that the parameter is not implemented and is unsupported).
    Carry those changes into the tests, etc.

    Clean up a bunch more compiler warnings.

Tested on:
    FreeBSD/32 4.11 (sleipnir) w/threadsafe
    Linux/32 2.4 (heping) w/FORTRAN & C++
    Linux/64 2.4 (mir) w/enable-1.6-compat
2006-10-08 23:18:18 -05:00
Quincey Koziol
7be3afb278 [svn-r12440] Purpose:
Code cleanup

Description:
    Trim trailing whitespace in Makefile.am and C/C++ source files to make
diffing changes easier.

Platforms tested:
    None necessary, whitespace only change
2006-06-27 09:45:06 -05:00
Raymond Lu
4dfad81062 [svn-r12435] Purpose: Bug fix
Description: Mac OS 10.4 on PowerPC chip has some errors to convert (unsigned)
long long to long double.  When the bit sequences are 0x003ff..., 0x007fff...,
0x00ffff..., 0x01ffff..., 0x7fffff..., the converted values are twice as big
as they should be.

Solution: Detect the error in configure and disable the compiler conversion
and test case.

Platforms tested: h5committest, Mac OS 10.4, and fuss.
2006-06-23 17:11:12 -05:00