aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/Matrix.h
Commit message (Collapse)AuthorAge
* Revert "Revert "Adds EIGEN_CONSTEXPR and EIGEN_NOEXCEPT to rows(), cols(), ↵Gravatar Steve Bronder2021-03-24
| | | | | | innerStride(), outerStride(), and size()"" This reverts commit 5f0b4a4010af4cbf6161a0d1a03a747addc44a5d.
* Re-implement move assignments.Gravatar Antonio Sanchez2021-03-10
| | | | | | | | | | | | | | | The original swap approach leads to potential undefined behavior (reading uninitialized memory) and results in unnecessary copying of data for static storage. Here we pass down the move assignment to the underlying storage. Static storage does a one-way copy, dynamic storage does a swap. Modified the tests to no longer read from the moved-from matrix/tensor, since that can lead to UB. Added a test to ensure we do not access uninitialized memory in a move. Fixes: #2119
* Revert "Adds EIGEN_CONSTEXPR and EIGEN_NOEXCEPT to rows(), cols(), ↵Gravatar David Tellenbach2021-03-05
| | | | | | | innerStride(), outerStride(), and size()" This reverts commit 6cbb3038ac48cb5fe17eba4dfbf26e3e798041f1 because it breaks clang-10 builds on x86 and aarch64 when C++11 is enabled.
* Adds EIGEN_CONSTEXPR and EIGEN_NOEXCEPT to rows(), cols(), innerStride(), ↵Gravatar Steve Bronder2021-03-04
| | | | outerStride(), and size()
* Remove {} accidentally added in previous commitGravatar Christoph Hertzberg2019-07-18
|
* Move variadic constructors outside `#ifndef EIGEN_PARSED_BY_DOXYGEN` block, ↵Gravatar Christoph Hertzberg2019-07-12
| | | | to make it actually appear in the generated documentation.
* Add fully generic Vector<Type,Size> and RowVector<Type,Size> type aliases.Gravatar Gael Guennebaud2019-02-20
|
* Update documentation of Matrix and Array type aliases.Gravatar Gael Guennebaud2019-02-20
|
* Protect c++11 type alias with Eigen's macro, and add respective unit test.Gravatar Gael Guennebaud2019-02-20
|
* Merged in ra_bauke/eigen (pull request PR-180)Gravatar Gael Guennebaud2019-02-20
|\ | | | | | | | | | | alias template for matrix and array classes, see also bug #864 Approved-by: Heiko Bauke <heiko.bauke@mail.de>
* | bug #1680: improve MSVC inlining by declaring many triavial constructors and ↵Gravatar Gael Guennebaud2019-02-15
| | | | | | | | accessors as STRONG_INLINE.
* | cleanupGravatar Gael Guennebaud2019-01-24
| |
* | PR 574: use variadic template instead of initializer_list to implement ↵Gravatar David Tellenbach2019-01-23
| | | | | | | | fixed-size vector ctor from coefficients.
* | Cleanup SFINAE in Array/Matrix(initializer_list) ctors and minor doc editing.Gravatar Gael Guennebaud2019-01-22
| |
* | PR 572: Add initializer list constructors to Matrix and Array (include unit ↵Gravatar David Tellenbach2019-01-21
| | | | | | | | | | | | | | | | tests and doc) - {1,2,3,4,5,...} for fixed-size vectors only - {{1,2,3},{4,5,6}} for the general cases - {{1,2,3,4,5,....}} is allowed for both row and column-vector
* | bug #1634: remove double copy in move-ctor of non movable Matrix/ArrayGravatar Gael Guennebaud2018-11-30
| |
* | Doc: split customizing-eigen page into sub-pages and re-structure a bit the ↵Gravatar Gael Guennebaud2016-08-30
| | | | | | | | different topics
* | bug #725: make move ctor/assignment noexcept.Gravatar Gael Guennebaud2016-06-03
| |
* | bug #256: enable vectorization with unaligned loads/stores.Gravatar Gael Guennebaud2016-05-24
| | | | | | | | | | This concerns all architectures and all sizes. This new behavior can be disabled by defining EIGEN_UNALIGNED_VECTORIZE=0
* | Make EIGEN_HAS_RVALUE_REFERENCES user configurableGravatar Gael Guennebaud2016-05-20
| |
* | Rename EIGEN_HAVE_RVALUE_REFERENCES to EIGEN_HAS_RVALUE_REFERENCESGravatar Gael Guennebaud2016-05-20
| |
| * alias template for matrix and array classesGravatar Heiko Bauke2016-04-23
|/
* Fix numerous doxygen shortcomings, and workaround some clang -Wdocumentation ↵Gravatar Gael Guennebaud2016-01-01
| | | | warnings
* Remove deprecated Flagged expression.Gravatar Gael Guennebaud2015-09-02
|
* Enable vectorization with half-packetsGravatar Gael Guennebaud2015-08-07
|
* 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.
* typoGravatar Gael Guennebaud2015-07-29
|
* bug #1047: document the structure layout of class MatrixGravatar Gael Guennebaud2015-07-29
|
* Constructing a Matrix/Array with implicit transpose could lead to memory leaks.Gravatar Christoph Hertzberg2015-04-16
| | | | Also reduced code duplication for Matrix/Array constructors
* bug #970: Add EIGEN_DEVICE_FUNC to RValue functions, in case Cuda supports ↵Gravatar Christoph Hertzberg2015-02-24
| | | | RValue-references.
* The usage of DenseIndex is deprecated, so let's replace DenseIndex by IndexGravatar Gael Guennebaud2015-02-16
|
* 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.
* bug #903: clean swap API regarding extra enable_if parameters, and add ↵Gravatar Gael Guennebaud2014-11-06
| | | | failtests for swap
* Make constructors explicit if they could lead to unintended implicit conversionGravatar Christoph Hertzberg2014-09-23
|
* Remove deprecated code not used by evaluatorsGravatar Gael Guennebaud2014-09-18
|
* merge default branchGravatar Gael Guennebaud2014-08-29
|\
| * bug #826: document caveats in 1x1 and 2x1 constructors.Gravatar Gael Guennebaud2014-07-21
| |
* | merge with default branchGravatar Gael Guennebaud2014-07-02
|\|
| * Removed the deprecated EIGEN2_SUPPORT, as previously announced. A ↵Gravatar Christoph Hertzberg2014-07-01
| | | | | | | | compilation error is raised, if this compile-switch is defined. The documentation references to the corresponding pages from Eigen3.2 now. Also, the Eigen2 testsuite has been removed.
| * Fix bug #826: Allow initialization of 1x1 Arrays/Matrices by passing a value.Gravatar Christoph Hertzberg2014-06-23
| |
* | Fix a few regression when moving the flagsGravatar Gael Guennebaud2014-03-12
| |
* | Move CoeffReadCost mechanism to evaluatorsGravatar Gael Guennebaud2014-03-10
|/
* merge with default branchGravatar Gael Guennebaud2013-11-05
|\
* | Fix bug #654: allow implicit transposition in Array to Matrix and Matrix to ↵Gravatar Gael Guennebaud2013-09-07
| | | | | | | | Array constructors
* | Added move support for Matrix and Array.Gravatar Hauke Heibel2013-08-02
| | | | | | | | | | | | Added EIGEN_HAVE_RVALUE_REFERENCES define. Added move unit tests. Removed superfluous 'inline' declarations in DenseStorage.
| * Add nvcc support for small eigenvalues decompositions and workaround lack of ↵Gravatar Gael Guennebaud2013-08-01
| | | | | | | | support for std::swap and std::numeric_limits
| * merge with main branchGravatar Gael Guennebaud2013-07-17
| |\ | |/ |/|
* | Remove meaningless explicit qualifierGravatar Gael Guennebaud2013-06-12
| |
| * merge with default branchGravatar Gael Guennebaud2013-04-19
| |\ | |/ |/|