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 |
|
Christoph Hertzberg
|
61e0977e10
|
Protect all calls to isnan, isinf and isfinite with parentheses.
|
2015-08-14 17:32:34 +02:00 |
|
Christoph Hertzberg
|
712e2fed17
|
bug #829: Introduce macro EIGEN_HAS_CXX11_CONTAINERS and do not specialize std-containers if it is enabled.
|
2015-08-14 16:09:48 +02:00 |
|
Gael Guennebaud
|
23aab82c0c
|
merge
|
2015-08-09 21:24:20 +02:00 |
|
Christoph Hertzberg
|
cac6b23033
|
bug #1053: SparseLU failed with EIGEN_DEFAULT_TO_ROW_MAJOR
|
2015-08-07 23:10:56 +02:00 |
|
Gael Guennebaud
|
febcce34f1
|
Enable vectorization with half-packets
|
2015-08-07 20:05:31 +02:00 |
|
Gael Guennebaud
|
6245591349
|
Fix prototype of plset and generalize linspace functor.
|
2015-08-07 19:27:59 +02:00 |
|
Gael Guennebaud
|
60e4260d0d
|
Some functors were not generic wrt packet-type.
|
2015-08-07 17:41:39 +02:00 |
|
Gael Guennebaud
|
e68c7b8368
|
Include SSE packetmath when AVX is enabled, and enable AVX's sine function only in fast-math mode (as SSE)
|
2015-08-07 17:40:39 +02:00 |
|
Gael Guennebaud
|
65bfa5fce7
|
Allow to use arbitrary packet-types during evaluation.
This is implemented by adding a PacketType template parameter to packet and writePacket members of evaluator<>.
|
2015-08-07 12:01:39 +02:00 |
|
Gael Guennebaud
|
3602926ed5
|
Mark ALignedBit as deprecated.
|
2015-08-07 10:45:02 +02:00 |
|
Gael Guennebaud
|
ce57dbd937
|
Let unpacket_traits<> exposes the required alignment and make use of it everywhere
|
2015-08-07 10:44:01 +02:00 |
|