aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/OperatorEquals.h
Commit message (Collapse)AuthorAge
* - merge ei_xpr_copy and ei_eval_if_needed_before_nestingGravatar Benoit Jacob2008-04-06
| | | | | | | - make use of CoeffReadCost to determine when to unroll the loops, for now only in Product.h and in OperatorEquals.h performance remains the same: generally still not as good as before the big changes.
* fixes as discussed with Gael on IRC. Mainly, in Fuzzy.h, and Dot.h, useGravatar Benoit Jacob2008-04-05
| | | | | | ei_xpr_copy to evaluate args when needed. Had to introduce an ugly trick with ei_unref as when the XprCopy type is a reference one can't directly access member typedefs such as Scalar.
* * make use of the EvalBeforeNestingBit and EvalBeforeAssigningBitGravatar Gael Guennebaud2008-04-05
| | | | | | | | | | | in ei_xpr_copy and operator=, respectively. * added Matrix::lazyAssign() when EvalBeforeAssigningBit must be skipped (mainly internal use only) * all expressions are now stored by const reference * added Temporary xpr: .temporary() must be called on any temporary expression not directly returned by a function (mainly internal use only) * moved all functors in the Functors.h header * added some preliminaries stuff for the explicit vectorization
* * introducte recursive Flags system for the expressionsGravatar Benoit Jacob2008-03-30
| | | | | | -- currently 3 flags: RowMajor, Lazy and Large -- only RowMajor actually used for now * many minor improvements
* * #define EIGEN_NDEBUG now also disables asserts. UsefulGravatar Benoit Jacob2008-03-26
| | | | | | | | | | | | to disable eigen's asserts without disabling one's own program's asserts. Notice that Eigen code should now use ei_assert() instead of assert(). * Remove findBiggestCoeff() as it's now almost redundant. * Improve echelon.cpp: inner for loop replaced by xprs. * remove useless "(*this)." here and there. I think they were first introduced by automatic search&replace. * fix compilation in Visitor.h (issue triggered by echelon.cpp) * improve comment on swap().
* * support for matrix-scalar quotient with integer scalar types.Gravatar Gael Guennebaud2008-03-21
| | | | | | * added cache efficient matrix-matrix product. - provides a huge speed-up for large matrices. - currently it is enabled when an explicit unrolling is not possible.
* a lot of renamingGravatar Benoit Jacob2008-03-13
| | | | | | | | internal classes: AaBb -> ei_aa_bb IntAtRunTimeIfDynamic -> ei_int_if_dynamic unify UNROLLING_LIMIT (there was no reason to have operator= use a higher limit) etc...
* generalized ei_traits<>.Gravatar Benoit Jacob2008-03-12
| | | | | | Finally the importing macro is named EIGEN_BASIC_PUBLIC_INTERFACE because it does not only import the ei_traits, it also makes the base class a friend, etc.
* big change: MatrixBase only takes one template parameter "Derived", theGravatar Benoit Jacob2008-03-10
| | | | | | template parameter "Scalar" is removed. This is achieved by introducting a template <typename Derived> struct Scalar to achieve a forward-declaration of the Scalar typedefs.
* * Fix a compilation issue with large fixed-size matrices: the unrollers ↵Gravatar Gael Guennebaud2008-03-05
| | | | | | were always instanciated. * the unrolling limits are configurable at compile time.
* Relicense --> dual-license LGPL3+/GPL2+Gravatar Benoit Jacob2008-02-28
|
* -add set...() methods and their documentation; remove GenericGravatar Benoit Jacob2008-01-11
| | | | | | -use row-major traversal when the number of columns is fixed and the number of rows is dynamic -other minor changes
* switch to enums everywhereGravatar Benoit Jacob2008-01-10
|
* Ready for alpha2 release.Gravatar Benoit Jacob2008-01-07
| | | | | | - complete documentation - add TODO - update copyright years
* - move: DerivedTraits becomes MatrixBase::TraitsGravatar Benoit Jacob2008-01-06
| | | | | | - the static constants are private again in the Derived classes - more documentation and code snippets - new isDiagonal() method
* remove all the _Order mechanics, now we are always traversing matrices inGravatar Benoit Jacob2008-01-06
| | | | | | | column-major order, even if storage is row-major. Benchmark showed that adapting the traversal order to the storage order brought no benefit. Also do some cleanup after Gael's big patch.
* Patch by Gael Guennebaud, making Eigen compatible with the Intel compiler (icc).Gravatar Benoit Jacob2008-01-06
| | | | CCMAIL:eigen@lists.tuxfamily.org
* - make MatrixBase and all expressions aware of their preferred traversal order.Gravatar Benoit Jacob2008-01-05
| | | | | | | Honor this preference in operator=. - add several methods to the API - rework API for diagonal matrices - add benchmarking code
* move Core/ to a src/ subdir, in preparation for following changesGravatar Benoit Jacob2007-12-28