aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/util/Constants.h
Commit message (Collapse)AuthorAge
* Add support for Arm SVEGravatar David Tellenbach2021-01-21
| | | | | | | | | | | | This patch adds support for Arm's new vector extension SVE (Scalable Vector Extension). In contrast to other vector extensions that are supported by Eigen, SVE types are inherently *sizeless*. For the use in Eigen we fix their size at compile-time (note that this is not necessary in general, SVE is *length agnostic*). During compilation the flag `-msve-vector-bits=N` has to be set where `N` is a power of two in the range of `128`to `2048`, indicating the length of an SVE vector. Since SVE is rather young, we decided to disable it by default even if it would be available. A user has to enable it explicitly by defining `EIGEN_ARM64_USE_SVE`. This patch introduces the packet types `PacketXf` and `PacketXi` for packets of `float` and `int32_t` respectively. The size of these packets depends on the SVE vector length. E.g. if `-msve-vector-bits=512` is set, `PacketXf` will contain `512/32 = 16` elements. This MR is joint work with Miguel Tairum <miguel.tairum@arm.com>.
* Don't make assumptions about NaN-propagation for pmin/pmax - it various ↵Gravatar Rasmus Munk Larsen2020-10-07
| | | | | | across platforms. Change test to only test for NaN-propagation for pfmin/pfmax.
* Fix shadow warnings in AlignedBox and SparseBlockGravatar Eugene Zhulenev2019-11-27
|
* merge with default EigenGravatar Gael Guennebaud2018-09-21
|\
| * Add support for MIPS SIMD (MSA)Gravatar Alexey Frunze2018-07-06
| |
* | Add support for mat(all) as an alias to mat.reshaped(mat.size(),fix<1>);Gravatar Gael Guennebaud2017-02-21
|/
* Propagate compile-time increment and strides.Gravatar Gael Guennebaud2017-01-06
| | | | Had to introduce a UndefinedIncr constant for non structured list of indices.
* bug #1213: rename some enums type for consistency.Gravatar Gael Guennebaud2016-05-18
|
* bug #1213: Give names to anonymous enumsGravatar Christoph Hertzberg2016-05-06
|
* rm remaining debug codeGravatar Gael Guennebaud2016-01-06
|
* Mark AlignedBit and EvalBeforeNestingBit with deprecated attribute, and ↵Gravatar Gael Guennebaud2015-12-30
| | | | remove the remaining usages of EvalBeforeNestingBit.
* Workaround "empty paragraph" warning with clang -WdocumentationGravatar Gael Guennebaud2015-12-30
|
* Fix numerous doxygen issues in auto-link generationGravatar Gael Guennebaud2015-12-30
|
* Add LU::transpose().solve() and LU::adjoint().solve() API.Gravatar Gael Guennebaud2015-12-01
|
* Reimplement the tensor comparison operators by using the scalar_cmp_op ↵Gravatar Benoit Steiner2015-11-06
| | | | functors. This makes them more cuda friendly.
* Simplify cost computations based on HugeCost being smaller that unrolling limitGravatar Gael Guennebaud2015-10-28
|
* 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)
* Improve documentation of TriangularView.Gravatar Gael Guennebaud2015-10-09
|
* Mark ALignedBit as deprecated.Gravatar Gael Guennebaud2015-08-07
|
* 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.
* Remove a few deprecated internal expressionsGravatar Gael Guennebaud2015-06-19
|
* Introduce a AliasFreeProduct option for Permutations and TranspositionsGravatar Gael Guennebaud2015-06-19
|
* Improbe compatibility of Transpositions and evaluatorsGravatar Gael Guennebaud2015-06-19
|
* Make Transpositions use evaluatorsGravatar Gael Guennebaud2015-06-19
|
* bug #872: Avoid deprecated binder1st/binder2nd usage by providing custom ↵Gravatar Christoph Hertzberg2015-05-07
| | | | functors for comparison operators
* Made the index type a template parameter of the tensor class instead of ↵Gravatar Benoit Steiner2015-03-30
| | | | encoding it in the options.
* Added support for 32bit index on a per tensor/tensor expression. This ↵Gravatar Benoit Steiner2015-02-27
| | | | enables us to use 32bit indices to evaluate expressions on GPU faster while keeping the ability to use 64 bit indices to manipulate large tensors on CPU in the same binary.
* Add a SparseCompressedBase class providing (un)compressed accessors (like ↵Gravatar Gael Guennebaud2015-02-07
| | | | | | data()/*Stride() for dense matrices), and a CompressedAccessBit flag (similar to DirectAccessBit for dense matrices).
* Workaround various "returning reference to temporary" warnings.Gravatar Gael Guennebaud2014-12-05
|
* Introduce a generic InnerIterator classes compatible with evaluators.Gravatar Gael Guennebaud2014-09-29
|
* Merged eigen/eigen into defaultGravatar Konstantinos Margaritis2014-09-21
|\
* | Initial VSX commitGravatar Konstantinos Margaritis2014-08-29
| |
| * Make minimal changes to make homogenous compatible with evaluatorsGravatar Gael Guennebaud2014-07-31
| |
| * Make permutation compatible with sparse matricesGravatar Gael Guennebaud2014-07-30
| |
| * Refactor TriangularView to handle both dense and sparse objects. Introduce a ↵Gravatar Gael Guennebaud2014-07-22
| | | | | | | | glu_shape<S1,S2> helper to assemble sparse/dense shapes with triagular/seladjoint views.
| * Split StorageKind promotion into two helpers: one for products, and one for ↵Gravatar Gael Guennebaud2014-07-01
| | | | | | | | coefficient-wise operations.
| * Add a NoPreferredStorageOrderBit flag for expression having no preferred ↵Gravatar Gael Guennebaud2014-06-27
| | | | | | | | | | | | storage order. It is currently only used in Product.
| * Port products with permutation matrices to evaluators.Gravatar Jitse Niesen2014-04-15
| |
| * Resurect EvalBeforeNestingBit to control nested_evalGravatar Gael Guennebaud2014-03-12
| |
| * Some bit flags and internal structures are deprecatedGravatar Gael Guennebaud2014-02-20
| |
| * Fix usage of Dense versus DenseShapeGravatar Gael Guennebaud2013-12-02
| |
| * Refactor dense product evaluatorsGravatar Gael Guennebaud2013-11-27
|/
* Clarify the meaning of AlignedBit (bug #359)Gravatar Gael Guennebaud2013-10-28
|
* Fix several documentation issuesGravatar Gael Guennebaud2012-12-24
|
* Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.Gravatar Benoit Jacob2012-07-13
|
* Add a DynamicIndex constant for signed quantities and use it to fix the conflictGravatar Gael Guennebaud2012-07-10
| | | | | between Diagonal<S,-1> (the first sub diagonal) and a runtime super/sub diagonal which is now: Diagonal<S,DynamicIndex>
* 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.
* Define NoChange as enum constant (bug #450).Gravatar Jitse Niesen2012-04-29
| | | | This gets rid of some warnings on Intel Composer XE, apparently.
* Get rid of include directives inside namespace blocks (bug #339).Gravatar Jitse Niesen2012-04-15
|
* Update the PARDISO interface to match other sparse solvers.Gravatar Gael Guennebaud2012-02-04
| | | | | | | - Add support for Upper or Lower inputs. - Add supports for sparse RHS - Remove transposed cases, remove ordering method interface - Add full access to PARDISO parameters