Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Resizing is done by call_assignment_noalias, so no need to perform it when ↵ | 2014-07-21 | |
| | | | | dealing with aliasing. | ||
* | Make sure we evaluate into temporaries matching evaluator storage order ↵ | 2014-07-19 | |
| | | | | requirements | ||
* | Make operator=(EigenBase<>) uses the new assignment mechanism and introduce ↵ | 2014-06-25 | |
| | | | | a generic EigenBase to EigenBase assignment kind based on the previous evalTo mechanism. | ||
* | Implement binaryop and transpose evaluators for sparse matrices | 2014-06-23 | |
| | |||
* | Extend evaluation traits debuging info | 2014-03-12 | |
| | |||
* | Fix a few regression when moving the flags | 2014-03-12 | |
| | |||
* | Move evaluation related flags from traits to evaluator and fix evaluators of ↵ | 2014-03-12 | |
| | | | | MapBase and Replicate | ||
* | Move CoeffReadCost mechanism to evaluators | 2014-03-10 | |
| | |||
* | Generalize evaluator<Inverse<>> such that there is no need to specialize it | 2014-02-21 | |
| | |||
* | Port LU module to evaluators (except image() and kernel()) | 2014-02-20 | |
| | |||
* | Fix mixing scalar types with evaluators | 2014-02-19 | |
| | |||
* | Fix vectorization logic wrt assignment functors | 2014-02-19 | |
| | |||
* | Cleaning | 2014-02-18 | |
| | |||
* | Finally, the simplest remains to deffer resizing at the latest | 2014-02-18 | |
| | |||
* | New design for handling automatic transposition | 2014-02-18 | |
| | |||
* | Deal with automatic transposition in call_assignment, fix a few shortcomings | 2014-02-17 | |
| | |||
* | Add missing template keyword | 2014-01-26 | |
| | |||
* | Refactor triangular assignment | 2014-01-25 | |
| | |||
* | Add direct assignment of products | 2013-12-02 | |
| | |||
* | Get rid of call_dense_swap_loop | 2013-12-02 | |
| | |||
* | Fix usage of Dense versus DenseShape | 2013-12-02 | |
| | |||
* | First step toward the generalization of evaluators to triangular, sparse and ↵ | 2013-11-29 | |
| | | | | | | other fancyness. Remove product_tag template parameter to Product. | ||
* | Remove HasEvalTo and all at once eval mode | 2013-11-29 | |
| | |||
* | Evaluator: introduce the main Assignment class, add call_assignment to ↵ | 2013-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 ↵ | 2013-11-07 | |
| | | | | generic_dense_assignment_kernel hold the destination and source evaluators | ||
* | bug #99: refactor assignment and compound assignment mechanism through ↵ | 2013-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 order | 2013-11-06 | |
| | |||
* | Clean source code and unit tests with respect to -Wunused-local-typedefs | 2013-04-10 | |
| | |||
* | Fix "storage class is not first" warnings | 2013-02-28 | |
| | |||
* | Fix compilation with ICC that was unable to instanciate first_aligned | 2013-02-26 | |
| | |||
* | Automatic relicensing to MPL2 using Keirs script. Manual fixup follows. | 2012-07-13 | |
| | |||
* | Implement A.noalias() = B * C without temporaries | 2012-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. | 2012-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. | 2012-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. | 2012-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(). | 2012-06-28 | |
| | |||
* | Fix bug in evaluators with sliced vectorization. | 2012-06-24 | |
| | |||
* | put the resurected files into the Eigen namespace | 2012-06-22 | |
| | |||
* | resurrect expression evaluators | 2012-06-22 | |
| | |||
* | Remove evaluators for 2.1 release. | 2011-12-14 | |
| | | | | We plan to re-instate them when we branch 2.2 (see bug #388). | ||
* | Implement compound assignments using evaluator of SelfCwiseBinaryOp. | 2011-04-28 | |
| | |||
* | Implement swap using evaluators. | 2011-04-28 | |
| | |||
* | Use copyCoeff/copyPacket in copy_using_evaluator. | 2011-04-22 | |
| | |||
* | Implement unrolling in copy_using_evaluator() . | 2011-04-13 | |
| | |||
* | Decouple AssignEvaluator.h from assign_traits from Assign.h | 2011-04-12 | |
| | |||
* | Evaluators: add Block evaluator as dumb wrapper, add slice vectorization. | 2011-03-31 | |
| | |||
* | Evaluators: Make inner vectorization more similar to default traversal. | 2011-03-28 | |
| | |||
* | Evaluators: Implement linear traversal, better testing. | 2011-03-27 | |
| | |||
* | Evaluators: Implement inner vectorization. | 2011-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. | 2011-03-25 | |
| |