aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/AssignEvaluator.h
Commit message (Collapse)AuthorAge
* Resizing is done by call_assignment_noalias, so no need to perform it when ↵Gravatar Gael Guennebaud2014-07-21
| | | | dealing with aliasing.
* Make sure we evaluate into temporaries matching evaluator storage order ↵Gravatar Gael Guennebaud2014-07-19
| | | | requirements
* Make operator=(EigenBase<>) uses the new assignment mechanism and introduce ↵Gravatar Gael Guennebaud2014-06-25
| | | | a generic EigenBase to EigenBase assignment kind based on the previous evalTo mechanism.
* Implement binaryop and transpose evaluators for sparse matricesGravatar Gael Guennebaud2014-06-23
|
* Extend evaluation traits debuging infoGravatar Gael Guennebaud2014-03-12
|
* Fix a few regression when moving the flagsGravatar Gael Guennebaud2014-03-12
|
* Move evaluation related flags from traits to evaluator and fix evaluators of ↵Gravatar Gael Guennebaud2014-03-12
| | | | MapBase and Replicate
* Move CoeffReadCost mechanism to evaluatorsGravatar Gael Guennebaud2014-03-10
|
* Generalize evaluator<Inverse<>> such that there is no need to specialize itGravatar Gael Guennebaud2014-02-21
|
* Port LU module to evaluators (except image() and kernel())Gravatar Gael Guennebaud2014-02-20
|
* Fix mixing scalar types with evaluatorsGravatar Gael Guennebaud2014-02-19
|
* Fix vectorization logic wrt assignment functorsGravatar Gael Guennebaud2014-02-19
|
* CleaningGravatar Gael Guennebaud2014-02-18
|
* Finally, the simplest remains to deffer resizing at the latestGravatar Gael Guennebaud2014-02-18
|
* New design for handling automatic transpositionGravatar Gael Guennebaud2014-02-18
|
* Deal with automatic transposition in call_assignment, fix a few shortcomingsGravatar Gael Guennebaud2014-02-17
|
* Add missing template keywordGravatar Gael Guennebaud2014-01-26
|
* Refactor triangular assignmentGravatar Gael Guennebaud2014-01-25
|
* Add direct assignment of productsGravatar Gael Guennebaud2013-12-02
|
* Get rid of call_dense_swap_loopGravatar Gael Guennebaud2013-12-02
|
* 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.
* Remove HasEvalTo and all at once eval modeGravatar Gael Guennebaud2013-11-29
|
* Evaluator: introduce the main Assignment class, add call_assignment to ↵Gravatar Gael Guennebaud2013-11-25
| | | | bypass NoAlias and AssumeAliasing, and some bits of cleaning
* bug #99: move the creation of the evaluator to a central place, and make ↵Gravatar Gael Guennebaud2013-11-07
| | | | generic_dense_assignment_kernel hold the destination and source evaluators
* 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.)
* Fix static/inline orderGravatar Gael Guennebaud2013-11-06
|
* Clean source code and unit tests with respect to -Wunused-local-typedefsGravatar Gael Guennebaud2013-04-10
|
* Fix "storage class is not first" warningsGravatar Gael Guennebaud2013-02-28
|
* Fix compilation with ICC that was unable to instanciate first_alignedGravatar Gael Guennebaud2013-02-26
|
* Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.Gravatar Benoit Jacob2012-07-13
|
* 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.
* Implement interface for NoAlias assignments.Gravatar Jitse Niesen2012-06-29
| | | | | | | | * Rename the old copy_using_evaluators to noalias_copy_using_evaluators. * Write a new copy_using_evaluators which strips NoAlias expression, if present, and calls noalias_copy_using_evaluators; in future, it will also take care of aliasing in products. * Add expression() getter to NoAlias.
* Resize lhs automatically in copy_using_evaluator().Gravatar Jitse Niesen2012-06-28
|
* Fix bug in evaluators with sliced vectorization.Gravatar 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).
* 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 unrolling in copy_using_evaluator() .Gravatar Jitse Niesen2011-04-13
|
* Decouple AssignEvaluator.h from assign_traits from Assign.hGravatar Jitse Niesen2011-04-12
|
* 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
|