summaryrefslogtreecommitdiffstats
path: root/src/H5Ztrans.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-81/+81
| | | | | | | | | | | | | | | | | | | | Code cleanup Description: Trim trailing whitespace, which is making 'diff'ing the two branches difficult. Solution: Ran this script in each directory: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r11144] Purpose:Quincey Koziol2005-07-231-2/+36
| | | | | | | | | | | New port Description: Elena asked me to check in her NEC SX-6 work, so here it is! :-) Platforms tested: FreeBSD 4.11 (sleipnir) NEC SX-6 (by Elena)
* [svn-r10699] Purpose:Quincey Koziol2005-04-291-1/+1
| | | | | | | | | | | | 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
* [svn-r10690] Purpose:MuQun Yang2005-04-281-12/+17
| | | | | | | | | | | | | | | | | | 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:
* [svn-r10660] Purpose:Leon Arber2005-04-251-1/+1
| | | | | | | | | | | | | | | | | 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:
* [svn-r10658] Purpose:Leon Arber2005-04-251-35/+25
| | | | | | | | | | | | | | | | | 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:
* [svn-r10238] Purpose:Quincey Koziol2005-03-201-14/+14
| | | | | | | | | | | | | | | | 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
* [svn-r9857] Purpose: MaintenanceElena Pourmal2005-01-221-3/+0
| | | | | | | | | | | | | | 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:
* [svn-r9727] Purpose:Quincey Koziol2004-12-291-195/+182
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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:
* [svn-r9524] Purpose:Leon Arber2004-11-121-3/+14
| | | | | | | | | | | | | | | | | | | 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:
* [svn-r9466] Purpose:Quincey Koziol2004-10-271-1/+0
| | | | | | | | | | | Bug fix Description: Clean up potential buffer overflow in strncpy() Platforms tested: FreeBSD 4.10 (sleipnir) Too minor to require h5committest
* [svn-r9461] Purpose:Leon Arber2004-10-261-8/+5
| | | | | | | | | | | | | | | | | | | | | 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:
* [svn-r9457] Purpose:HDF Admin2004-10-251-13/+43
| | | | | | | | | | | | | | | | | | | 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).
* [svn-r9441] Purpose:Leon Arber2004-10-201-325/+84
| | | | | | | | | | | | | | | | | | | | 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:
* [svn-r9440] Purpose:Leon Arber2004-10-201-18/+19
| | | | | | | | | | | | | | | | | | | 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:
* [svn-r9430] Purpose:Leon Arber2004-10-181-1684/+272
| | | | | | | | | | | | | | | | 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
* [svn-r9422] Purpose:Leon Arber2004-10-141-528/+1379
| | | | | | | | | | | | | 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
* [svn-r9368] Purpose:Leon Arber2004-10-051-508/+972
| | | | | | | | | | | | | | | | 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:
* [svn-r9314] Purpose:Leon Arber2004-09-231-0/+6
| | | | | | | | | | | | | | | | 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:
* [svn-r9297] Purpose:Albert Cheng2004-09-221-5/+10
| | | | | | | | | | | | | | | | 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.
* [svn-r9267] Purpose:Leon Arber2004-09-161-110/+305
| | | | | | | | | | | | | | | | | | | 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:
* [svn-r8782] Purpose:Quincey Koziol2004-07-011-317/+228
| | | | | | | | | | | Code cleanup Description: Clean up almost all warnings from Windows builds. Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel Too minor to require h5committest
* [svn-r8731] Purpose:Quincey Koziol2004-06-231-25/+11
| | | | | | | | | | | | | | | 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
* [svn-r8683] Purpose:Quincey Koziol2004-06-141-6/+6
| | | | | | | | | | | | | 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
* [svn-r8489] Purpose:Leon Arber2004-05-071-161/+161
| | | | | | | | | | | | | | 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.
* [svn-r8488] Purpose:Leon Arber2004-05-061-455/+378
| | | | | | | | | | | | | | | | | | | 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.
* [svn-r8483] Purpose:Quincey Koziol2004-05-051-5/+4
| | | | | | | | | | Bug fix Description: Fix problems compiling with g++. Platforms tested: FreeBSD 4.9 (sleipnir) w/CC=g++
* [svn-r8482] Purpose:Quincey Koziol2004-05-051-58/+321
| | | | | | | | | | | | 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
* [svn-r8479] Purpose:Albert Cheng2004-05-031-0/+1626
New Feature Description: Add the data transform function, H5Pset_transform(). Platforms tested: "h5committested". Copper was down. Ran parallel tests in sol instead. Misc. update: