2010-03-05 Niv Drory * configure.in: bump version to 1.9.10. 2010-03-03 Jan Snigula * ltl/util/option_parser.cpp (OptionParser::addOption): Cleaned character/string conversion. * ltl/util/option_parser.cpp (OptionParser::addOption): Removed bogus output 2010-02-24 Jan Snigula * ltl/util/option_parser.cpp (OptionParser::addOption): Added check to prevent double used option chars. 2009-11-21 Niv Drory * doc/marray_doc.h: Clarify the use of uninitialized MArrays. * ltl/marray/marray_iter.h: Add assertion in ctor to check for uninitialized MArray. * ltl/marray/marray_methods.h: Make safe to use on uninitialized MArray (used in copy-ctor). * test/testmarray.cpp: Add testcase for copy-ctor. 2009-11-18 Niv Drory Jan Snigula * test/testmarray.cpp : Added test for copy function * ltl/marray/marray_methods.h: Fixed copy() to empty the current MArray if the other MArray is empty 2009-08-13 Jan Snigula * test/testrange.cpp: Added test for dynamic Range operators * ltl/misc/range.h: Members of Range are no longer const Added +=, -= and = operators 2009-07-24 Niv Drory * ltl/marray/merge.h: Use standard type promotion for return type of merge() expressions. 2009-06-18 Jan Snigula * ltl/io/ascio.cpp: Fixed bug in row and line counting 2009-03-11 Niv Drory * ltl/marray/expr.h: Fix typos in documentation. * ltl/fvector/* Rename FV expression template parse tree nodes. * ltl/fmatrix/* Rename FM expression template parse tree nodes. 2009-03-04 Jan Snigula * ltl/io/ascio.cpp: Failed to read multiple columns from file with more columns than rows 2008-12-26 Niv Drory * ltl/marray/expr.h: Improve the conceptual part of the documentation. 2008-07-18 Niv Drory * ltl/misc/applicops_sse.h: Do not include Accelerate.h, only vecLib/vfp.h on macosx, since Accelerate.h also pulls in blas and lapack headers. * ltl/misc/applicops_altivec.h: Same. 2008-07-17 Niv Drory * ltl/marray/reductions.h: Distinguish between the return type, the element type and the type of the elements of the corresponding vector type. * ltl/marray/reductions_sse.h: Same. * ltl/statistics.h: For reductions that differ in result types when using SIMD (e.g. bool valued reductions), make sure to use the vector element type as the value type of the Reduction object * test/testmasimd2.cpp: Define LTL_RANGE_CHECKING! * test/testmablas.cpp: Use LTL_ASSERT_ instead of LTL_ASSERT. * test/testuserfuncs.cpp: Same. * ltl/marray/eval.h: Add output of vectorizer info to LTL_DEBUG_EXPRESSIONS output. * ltl/marray/eval_reduc.h: Same. * test/testmasimd.cpp (test_logic): Added tests of logical reductions. * doc/marray_doc.h: Clarified some minor points w.r.t. partial reductions. * ltl/marray/apply.h: Add missing typedef vec_value_type. 2008-07-16 Niv Drory * doc/marray_doc.h: Document partial reductions. * doc/mainpage_doc.h: Update. * ltl/marray/partial_reduc.h: New. Implementation of partial reductions. * test/testpartialreduc.cpp: New testcase. * test/Makefile.am: Add. * ltl/marray/shape_iter.h: New Method to read along dimension N and advance along dimension N. * ltl/marray/marray_iter.h: Same. * ltl/marray/index_iter.h: Same. * ltl/marray/merge.h: Same. * ltl/marray/expr.h: Same. * ltl/marray/shape_iter.h (shape): New Method. Return shape to conform with iterator/expression interface. * ltl/marray/shape.h (getShapeForContraction): New method. Return a shape with one dimension removed. * ltl/statistics.h: include marray/partial_reduc.h. * ltl/marray/reductions.h: Define value_type for all reductions. * ltl/marray/index_iter.h: Remove redundant stride code. 2008-07-14 Niv Drory * ltl/marray/marray_iter.h (operator ++): Implement proper postfix operator++ behavior. * ltl/marray/index_iter.h: Same. * ltl/marray/expr_iter.h: Same. * ltl/marray/shape_iter.h: Same. 2008-07-10 Niv Drory * all-files: Remove copyright years, update email addresses. * test/testmarray.cpp: Add tests of various MArray initializations. 2008-07-09 Niv Drory * ltl/marray/expr.h: Document expression template internals. * Doxyfile: add expr.h. * ltl/misc/staticinit.h: Add support for range checking in Array=1,2,3, ... initializations. * test/testmarray.cpp: Add testcase. * ltl/marray.h: Add size() to conform to STL containers. 2008-07-04 Niv Drory * ltl/marray/expr.h: Rename expression parse tree nodes. Document expression template internals. * ltl/marray.h: Use new expression parse tree node names. * ltl/marray/index_iter.h: Same. * ltl/marray/expr_iter.h: Same. * ltl/marray/eval_reduc.h: Same. * ltl/marray/marray_ops.h: Same. * ltl/marray/marray_methods.h: Same. * ltl/marray/apply.h: Same. * ltl/marray/cast.h: Same. * ltl/marray/where.h: Same. * ltl/marray/merge.h: Same. * ltl/marray/eval.h: Same. * ltl/statistics.h: Same. 2008-07-01 Niv Drory * acinclude.m4: Do not fail if BLAS has not been detected but LAPACK was. * doc/marray_doc.h: Update documnentation. * ltl/marray.h: Initialize data_ to NULL in default constructor. Add empty() consistent with STL containers. Use everywhere instead of checking memBlock_ directly. *ltl/marray/marray_methods.h: Same. * ltl/marray.h: (opreator=): Allow assignment of MArrays and expressions to uninitialized MArrays. In this case, memory is allocated and the contents of the other MArray copied, consistent with the semantics of operator=(). * Doxyfile: Add marray_iter.h, index_iter.h, cast.h. * ltl/marray/marray_iter.h: Document. * ltl/marray/index_iter.h: Document. * ltl/marray/cast.h: Document. * doc/marray_doc: Update. 2008-06-27 Niv Drory * doc/ltl_doxygen.css: Add. Make doxygen output more readable. * Doxyfile: Use custom css. 2008-06-27 Niv Drory * ltl/fmatrix.h: Document. * ltl/fvector.h: Same. * ltl/fvector/fvmemory.h: Same. 2008-06-26 Niv Drory * doc/mainpage_doc.h: Update documentation to reflect recent additions. * doc/marray_doc.h: Update documentation to reflect recent additions. * doc/linalg_doc.h: Document lusolve and svdsolve. * Doxyfile: Add recently added files. * marray/blas.h: Documentation. * marray/lapack.h: Documentation. * marray/fmatrix/lusolve.h: Documentation. * marray/fmatrix/svdsolve.h: Documentation. 2008-06-25 Niv Drory * ltl/marray/lapack.h: New. Interface to LAPACK calls. * Makefile.am: add lapack.h. * test/testmalapack.cpp: testcase (empty for now). * test/Makefile.am: add testmalapack. 2008-06-24 Niv Drory * acinclude.m4: Add AC_CXX_HAVE_COMPLEX. * configure.in: Same. * ltl/marray/blas.h: Add implementation for complex and complex. * ltl/marray/blas.h: Refactor code to be more easily exptendable to furhter data types (complex and complex). * test/testmablas.cpp: Adapt. 2008-06-23 Niv Drory * README: Update for version 1.9 news. * ltl/marray/blas.h: Implemented BLAS level 2 and 3 functions for float and double types. * test/testmablas.cpp: add testcases for BLAS level 2 and 3. * ltl/marray/marray_methods.h (transposeSelf): qualify swap() with std::swap(). 2008-06-23 Ralf Koehler * ltl/fmatrix/lmfit.h: Set ignore_ flag if at least one ignore is true. 2008-06-20 Niv Drory * ltl/marray/blas.h: Implementation of BLAS interface to MArrays. * test/testmablas.cpp: testcase. * test/Makfile.am: Add BLAS testcase. * Makefile.am: Add blas.h. * configure.in: bump version to 1.9.0. * configure.in: Add detection of BLAS and LAPACK libraries. * acinclude.m4: Add ACX_BLAS and ACX_LAPACK. * configure.in: Print configuration summary. 2008-06-20 Niv Drory * configure.in: Bump version to 1.8.2. 2008-06-19 Niv Drory * ltl/fmatrix/svdsolve.h: New. Singular Value Decomposition for FMatrix. * test/testsvdecomp.cpp: New. Testcase. * test/Makefile.am: Add testsvdecomp.cpp to tests. * Makefile.am: Add ltl/fmatrix/svdsolve.h. * ltl/fmatrix.h (operator()): Fix bug in range checking when matrix is not square. 2008-06-18 Niv Drory * ltl/fmatrix/lmfit.h: Change chi2 to always be of type double. Make convergence criteria more robust. Don't fail if initial parameters are perfect. Don't fail if convergence is too rapid. * test/testlmfit.cpp: Fix testcase. 2008-06-17 Niv Drory * ltl/fmatrix/lmfit.h: Change convergence criteria to stop when relative change in chi-square is smaller than some number. Remove extra constructor parameters, supply defaults for all remaining ones. 2008-06-17 Niv Drory * ltl/fmatrix/lusolve.h: New. LU-decomposition for FMatrix. * test/testludecomp.cpp: New. Testcase for LU decomposition. * test/Makefile.am: Add testludecomp.cpp to tests. * ltl/fmatrix/gaussj.h: fix formatting. 2008-06-12 Niv Drory * ltl/fmatrix/marquardt.h (eval): Make input parameters const. 2008-06-10 Ralf Koehler Niv Drory * ltl/marray/simplevec.h: Added << operator. 2008-06-09 Niv Drory * ltl/fmatrix/gaussj.h: Guard against the case that the pivot could not be determined. Throw instead of fail with-out-of-bounds-access. 2008-06-09 Niv Drory * ltl/fmatrix/gaussj.h: Remove extra inlines. * ltl/misc/memblock.h (MemoryBlock): Restore LTL_DEBUG_MEMORY_BLOCK functionality. (~MemoryBlock): Set data pointer = NULL after delete. 2008-06-05 Jan Snigula * ltl/io/ascio.cpp: Added start and nrows parameters to readColumns routines to allow reading of line block. start specifies the starting line from which to read, nrows the number of rows to be read * ltl/ascio.h: same * test/testascio.cpp: Test for above change 2008-05-28 Jan Snigula * ltl/io/ascio.cpp: Fixed missing include 2008-05-26 Jan Snigula * src/io/ascio.cpp: Improved performance on whitespace delimited data * src/ascio.h: same. * src/io/ascio.cpp: Changed readFloatColumns to allow reading of columns in arbitrary order. * src/util/option.cpp: Ported StringArrayOption over from sedfit. * src/util/option.cpp: same. 2008-05-07 Niv Drory * ltl/fmatrix/mrqfuncs.h: Return void instead of TPAR in Gaussian.fill(). 2008-03-11 Niv Drory * ltl/misc/applicops.h: Add typedef vec_value_type to all expression nodes because gcc-4.3 does not accept vector type mismatches anymore. * ltl/misc/applicops_sse.h: same. * ltl/marray/index_iter.h: same. * ltl/marray/merge.h: same. * ltl/marray/expr_iter.h: same. * ltl/marray/marray_iter.h: same. * ltl/marray/expr.h: same. * ltl/marray/apply.h: same. 2008-02-19 Niv Drory * merge vectorizer-devel-branch revisions 267:320 into trunk. * version 1.8.0 * configure.in: Add option tar-ustar to AC_INIT_AUTOMAKE to support long filenames in tar archives * Makefile.am: cleanup. * ltl/misc/memblock.h: Fix posix mutex code. * ltl/config.h: Add support for Intel C/C++ atomic builtins on ia64. 2008-02-19 rkoehler * ltl/fmatrix/lmfit.h: Check length of inputs in eval() when LTL_RANGE_CHECKING. 2008-02-18 Niv Drory * configure.in: Added option --enable-multithread to configure with locked memblock allocations. * ltl/config.h: same. * doc/mainpage_doc.h: document option. 2007-12-14 drory * ltl/io/fits_header.h: Ignore LARGEFILE_SENSITIVE on MacOS X. 2007-12-06 Niv Drory * test/testmarray.cpp: Test anyof/allof/noneof/count before anything else. * test/testsimdstatistics2.cpp: Fix typo in anyof() test. * ltl/marray/reductions_sse.h: Fix bug using SSE _mm_movemask() in anyof/noneof. * ltl/marray/reductions.h: Don't use double negation in anyof() logic. * ltl/marray/reductions_sse.h: Fix overloading __m128i for intel compiler. 2007-12-05 Niv Drory * ltl/marray/reductions_sse.h: Added min/max for all signed types. * ltl/misc/applicops_sse.h: Implement min/max for types that have no intrinsic. * test/testsimdstatistics.cpp: Add test case. * ltl/marray/reductions_sse.h: Added vectorized count(), allof(), noneof(), anyof(). * ltl/marray/reductions.h: Same. * test/testsimdstatistics2.cpp: Add test case. * test/Makefile.am: Same. * ltl/misc/applicops_sse.h: Don't use INTRIN patterns for non-intrinsics. 2007-12-04 Niv Drory * ltl/misc/applicops_sse.h: Add bitwise &,|,^ for integer types. * test/testmasimd2.cpp: Add test. * ltl/misc/applicops_sse.h: Add != (cmpneq) for integer types. * test/testmasimd2.cpp: Add test. * test/testuserfuncs.cpp: Add test of vectorized apply(). * ltl/marray/apply.h: Add documentation. * doc/marray_doc.h: Expand vectorization section. 2007-12-03 Niv Drory * test/testmasimd2.cpp: Added test for vectorized cmp. * test/Makefile.am: Same. * ltl/misc/applicops_sse.h: Vectorized unary not, minus, and many comparison operators on SSE. * ltl/marray/eval.h: Cast vector reads to result type. 2007-12-03 Niv Drory * ltl/misc/applicops_sse.h: Remove implicit conversions between vector types as gcc-4.3 will not accept them anymore. * ltl/marray/reductions_sse.h: Same. * ltl/marray/expr.h: Remove extra ; * ltl/misc/mdebug.h: Add macro LTL_EXPECT_(a,b,mesage). * test/testsimdstatistics.cpp: Use. * test/teststatistics.cpp: Same. * ltl/marray/reductions_sse.h: Count nans more efficiently. Fix vec_not() bug. * ltl/misc/applicops_sse.h: Fixed some incompatibilities with gcc-4.3. Fixed error in vec_not(). 2007-12-02 Niv Drory * test/testuserfuncs.cpp: Add testcase for user-supplied functions. * test/Makefile.am: Same 2007-12-01 Niv Drory * configure.in: Add detection of recent Intel compilers. * ltl/misc/applicops_sse.h: Work around Intel compiler _mm_set1_epi64() weirdness. Intel compiler v10 now passes testsuite. * ltl/misc/applicops_sse.h: Add macro VEC_ZERO(T). * ltl/marray/reductions_sse.h: Use VEC_ZERO(T). 2007-11-30 Niv Drory * Doxyfile: Some configuration changes. * Documentation improved at various places. 2007-11-29 Niv Drory * ltl/marray/reductions_sse.h: Implement vectorized variance(A) and variance(A,nan). * ltl/marray/reductions.h: Same. * test/testsimdstatistics.cpp: Add testcase. * ltl/marray/reductions_sse.h: Implement vectorized average(A) and average(A,nan). * ltl/marray/reductions.h: Same. * test/testsimdstatistics.cpp: Add testcase. * ltl/misc/applicops_sse.h: Add sse_andnot and sse_not patterns. * ltl/marray/eval.h: Fix typo in LTL_UNROLL_EXPRESSIONS_SIMD * ltl/marray/eval_reduc.h: Same. * ltl/marray/expr.h: Implement queryig for the alignment of an expression's data. * ltl/marray/expr_iter.h: Same. * ltl/marray/marray_iter.h: Same. * ltl/marray/index_iter.h: Same. * ltl/marray/merge.h: Same. * ltl/marray/apply.h: Same. * ltl/marray/eval.h: Use new alignment mechanism for vectorized expressions. * ltl/marray/eval_reduc.h: Same. * test/testmasimd.cpp: Test vectorziation of aligned and misaligned expressions. * test/testsimdstatistics.cpp: Same. * test/testsimdstatistics.cpp: Add testcases for sum(A,nan). * ltl/marray/reductions_sse.h: Implement vectorized sum(A,nan). * ltl/misc/applicops_sse.h: Add integer of same size to vector traits. * ltl/marray/reductions.h: Make the vectorized version of the reduction class a friend of the scalar version. * ltl/marray/eval_reduc.h: Pass reduction object to constructor of vectorized reduction object so that private data (like nan value) can be copied. 2007-11-28 Niv Drory * ltl/misc/applicops_sse.h: Define conveniene macros VEC_UNION, VEC_LEN. * ltl/marray/reductions_sse.h: Use. 2007-11-27 Niv Drory * ltl/marray/reductions.h: Add support for reductions that offer vectorized versions only for some input data types. * ltl/marray/reductions_sse.h: Add implementation of vectorized min() and max() for int, float, and double types. * test/testsimdstatistics.cpp: Add testcase. * test/testmarray.cpp: Add more statistics and logical tests. * ltl/marray/eval_reduc.h: Add support for vectorizing reductions. * ltl/marray/reductions.h: Same. * ltl/marray/reductions_sse.h: Add implementation of vectorized reductions (sum). * Makefile.am: Add reductions_sse.h to distribution. * test/testsimdstatistics.cpp: Add testcase. * test/Makefile.am: Same. 2007-11-26 Niv Drory * ltl/misc/applicops_{altivec,sse}.h: define a common interface for loading vector constants. * configure.in,test/Makefile.am: Automatically add appropriate compiler flags (-msse2,-maltivec,-xP, ...) to testmasimd.cpp * ltl/marray/eval_reduc.h: Guard loop unrolling by preprocessor #define LTL_UNROLL_EXPRESIONS. 2007-11-23 Niv Drory * acinclude.m4: Add test for presence of Apple vecLib. Add test for compiler support for GCC-style vector attributes. * configure.in: Add tests for vector support. * test/Makefile.am: Only run SIMD test if vector support is present. * test/testmasimd.cpp: Add to testsuite. * ltl/misc/applicops_sse.h: Add many more vectorized operations. * ltl/marray/eval.h: Improve debug output. * ltl/misc/applicops.h: Improve documentation. 2007-11-22 Niv Drory * ltl/misc/applicops_sse.h: Remove extra #ifdefs. 2007-11-21 Niv Drory * ltl/marray/apply.h: New. Use any unary or binary functor with operator() in MArray expressions: apply( F, Expr ). * ltl/marray.h: include apply.h. * ltl/test/testmerge.h: New. Group tests of merge(), where() and apply(). * ltl/test/Makefile.am: Add testmerge. * ltl/fmatrix/lmfit.h: Allow to retrieve last parameter vector and chi2 even if fit did not succeed. 2007-11-20 Niv Drory * ltl/misc/applicops_sse.h: Added vectorized implementations of pow2 .. pow8. 2007-11-17 Niv Drory * ltl/fmatrix/gaussj.h: Add default constructor with init to 0 to tNMatPivot to avoid annoying compiler warnings. 2007-10-10 Niv Drory * ltl/fmatrix/lmfit.h: Fixed bug handling errors. Changed to require errors squared. 2007-10-10 Niv Drory * ltl/fmatrix/lmfit.h: Removed dependencies on specific containers of data arrays and fit-function parameter types. Almost any container can be used for the data arrays as long as it provides typedefs for const_iterator and value_type. The same value_type must be the parameter type for the function object operator(). This can be a simple type (e.g. float) or a more complex type (e.g. FVector<>) for multi-dimensional data. * ltl/fmatrix/lmfit.h: Write-up the documentation. * ltl/test/testlmfit.cpp: Fix-up the testcase. 2007-10-10 Niv Drory * ltl/misc/exceptions.h: Fixed what() strings in LinAlgebra exceptions. 2007-10-10 Niv Drory * ltl/ascio.h: Fixed signed/unsigned warning. 2007-10-10 Niv Drory * ltl/io/fits_card.cpp (FitsCard::check_syntax): Don't complain about keywords begininng with the same sequence as known keywords but that do not have the necessary following digits. 2007-10-08 Niv Drory * ltl/io/fits_header.h: Added getValuesAsString() to retrieve the value of a FITS header keyword as a string. * ltl/io/fits_header.cpp: same. * ltl/io/fits_card.h: Added pure virtual toString() method to all FitsCards. * ltl/io/fits_card.cpp: same. * ltl/misc/exceptions.h (class FitsException): Fixed what() string. 2007-10-07 Niv Drory * test/testmarrayio.cpp: Added test case for operator<< and operator>> MArray and FVector stream io. * ltl/marray_io.h: Improved error message in operator>>(stream,MArray). * ltl/fvector.h: Improved error message in operator>>(stream,FVector). * ltl/fvector.h: Added operator>> to read FVectors from a stream (compatible with operator<<). 2007-07-26 Niv Drory * ltl/marray/index_iter.h: make operator() and operator* return const references again. 2007-07-13 Niv Drory * ltl/*: gcc-4.3 compatibility work: * ltl/marray.h: remove qualifiers from return types to avoid gcc-4.3 warnings about ignoring these. * ltl/marray/marray_iter.h: same. * ltl/marray/index_iter.h: same. * ltl/fvector/fvmemory.h: same. * ltl/util/region.h: Include for abs(). * ltl/marray/reductions.h: Include . * ltl/misc/mdebug.h: Added some parenthesis around && and || to avoid gcc-4.3 warnings. * ltl/misc/range.h: Explicitly include for INT_MIN to make newer gcc happy. * ltl/config.h: Change loop unrollling macros to LTL_DONT_UNROLL_EXPRESIONS{_SIMD} to have file-by-file control. If these are defined before ltl includes, no unrolling will be done. 2007-07-12 Niv Drory * ltl/marray/eval.h: Guard loop unrolling by preprocessor #define LTL_UNROLL_EXPRESIONS and LTL_UNROLL_EXPRESSIONS_SIMD. * ltl/config.h: Set defaults for these macors. * test/testmasimd.cpp,testsimdperf.cpp: Add test. 2007-07-11 Niv Drory * ltl/misc/applicops_sse.h: Added support for more of SSE1-SSE3 supplied vector functions. Removed any MMX functions. SSE2 or better is now required. * ltl/misc/applicops_sse.h: Added support for vMathLib-supplied vectorized math functions (sin,log,exp, ...) on MacOS X Intel. * test/testmasimd.cpp: Test case for vector math. 2007-07-10 Niv Drory , Claus A. Goessl * ltl/marray/eval.h: Minor cleanup in loop code. * ltl/config.h: add LTL_THREADSAFE_MEMBLOCK, off by default. * ltl/misc/memblock.h (class SynchronizedCounter): Added. Provides thread safe counter. * ltl/misc/memblock.h (class MemoryBlock): Use. * ltl/fmatrix/mrqhesse.h: factored out. * ltl/fmatrix/marquardt.h: cleaned up includes. * ltl/fmatrix/mrqfuncs.h: cleaned up includes. * ltl/fmatrix/mrqfuncs.h: renamed class Function to MRQFunction. * ltl/fmatrix/lmfit.h: added general nonlin fitter. * test/testlmfit.cpp: test case for nonlin fitter. * Makefile.am,test/Makefile.am: added new files. 2005-11-03 Niv Drory * ltl/fvector/fviter.h: Added postfix operator++, operator-- to satisfy bidirectional_iterator. More stuff usable with fvectors. 2005-11-03 Claus A. Goessl * ltl/fits.h, ltl/fitsio.h: MArray& parameters to FitsOut() now can be const. 2005-10-07 Niv Drory * ltl/fvector.h, ltl/fvector/fviter.h: added missing stl iterator traits, end iterators and end() methods, and operator== and operator!= for iterators. Now FVectors can be used with std::algorithm classes. * test/testfvec.cpp: added testcase for the above using std::copy. 2005-10-03 Niv Drory * ltl/io/ascio.cpp,ltl/io/ascio.h: Added readFloatColumns( int*, int ) to read an arbitrary list of (non consecutive) float columns from a file. * test/testascio.cpp: Test case for this routine added. 2005-09-30 Niv Drory * ltl/misc/mdebug.h: Replaced deprecated strstream header by and stringstream objects 2005-04-10 Claus A. Goessl * ltl/io/fits.cpp: off-by-1 error in fits file mapping when used with regions fixed. 22005-01-31 Niv Drory * ltl/misc/mdebug.h: fixed missing 'using std::' stuff when LTL_THROW_ON_RANGE_ERROR is #defined 2005-01-28 Niv Drory * option_parser.cpp: added function deleteOptions() * option_parser.cpp, option_parser.h: printUsage() now prints the options in the order they were added as opposed to alphabetically. This gives more useful usage info as the options can be grouped logically. writeConfig() has a bool option to control the order of the output. 22005-01-04 Claus A. Goessl * fits.cpp, fits_header.cpp, fits_header.h: Reading of image extensions works now. 2004-12-23 Niv Drory * Doxyfile: removed the treeview. documentation is much more concise and compact. 22004-11-25 Niv Drory * test/testmaperf.cpp: simple fmadd and matmul performance tests added - for compiler evaluation more than anyting else 2004-11-23 Niv Drory * ltl/{utdate, stringfac}.cpp, ltl/io/{fits, fits_card}.cpp: remove extra semicolon after method definitions. * ltl now compiles with g++ -pedantic -ansi 2004-11-21 Niv Drory * ltl/io/fits_data.h (struct sData): changed pointer casts to access to union fixing gcc-4.0 miscompilation when -fstrict-aliasing is set. * test/testfitsio.cpp: added tests for char, int, double fits files 2004-07-23 Niv Drory * test/testltl.cpp: removed (unused file). 2004-07-10 Niv Drory * ltl/marray/memblock.h, ltl/config.h: Added switch LTL_DEBUG_MEMORY_BLOCK to log allocation and deallocation. 2004-06-30 Niv Drory * ltl/marray/cast.h: Added cast()( Expr ) operation to provide static_cast semantics to MArrays and expressions. * test/testmarray.cpp: added cast<> test case. * ltl/marray.h, ltl/marray/*, ltl/statistics.h: Removed redundant copying of expressions before calling eval(). Const-correctness is now relying on const_cast<> (ugly, but more efficient) * ltl/fvector.h, ltl/fvector/*: Removed redundant copying of expressions * ltl/fmatrix.h, ltl/fmatrix/*: Removed redundant copying of expressions * configure.in: added -march=k8 flags for gcc x86_64 targets * Version ltl-1.7.10, tagged as ltl-1-7-10 2004-05-26 Niv Drory * ltl/config.h: Fixed undefine __builtin_prefetch for gcc versions before 3.1. Added LTL_EMIT_PREFETCH_GCC preprocessor symbol to control prefetch insn generation. 2004-05-25 Niv Drory * ltl/misc/applicops_sse.h: Added vectorization for x86 processors using MMX/SSE/SSE2/SSE3. Tested with gcc-3.4 on x86_64. * ltl/marray.h, marray/expr.h, marray/eval.h: Fixes for gcc-3.4 and SSE. * updated vectorizer documentation * version ltl-1.7.9, tagged as ltl-1-7-9 2004-05-24 Niv Drory * Initial documentation for auto-vectorizer. * version ltl-1-7.8, tag ltl-1-7-8 2004-05-22 Niv Drory * ltl/marray.h, ltl/marray_ops.h: reimplemented operatorX. Removed Assigner objects. Now operator= and operatorX= use the same underlying operation implementation, in fact A X= B is transformed into A = A X B. This allows a single implementation of all mathematical operations. * version ltl-1.7.7, tagged as ltl-1-7-7 2004-05-06 Niv Drory * marray*: now testmarray.cpp compiles and passes with LTL_USE_SIMD * ltl/marray/eval.h: fixed bug when dealing with misaligned vectorized expressions, fixed handling of non-vectorizable expressions * ltl/misc/applicops.h: handling of non-vectorizable expressions improved, now can be freeliy mixed with vectorizable ones in the same compilation unit * ltl/marray/index_iter.h,merge.h: handling of non-vectorizable expressions improved * version ltl-1.7.6, tagged as ltl-1-7-6 2004-05-05 Niv Drory * marray.h,marray/*: Added support for automatic use of vector units to expression template engine. Currently, only Altivec on PowerPC is supported. * version ltl-1.7.5, tagged as ltl-1-7-5 2004-04-26 Niv Drory * Doxyfile: removed documentation for most of the expression template related internal classes and functions. 2004-04-23 Niv Drory * marray_io.h: fixed type in operator<< dim=7 * marray_iter.h, shape.h, memblock.h, mrqfuncs.h: fixed name lookup issues for gcc-3.4: mainly this-> prefix to members defined in a template base class to make reference template-dependent * version advanced to 1.7.4, tagged ltl-1-7-3_pre-gcc-3-4 for pre commit status Thu Mar 25 2004 Niv Drory * version 1.7.3 * marray.h, mdebug.h, marray_methods.cpp, slice.h, shape.h: extended MArrays to max. 7 dimensions * fits.cpp: removed code that prevented regions with dimensions of length 1 Tue Jan 13 2004 Claus Goessl * version 1.7.2 * added FITS image extension support for FITS file reading (untested) * added mapped memory option for MArrays Sat Nov 15 2003 Claus Goessl * version 1.7.1 * converted documentation to Doxygen * changed namespace statements and includes to obey Doxygen resolution logics * added utility documentation * started with LFS support Wed Oct 8 2003 Claus Goessl * new development branch ltl-1-7 Wed Oct 8 2003 Jan Snigula * version 1.6 * version bump to 1.6 * Merged development tree Wed Aug 27 2003 Niv Drory * version 1.5.3 * ported to Intel icc version 7.1 (tested on ia32/Linux) * configure.in: added support for Intel icc * io/fits_const.cpp: fixed bug in FitsKnownList::end() * io/fits_header.cpp: fixed bug with c_str() for tmp strings * util/* namespace fixes for icc Tue Aug 19 2003 Niv Drory * version 1.5.2 * ported to Sun CC version 5.5 (Sun ONE Studio 8) * marray/*, fvector/*, fmatrix/*, misc/staticinit.h: various little tweaks to support Sun CC version 5.5 * configure.in: added support for Sun CC, *solaris* Sun Aug 17 2003 Niv Drory * version 1.5.1 * ported to IBM xlC version 6 * marray/expr.h, fvector/fvexpr.h, fmatrix/fmexpr.h: changed global operator definitions to explicitly provide specializations for basic types (literals in expressions) to circumvent xlC instantiation bug (?) * configure.in, */Makefile.am: added proper compiler flag determination code Wed Feb 17 2003 Niv Drory * new development branch ltl-1-5 Wed Aug 28 2002 Niv Drory * cvs checkin as module ltl * old sources renamed to module ltl-1.2 in repository Sun Aug 18 2002 Niv Drory * doc/*: moved documentation to texinfo format Thu Aug 8 2002 Claus Goessl * ltl: Version number promoted to ltl-1.4a6 * configure.in: added test on ios header * util/stringfac, util/utdate: updated to sstream, still keeping strstream as spare * fvector.h, fmatrix.h: added template unrolled constructors * gaussj: added Gauss Jordan eliminition algorithm * test: added testutdate and testgaussj Thu Jul 25 2002 Niv Drory * ltl: Version number promoted to ltl-1.4a5 * fmatrix: fixed gcc2 incompatibility Thu Jul 25 2002 Claus Goessl * ltl: Version number promoted to ltl-1.4a4 * fitsio.h, fits.h, fits_data.h: bugfix and implementation of missing methods Wed Jul 24 2002 Niv Drory * ltl: Version number promoted to ltl-1.4a3 * marray/index_iter.h: bug fix Mon Jul 22 2002 Claus Goessl * ltl: Version number promoted to ltl-1.4a2 * ascio: added Jan's contribution * fitsio: finished new data reading and writing methods * bugfix: for gcc2 include where ptrdiff_t is needed Mon Jul 15 2002 Niv Drory * ltl: Version number promoted to ltl-1.4a1 Sat Jul 14 2002 Niv Drory * ltl/fmatrix/*: ltl/fmatrix.h: Changed iterators to allow 2-d access. Changed expresions accordingly. Transpose added. * ltl/fmatrix/fmatmat.h: Matrix-matrix multiplication added. Fri Jul 13 2002 Claus Goessl * fits I/O: New fits byte-swap implementation 2002 Niv Drory Claus Goessl * ltl: Fixed size (compile-time) vectors and matrices added. basic support for dot-product operations added. * ltl: Switched to autoconf/automake build system 2002 Niv Drory * ltl: New development branch ltl-1.3