| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Switch name & logic from H5_LLONG_TO_FP_CAST_BROKEN to
H5_LLONG_TO_FP_CAST_WORKS, to better match the rest of the library.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
On visual studio 6.0, conversion from unsigned long long to double is not supported.
Even during compilation stage, it will fail.
Solution:
Albert changed the way the macro is handled so that for windowx MSVS 6.0,
the code that has conversion from unsigned long long to double will not compile.
Platforms tested:
windows, linux
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bug fix (sorta)
Description:
Rename H5_LLONG_TO_FP_CAST_WORKS to H5_LLONG_TO_FP_CAST_BROKEN
Solution:
Since a test for H5_LLONG_TO_FP_CAST_WORKS is not present in the configure script,
the dtransform test would assume that this cast doesn't work and skip the test. Change the variable around
so that, by default, it is assumed a long long to double cast does work.
Platforms tested:
minor change: copper, sol
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
The intel compiler on windows doesn't support long long to double conversion.
Solution:
Added a flag H5_LLONG_TO_FP_CAST_WORKS. When it is not defined, the data transform will issue
an error when someone tries to perform a transform from long long to double and the long long to double
dtransform test will be skipped.
Platforms tested:
heping, sol, copper
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Optimization
Description:
Speed up I/O on enumerated datatypes (including those nested in compound
datatypes, arrays, etc.) if the destination datatype is a proper superset of
the source datatype.
Solution:
Detect the situation and treat as no-op datatype conversion.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description: Removed PABLO from the source
Solution:
Platforms tested: arabica with 64-bit, copper with parallel,
heping with GNU C and C++ and PGI fortran (but
I disabled hl, there is some weird problem only
on heping: F9XMODFLAG is not
propagated to the Makefile files
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-)
Description:
Generally speaking, this is the "signed->unsigned" change to selections.
However, in the process of merging code back, things got stickier and stickier
until I ended up doing a big "sync the two branches up" operation. So... I
brought back all the "infrastructure" fixes from the development branch to the
release branch (which I think were actually making some improvement in
performance) as well as fixed several bugs which had been fixed in one branch,
but not the other.
I've also tagged the repository before making this checkin with the label
"before_signed_unsigned_changes".
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel & fphdf5
FreeBSD 4.10 (sleipnir) w/threadsafe
FreeBSD 4.10 (sleipnir) w/backward compatibility
Solaris 2.7 (arabica) w/"purify options"
Solaris 2.8 (sol) w/FORTRAN & C++
AIX 5.x (copper) w/parallel & FORTRAN
IRIX64 6.5 (modi4) w/FORTRAN
Linux 2.4 (heping) w/FORTRAN & C++
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug Fix
Description:
Fixed off by one error in H5Pget_data_transform
Solution:
H5Pget_data_transform, when queried for the size of the property, should
return strlen() + 1 so that the user can allocate memory for the terminating
\0 in the string.
Also fixed a typo in a comment in H5Ztrans.c
Platforms tested:
eirene, too minor to require further testing.
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Clean up potential buffer overflow in strncpy()
Platforms tested:
FreeBSD 4.10 (sleipnir)
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Changed functionality of H5Pget_data_transform
Description:
H5Pget_data_transform no longer allocates memory for the transform string...it
is the user's responsbility to do so.
Solution:
Made H5Pget_data_transform be more in line with other functions that do
similiar things:
User now has to allocate memory for the string themselves and specify how much
of the string should be copied into the buffer. There is also support for
querying the length of the transform string.
Platforms tested:
sol + eirene + copper
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
The previous H5_ULLONG_TO_FP_CAST_WORKS fix does not quite work
since the problem was an error during compiling while the fix
was trying to check for the error condition during runtime.
The MS-Compiler still complains about not supporting ULLONG
to Float.
Solution:
A temperary patch is to have two #define of H5Z_XFORM_TYPE_OP
according to if H5_ULLONG_TO_FP_CAST_WORKS is defined. This
works but a better solution is needed.
Platforms tested:
Windows (by Kent) and heping (Linux by me).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code refactor
Changed functionality of H5Pget_data_transform
Description:
Rewrote much of H5Ztrans.c to use macros, which cut down on the amount of code
significantly.
H5Pget_data_transform now allocates memory for the data transform string,
copies the string into this memory, and
returns this pointer to the user, instead of returning a pointer to the
internal transform string stored by hdf. It is the user's responsibility to free
this memory when they are done with it.
Platforms tested:
sol + eirene + copper
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Fix typo in #ifdef for unsigned long long to double conversion.
Changed WIN32 check to H5_ULLONG_TO_FP_CAST_WORKS
This check-in (and the one before it) also includes a large code-refactoring
that is still in progress.
Solution:
the ifdef for the plus case was checking unsigned long instead of unsigned
long long. Moved the check to the right location.
Platforms tested:
sol+eirene
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
The windows compiler apparently cannot convert from unsigned long long to
double. This conversion is necessary for the data transform to work properly
in some cases.
Solution:
Added #ifdef to check for windows and issue error when user attempts to do a
data transform on a long long type.
Platforms tested:
sol + eirene
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
Code optimization and refactoring.
Added support for llong, ullong, and ldouble
Solution:
Significantly cut down on the amount of code required to do the transform,
while making the operations more efficient.
Platforms tested:
sol + eirene
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rewrote H5Z_xform_eval_full such that it no longer "returns an aggregate"
Added support for CHAR, LONG, ULONG, DOUBLE, SHORT, USHORT, UCHAR, SCHAR, and
UINT to the data transform. Support for LLONG and ULLONG to be added shortly.
Description:
Data transforms can now operate on arrays with the native types listed above.
Platforms tested:
sol + eirene
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Fix for small memory leak that occurs when destroying the data transform
property. Forgot to free the array of pointers to the temorary data.
Solution:
Freed memory.
Platforms tested:
sol + eirene
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
Code would attempt to Calloc with zero count when a simple expression
that has no x term. That resulted in NULL for some platform (like AIX).
That appeared as a failure treated as out of space.
Solution:
Checked if count is larger than 0 before making the calloc request.
Platforms tested:
Tested in copper (pp) where the failure appeared. Also in eirene
as double check. No h5committest as the change is trivial.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added H5Pget_data_transform
Added support for polynomial data transforms
Description:
There is now support for polynomial data transforms (ie, (2+x)*(x-5)) instead
of just linear ones.
Note that, in order to compute a polynomial transform, one temporary copy of
the original data must be stored for each occurence of "x" in the transform
expression. This can result in very high memory usage for expressions of high
order.
Platforms tested:
sol + eirene
Misc. update:
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Clean up almost all warnings from Windows builds.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup & minor optimization
Description:
Re-work the way interface initialization routines are specified in the
library to avoid the overhead of checking for them in routines where there is
no interface initialization routine. This cleans up warnings with gcc 3.4,
reduces the library binary size a bit (about 2-3%) and should speedup the
library's execution slightly.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/gcc34
h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code optimization
Description:
Use 'size_t' instead of 'hsize_t' to track the number of elements in
memory buffers, especially for type conversion.
Platforms tested:
Solaris 2.7 (arabica)
FreeBSD 4.10 (sleipnir) w/parallel
Too minor to require h5committest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
Fixed token_type enum struct in H5Ztrans.c to compile under windows.
Solution:
Prefixed all values in the struct with H5Z_XFORM_ to prevent name collisions
with pre-defined values.
Platforms tested:
h5committest'ed, but on arabica + no sol.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fix.
Description:
Fixed handling of trivial data transform expressions (like 5/3 + 3) and some
data coversion fixes. Also added more tests to dtransform.c
Solution:
Added some more checks in the H5Z_xform_reduce_tree function to see if perhaps
the transform expression is complicated and is a non-trivial reduction.
Added tests for data conversion to dtransform as well as tests for a trivial
data transform expression.
Platforms tested:
h5committest'ed, except used arabica instead of sol and didn't do on copper
b/c no logon there. Problem noted with mtime test...doesn't appear to be
related to anything having to do with data transforms.
|
|
|
|
|
|
|
|
|
|
| |
Bug fix
Description:
Fix problems compiling with g++.
Platforms tested:
FreeBSD 4.9 (sleipnir) w/CC=g++
|
|
|
|
|
|
|
|
|
|
|
|
| |
Code cleanup
Description:
Refactored data transform code to reduce amount of symbols in the global
scope and also cleaned up & simplified the code a bit.
Platforms tested:
h5committest (minus copper, plus serial modi4)
FreeBSD 4.9 (sleipnir) w & w/o parallel
|
|
New Feature
Description:
Add the data transform function, H5Pset_transform().
Platforms tested:
"h5committested".
Copper was down. Ran parallel tests in sol instead.
Misc. update:
|