aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/CoreEvaluators.h
Commit message (Collapse)AuthorAge
* Fix shortcoming in fixed-value deduction of startRow/startColGravatar Gael Guennebaud2016-02-29
|
* bug #667: declare several critical functions as FORECE_INLINE to make ICC ↵Gravatar Gael Guennebaud2016-01-31
| | | | | | | happier. <g.gael@free.fr> HG: branch 'default' HG: changed Eigen/src/Core/ArrayBase.h HG: changed Eigen/src/Core/AssignEvaluator.h HG: changed Eigen/src/Core/CoreEvaluators.h HG: changed Eigen/src/Core/CwiseUnaryOp.h HG: changed Eigen/src/Core/DenseBase.h HG: changed Eigen/src/Core/MatrixBase.h
* bug #1158: PartialReduxExpr is a vector expression, and it thus must expose ↵Gravatar Gael Guennebaud2016-01-28
| | | | the LinearAccessBit flag
* bug #1144: fix regression in x=y+A*x (aliasing), and move ↵Gravatar Gael Guennebaud2016-01-09
| | | | evaluator_traits::AssumeAliasing to evaluator_assume_aliasing.
* Fix storage order of PartialReduxGravatar Gael Guennebaud2015-12-10
|
* Add LU::transpose().solve() and LU::adjoint().solve() API.Gravatar Gael Guennebaud2015-12-01
|
* bug #1009, part 1/2: make sure vector expressions expose LinearAccessBit flag.Gravatar Gael Guennebaud2015-11-27
|
* Refactoring of the cost model:Gravatar Gael Guennebaud2015-10-28
| | | | | | | | | | | - Dynamic is now an invalid value - introduce a HugeCost constant to be used for runtime-cost values or arbitrarily huge cost - add sanity checks for cost values: must be >=0 and not too large This change provides several benefits: - it fixes shortcoming is some cost computation where the Dynamic case was not properly handled. - it simplifies cost computation logic, and should avoid future similar shortcomings. - it allows to distinguish between different level of dynamic/huge/infinite cost - it should enable further simplifications in the computation of costs (save compilation time)
* Simplify evaluator::Flags for Map<>Gravatar Gael Guennebaud2015-10-27
|
* Re-enable vectorization of LinSpaced, plus some cleaningGravatar Gael Guennebaud2015-10-08
|
* Clean evaluator<EvalToTemp>Gravatar Gael Guennebaud2015-10-08
|
* Properly implement PartialReduxExpr on top of evaluators, and fix multiple ↵Gravatar Gael Guennebaud2015-10-08
| | | | evaluation of nested expression
* Some cleaning in evaluatorsGravatar Gael Guennebaud2015-10-08
|
* Add a few missing EIGEN_DEVICE_FUNC declarationsGravatar Gael Guennebaud2015-09-03
|
* Since there is no reason for evaluators to be nested by reference, let's ↵Gravatar Gael Guennebaud2015-09-02
| | | | remove the evaluator<>::nestedType indirection.
* Make evaluators non-copyable. This guarantee that evaluators storing ↵Gravatar Gael Guennebaud2015-09-02
| | | | temporaries do not introduce unwanted copy overhead.
* Cleaning pass on evaluators: remove the useless and error prone ↵Gravatar Gael Guennebaud2015-09-02
| | | | evaluator<>::type indirection.
* Allow to use arbitrary packet-types during evaluation.Gravatar Gael Guennebaud2015-08-07
| | | | This is implemented by adding a PacketType template parameter to packet and writePacket members of evaluator<>.
* Let unpacket_traits<> exposes the required alignment and make use of it ↵Gravatar Gael Guennebaud2015-08-07
| | | | everywhere
* First part of a big refactoring of alignment control to enable the handling ↵Gravatar Gael Guennebaud2015-08-06
| | | | | | | | | of arbitrarily aligned buffers. It includes: - AlignedBit flag is deprecated. Alignment is now specified by the evaluator through the 'Alignment' enum, e.g., evaluator<Xpr>::Alignment. Its value is in Bytes. - Add several enums to specify alignment: Aligned8, Aligned16, Aligned32, Aligned64, Aligned128. AlignedMax corresponds to EIGEN_MAX_ALIGN_BYTES. Such enums are used to define the above Alignment value, and as the 'Options' template parameter of Map<> and Ref<>. - The Aligned enum is now deprecated. It is now an alias for Aligned16. - Currently, traits<Matrix<>>, traits<Array<>>, traits<Ref<>>, traits<Map<>>, and traits<Block<>> also expose the Alignment enum.
* bug #973: update macro-level control of alignement by introducing ↵Gravatar Gael Guennebaud2015-07-29
| | | | user-controllable EIGEN_MAX_ALIGN_BYTES and EIGEN_MAX_STATIC_ALIGN_BYTES macros. This changeset also removes EIGEN_ALIGN (replaced by EIGEN_MAX_ALIGN_BYTES>0), EIGEN_ALIGN_STATICALLY (replaced by EIGEN_MAX_STATIC_ALIGN_BYTES>0), EIGEN_USER_ALIGN*, EIGEN_ALIGN_DEFAULT (replaced by EIGEN_ALIGN_MAX).
* Remove useless specializations of evaluator_traitsGravatar Gael Guennebaud2015-06-19
|
* Add missing accessors for 1D index based access to Replicate<> expressions.Gravatar Gael Guennebaud2015-06-08
|
* Fix a unused-var warningGravatar Benoit Jacob2015-03-15
|
* bug #973, improve AVX support by enabling vectorization of Vector4i-like ↵Gravatar Gael Guennebaud2015-03-13
| | | | types, and enforcing alignement of Vector4f/Vector2d-like types to preserve compatibility with SSE and future Eigen versions that will vectorize them with AVX enabled.
* Merge Index-refactoring branch with default, fix PastixSupport, remove some ↵Gravatar Gael Guennebaud2015-02-13
|\ | | | | | | useless typedefs
* | bug #877, bug #572: Introduce a global Index typedef. Rename Sparse*::Index ↵Gravatar Christoph Hertzberg2014-12-04
| | | | | | | | to StorageIndex, make Dense*::StorageIndex an alias to DenseIndex. Overall this commit gets rid of all Index conversion warnings.
| * Workaround various "returning reference to temporary" warnings.Gravatar Gael Guennebaud2014-12-05
|/
* Make select CUDA compatible (comparison operators aren't yet, so no test ↵Gravatar Christoph Hertzberg2014-10-30
| | | | case yet)
* Make cuda_basic test compile again by adding lots of EIGEN_DEVICE_FUNC.Gravatar Christoph Hertzberg2014-10-13
| | | | Although the test passes now, there might still be some missing.
* Missing explicitGravatar Christoph Hertzberg2014-09-30
|
* Introduce a generic InnerIterator classes compatible with evaluators.Gravatar Gael Guennebaud2014-09-29
|
* Make constructors explicit if they could lead to unintended implicit conversionGravatar Christoph Hertzberg2014-09-23
|
* Avoid a potential risk of recursive definition using traits to get he scalar ↵Gravatar Gael Guennebaud2014-09-15
| | | | type
* Fix compilation of coeff(Index) on sub-inner-panelsGravatar Gael Guennebaud2014-09-08
|
* Fix various small issues detected by gccGravatar Gael Guennebaud2014-08-01
|
* Call product_generic_impl by default, and remove lot of boilerplate codeGravatar Gael Guennebaud2014-07-31
|
* Implement evaluator for sparse outer productsGravatar Gael Guennebaud2014-07-19
|
* 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 evaluators for sparse Block.Gravatar Gael Guennebaud2014-06-25
|
* Implement binaryop and transpose evaluators for sparse matricesGravatar Gael Guennebaud2014-06-23
|
* Backport changes from old to new expression enginesGravatar Gael Guennebaud2014-06-20
|
* mergeGravatar Gael Guennebaud2014-06-20
|\
* | 1- Introduce sub-evaluator types for unary, binary, product, and map ↵Gravatar Gael Guennebaud2014-06-20
| | | | | | | | | | | | expressions to ease specializing them. 2- Remove a lot of code which should not be there with evaluators, in particular coeff/packet methods implemented in the expressions.
| * Implement evaluator<ReturnByValue>.Gravatar Jitse Niesen2014-04-16
|/ | | | | All supported tests pass apart from Sparse and Geometry, except test in adjoint_4 that a = a.transpose() raises an assert.
* Fix regressions in redux_evaluator flags and evaluator<Block> flagsGravatar 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
|
* evaluator<Replicate> must evaluate its argument to avoid redundant evaluationsGravatar Gael Guennebaud2014-02-19
|