aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/CoreEvaluators.h
Commit message (Collapse)AuthorAge
* evaluator<Replicate> must evaluate its argument to avoid redundant evaluationsGravatar Gael Guennebaud2014-02-19
|
* Add a Solve expression for uniform treatment of solve() methods.Gravatar Gael Guennebaud2014-02-19
|
* Add evaluator for RefGravatar Gael Guennebaud2014-02-18
|
* Fix evaluator<Replicate> for fixed size objectsGravatar Gael Guennebaud2014-01-26
|
* Enable use of evaluators for noalias and lazyProduct, add conversion to ↵Gravatar Gael Guennebaud2013-12-03
| | | | scalar for inner products
* Fix usage of Dense versus DenseShapeGravatar Gael Guennebaud2013-12-02
|
* First step toward the generalization of evaluators to triangular, sparse and ↵Gravatar Gael Guennebaud2013-11-29
| | | | | | other fancyness. Remove product_tag template parameter to Product.
* Get rid of evalautor_implGravatar Gael Guennebaud2013-11-29
|
* Remove HasEvalTo and all at once eval modeGravatar Gael Guennebaud2013-11-29
|
* Simplify evaluator of EvalToTempGravatar Gael Guennebaud2013-11-27
|
* Drop evaluators for SwapWrapper and SelfCwiseBinaryOpGravatar Gael Guennebaud2013-11-07
|
* Clean evaluator_impl_base. It will probably be removed in the futureGravatar Gael Guennebaud2013-11-07
|
* bug #99: refactor assignment and compound assignment mechanism through ↵Gravatar Gael Guennebaud2013-11-06
| | | | | | | | | | "assignment functors" and "assignement kernels". The former is very low level and generic. The later abstarct the former for dense expressions. This refactoring permits to get rid of the very ugly SwapWrapper and SelfCwiseBinaryOp classes. In the future, this will also permit to simplify all these evaluation loops and perhaps to reuse them for reduxions. That will also permit to specialize for operations like expr1 += expr2 outside Eigen, and so for any kind of expressions (dense, sparse, tensor, etc.)
* Fixed constness in Array- and MatrixWrapper.Gravatar Hauke Heibel2013-07-28
| | | | This also fixes the compilation on VC11.
* Add missing template keyword in evaluatorsGravatar Gael Guennebaud2013-03-01
|
* Generalize Block<> to support various implementation wrt StorageKind (just ↵Gravatar Gael Guennebaud2012-11-16
| | | | like other expression)
* Evaluators: Fixed bug caused by Diagonal dynamic index change.Gravatar Jitse Niesen2012-07-14
| | | | This caused the evaluators unit test to fail.
* Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.Gravatar Benoit Jacob2012-07-13
|
* Evaluators: Remove member variables if known at compile-time.Gravatar Jitse Niesen2012-07-06
| | | | Also, use composition instead of inheritance in EvalToTemp evaluator.
* Move implementation of coeff() &c to Matrix/Array evaluator.Gravatar Jitse Niesen2012-07-05
|
* Implement A.noalias() = B * C without temporariesGravatar Jitse Niesen2012-06-29
| | | | | | | | * Wrap expression inside EvalToTemp in copy_using_evaluators() if we assume aliasing for that expression (that is, for products) * Remove temporary kludge of evaluating expression to temporary in AllAtOnce traversal * Implement EvalToTemp expression object
* Make product eval-at-once.Gravatar Jitse Niesen2012-06-29
| | | | | | | | | * Make product EvalAtOnce in cases OuterProduct, GemmProduct and GemvProduct * Ensure that product evaluators are nested inside EvalToTemp evaluator * As temporary kludge, evaluate expression to temporary in AllAtOnce traversal and pass expression operator to evalTo()
* Implement eval-at-once in evaluator.Gravatar Jitse Niesen2012-06-29
| | | | | | | | - Add evaluator_traits with HasEvalTo flag, which is true if evaluator has evalTo() function. - Add AllAtOnce traversal, which calls evalTo() in evaluator. - If source evaluator in copy_using_evaluator has HasEvalTo set, then use AllAtOnce traversal.
* Move (part of) evaluation of products to evaluator objects.Gravatar Jitse Niesen2012-06-29
| | | | | | | * Copy implementation from CoeffBasedProduct. * Copy implementation from GeneralProduct in InnerProduct case. * For GeneralProduct in other cases, call the evalTo() member function with expression objects in constructor of evaluator.
* Fix bug in {Matrix,Array}Wrapper evaluatorGravatar Jitse Niesen2012-06-24
|
* put the resurected files into the Eigen namespaceGravatar Gael Guennebaud2012-06-22
|
* resurrect expression evaluatorsGravatar Gael Guennebaud2012-06-22
|
* Remove evaluators for 2.1 release.Gravatar Jitse Niesen2011-12-14
| | | | We plan to re-instate them when we branch 2.2 (see bug #388).
* Store light-weight objects in evaluators by value.Gravatar Jitse Niesen2011-05-13
| | | | This resolves failure in unit test caused by dying temporaries.
* Implement compound assignments using evaluator of SelfCwiseBinaryOp.Gravatar Jitse Niesen2011-04-28
|
* Implement swap using evaluators.Gravatar Jitse Niesen2011-04-28
|
* Use copyCoeff/copyPacket in copy_using_evaluator.Gravatar Jitse Niesen2011-04-22
|
* Implement evaluator for Diagonal.Gravatar Jitse Niesen2011-04-22
|
* Implement evaluators for Reverse.Gravatar Jitse Niesen2011-04-22
|
* Implement evaluators for ArrayWrapper and MatrixWrapper.Gravatar Jitse Niesen2011-04-22
|
* Implement unrolling in copy_using_evaluator() .Gravatar Jitse Niesen2011-04-13
|
* Implement evaluator for PartialReduxExpr as a dumb wrapper.Gravatar Jitse Niesen2011-04-13
|
* Implement evaluator for Replicate.Gravatar Jitse Niesen2011-04-12
|
* Implement evaluator for Select.Gravatar Jitse Niesen2011-04-12
|
* Decouple Cwise*Op evaluators from expression objectsGravatar Jitse Niesen2011-04-05
|
* Implement evaluator for CwiseUnaryViewGravatar Jitse Niesen2011-04-05
|
* Implement evaluator for MapGravatar Jitse Niesen2011-04-05
|
* Make evaluators for Matrix and Array inherit from common base class.Gravatar Jitse Niesen2011-04-04
| | | | This gets rid of some code duplication.
* Do some of the actual work in evaluator for Block.Gravatar Jitse Niesen2011-04-04
| | | | Also, add simple accessor methods to Block expression class.
* Evaluators: add Block evaluator as dumb wrapper, add slice vectorization.Gravatar Jitse Niesen2011-03-31
|
* Evaluators: Make inner vectorization more similar to default traversal.Gravatar Jitse Niesen2011-03-28
|
* Evaluators: Implement linear traversal, better testing.Gravatar Jitse Niesen2011-03-27
|
* Evaluators: Implement inner vectorization.Gravatar Jitse Niesen2011-03-27
| | | | | The implementation is minimal (I only wrote the functions called by the unit test) and ugly (lots of copy and pasting).
* Evaluators: Implement LinearVectorizedTraversal, packet ops in evaluators.Gravatar Jitse Niesen2011-03-25
|
* impl basic product evaluator on top of previous oneGravatar Gael Guennebaud2011-03-24
|