Gael Guennebaud
|
4140ee039d
|
Fix propagation of AssumeAliasing for expression as: "scalar * (A*B)"
|
2015-10-08 21:41:27 +02:00 |
|
Gael Guennebaud
|
d866279364
|
Clean a bit the implementation of inverse permutations
|
2015-10-08 18:36:39 +02:00 |
|
Gael Guennebaud
|
8d00a953af
|
Fix a nesting issue in some matrix-vector cases.
|
2015-10-08 17:36:57 +02:00 |
|
Gael Guennebaud
|
dd934ad057
|
Re-enable vectorization of LinSpaced, plus some cleaning
|
2015-10-08 17:27:01 +02:00 |
|
Gael Guennebaud
|
f6f6f50272
|
Clean evaluator<EvalToTemp>
|
2015-10-08 16:34:33 +02:00 |
|
Gael Guennebaud
|
67bfba07fd
|
Fix some CUDA issues
|
2015-10-08 16:30:28 +02:00 |
|
Gael Guennebaud
|
aa6b1aebf3
|
Properly implement PartialReduxExpr on top of evaluators, and fix multiple evaluation of nested expression
|
2015-10-08 15:57:05 +02:00 |
|
Gael Guennebaud
|
5cc7251188
|
Some cleaning in evaluators
|
2015-10-08 15:22:04 +02:00 |
|
Gael Guennebaud
|
e30bc89190
|
Add missing include of std vector
|
2015-10-08 15:20:50 +02:00 |
|
Gael Guennebaud
|
1b148d9e2e
|
Move IncompleteCholesky to official modules
|
2015-10-08 11:32:46 +02:00 |
|
Gael Guennebaud
|
64242b8bf3
|
Doc: add link to doc of sparse solver concept
|
2015-10-08 10:50:39 +02:00 |
|
Gael Guennebaud
|
f047ecc36a
|
_mm_hadd_epi32 is for SSSE3 only (and not SSE3)
|
2015-10-07 15:48:35 +02:00 |
|
Gael Guennebaud
|
aba1eda71e
|
Help clang to inline some functions, thus fixing some regressions
|
2015-10-07 15:44:12 +02:00 |
|
Gael Guennebaud
|
41cc1f9033
|
Remove debuging prod() and lazyprod() function, plus some cleaning in noalias assignment
|
2015-10-07 15:41:22 +02:00 |
|
Gael Guennebaud
|
69a7897e72
|
Fix storage index type in empty permutations
|
2015-10-06 17:21:24 +02:00 |
|
Gael Guennebaud
|
26cde4db3c
|
Define Permutation*<>::Scalar to 'void', re-enable scalar type compatibility check in assignment while relaxing this test for void types.
|
2015-10-06 17:18:06 +02:00 |
|
Gael Guennebaud
|
fb51bab272
|
Some cleaning
|
2015-10-06 17:14:56 +02:00 |
|
Gael Guennebaud
|
2c676ddb40
|
Handle various TODOs in SSE vectorization (remove splitted storeu, enable SSE3 integer vectorization, plus minor tweaks)
|
2015-10-06 15:43:27 +02:00 |
|
Gael Guennebaud
|
2d287a4898
|
Fix Ref<SparseMatrix> for Transpose<SparseVector>
|
2015-10-06 15:09:04 +02:00 |
|
Gael Guennebaud
|
f25bdc707f
|
Optimise assignment into a Block<SparseMatrix> by using Ref and avoiding useless updates in non-compressed mode. This make row-by-row filling of a row-major sparse matrix very efficient.
|
2015-10-06 11:59:08 +02:00 |
|
Gael Guennebaud
|
945b80c83e
|
Optimize Ref<SparseMatrix> by removing useless default initialisation of SparseMapBase and SparseMatrix
|
2015-10-06 11:57:03 +02:00 |
|
Gael Guennebaud
|
9a070638de
|
Enable to view a SparseVector as a Ref<SparseMatrix>
|
2015-10-06 11:53:19 +02:00 |
|
Gael Guennebaud
|
1b43860bc1
|
Make SparseVector derive from SparseCompressedBase, thus improving compatibility between sparse vectors and matrices
|
2015-10-06 11:41:03 +02:00 |
|
Gael Guennebaud
|
6100d1ae64
|
Improve counting of sparse temporaries
|
2015-10-06 11:32:02 +02:00 |
|
Gael Guennebaud
|
deb261f64b
|
Make abs2 compatible with custom complex types
|
2015-10-02 10:33:25 +02:00 |
|
Doug Kwan
|
5c9ee73eb9
|
Implement plog and pexp for AltiVec.
|
2015-07-30 11:12:42 -07:00 |
|
Gael Guennebaud
|
5a1cc5d24c
|
bug #1053: fix SuplerLU::solve with EIGEN_DEFAULT_TO_ROW_MAJOR
|
2015-09-03 11:25:36 +02:00 |
|
Gael Guennebaud
|
2795ffd6a0
|
Fix Index vs StorageIndex naming convention
|
2015-09-03 11:18:27 +02:00 |
|
Gael Guennebaud
|
ef2b54f422
|
Fix AMD ordering when a column has only one off-diagonal non-zero (also fix bug #1045)
|
2015-09-03 11:04:06 +02:00 |
|
Christoph Hertzberg
|
5ad7981f73
|
Use full packet size for Dynamic-sized objects (otherwise, the unalignedcount unit test fails with AVX enabled)
|
2015-09-02 22:51:43 +02:00 |
|
Gael Guennebaud
|
aa768add0b
|
Since there is no reason for evaluators to be nested by reference, let's remove the evaluator<>::nestedType indirection.
|
2015-09-02 22:10:39 +02:00 |
|
Gael Guennebaud
|
f8976fdbe0
|
Make evaluators non-copyable. This guarantee that evaluators storing temporaries do not introduce unwanted copy overhead.
|
2015-09-02 21:39:49 +02:00 |
|
Gael Guennebaud
|
92b9f0e102
|
Cleaning pass on evaluators: remove the useless and error prone evaluator<>::type indirection.
|
2015-09-02 21:38:40 +02:00 |
|
Gael Guennebaud
|
6b99afa5ae
|
Fix LSCG::solve with a sparse destination.
|
2015-09-02 15:34:03 +02:00 |
|
Gael Guennebaud
|
b5ad3d2cf7
|
Remove deprecated Flagged expression.
|
2015-09-02 14:53:50 +02:00 |
|
Gael Guennebaud
|
be5e2ecc21
|
bug #505: add more examples of bad and correct usages of auto and eval().
|
2015-09-02 13:04:30 +02:00 |
|
Gael Guennebaud
|
a75616887e
|
bug #1057: fix a declaration missmatch with MSVC
|
2015-09-02 09:31:32 +02:00 |
|
Gael Guennebaud
|
280f93ff65
|
Fix FullPivLU::image documentation
|
2015-09-02 09:19:27 +02:00 |
|
Gael Guennebaud
|
6059188f9d
|
Simplify implementation of the evaluation's iterator of Sparse*Diagonal products to help the compiler to generate better code.
|
2015-09-01 22:34:30 +02:00 |
|
Gael Guennebaud
|
0b2412df50
|
Remove duplicated temporary in Sparse to Sparse assignment
|
2015-09-01 22:31:30 +02:00 |
|
Gael Guennebaud
|
9001f4a46b
|
Add missing specialization of evaluator of sub-sparse-matrices that can be seen as a SparseCompressedBase. This changeset enable faster iterator for such expressions.
|
2015-09-01 22:29:17 +02:00 |
|
Benoit Steiner
|
2ed1495eec
|
nvcc doesn't support std::min or std::max on GPU. Use our own custom implementation instead
|
2015-08-27 16:59:55 -07:00 |
|
Sergiu Dotenco
|
d4c24eb016
|
fixed Quaternion identity initialization for non-implicitly convertible types
|
2015-08-20 20:55:37 +02:00 |
|
Christoph Hertzberg
|
78358a7241
|
Fixed broken commit a09cfe650fe56b181747af04d61548800da1f72b
. Missing } and unprotected min/max calls and definitions.
|
2015-08-22 15:03:16 +02:00 |
|
Benoit Steiner
|
a09cfe650f
|
std::numeric_limits doesn't work reliably on CUDA devices. Use our own definition of numeric_limit<T>::max() and numeric_limit<T>::min() instead of the stl ones.
|
2015-08-21 16:01:40 -07:00 |
|
Christoph Hertzberg
|
e5c78d85c8
|
bug #1043: Avoid integer conversion sign warning
|
2015-08-19 21:50:21 +02:00 |
|
Christoph Hertzberg
|
8097d8d028
|
surpress some warnings
|
2015-08-17 21:50:52 +02:00 |
|
Christoph Hertzberg
|
d2e0927127
|
Define EIGEN_MAX_STATIC_ALIGN_BYTES to 0 for architectures that don't require stack alignment
|
2015-08-17 16:44:52 +02:00 |
|
Gael Guennebaud
|
dc2c103b3b
|
merge
|
2015-08-16 14:22:02 +02:00 |
|
Christoph Hertzberg
|
d6a4805fdf
|
Protect further isnan/isfinite/isinf calls
|
2015-08-16 14:00:02 +02:00 |
|