Luke Peterson
ef3cc72cb6
Remove error counting in OpenMP parallelize_gemm
...
This resolves a compilation error associated with
Eigen::eigen_assert_exception. It also eliminates the counting of
exceptions that may occur in the OpenMP parallel section. If an
unhandled exception occurs in this section, the behavior is non-conforming
according to the OpenMP specification.
2020-10-08 18:50:33 -07:00
David Tellenbach
9f202c6f1e
Fix undefined behaviour caused by uncaught exceptions in OMP section
...
An OpenMP parallel section must have a single entry and a single point
of exit. Leaving such a section by throwing an exception is undefined.
This patch fixes this by catching possible exceptions on the parallel
section and throwing right we left it.
2020-10-02 00:41:01 +02:00
Gael Guennebaud
b343baceb4
Relaxed fastmath unit test: if std::foo fails, then let's only trigger a warning is numext::foo fails too.
...
A true error will triggered only if std::foo works but our numext::foo fails.
(cherry picked from commit 2ef1b39674716038f7310ce925122f058e2e62ab)
2020-09-01 18:39:56 +02:00
Gael Guennebaud
94f66fc32e
Fix #1974 : assertion when reserving an empty sparse matrix
2020-08-26 12:35:42 +02:00
Gael Guennebaud
efd72cddcd
Backport AVX512 implementation from devel branch to 3.3 (the 3.3 version had many issues)
2020-08-26 12:34:20 +02:00
Christoph Hertzberg
14db78c53b
Fix some maybe-uninitialized warnings
...
Cherry-picked from 72166d0e6e and 6965f6de7f
2020-02-28 19:32:10 +01:00
Gael Guennebaud
5f1082d0b1
Fix QuaternionBase::cast for quaternion map and wrapper.
...
(grafted from 6358599ecbe23a8ba1829dea21e532aa85aab932
)
2019-12-03 14:51:14 +01:00
Greg Coombe
3d18879fc4
Initialize isometric transforms like affine transforms.
...
The isometric transform, like the affine transform, has an implicit last
row of [0, 0, 0, 1]. This was not being properly initialized, as verified
by a new test function.
(grafted from 9d988a1e1a83c51422d96030fdad7267e4e946ee
)
2019-01-11 23:14:35 -08:00
Christoph Hertzberg
74d474e7df
Resolve merge conflict
2019-10-09 15:52:12 +02:00
Gael Guennebaud
47e2f8a42c
PR 719: fix real/imag namespace conflict
...
(grafted from 87427d2eaa90bbc1c12eedecca95554d93c3c212
)
2019-10-08 09:15:17 +02:00
Gael Guennebaud
52d159c19f
bug #1741 : fix self-adjoint*matrix, triangular*matrix, and triangular^1*matrix with a destination having a non-trivial inner-stride
2019-09-11 15:04:25 +02:00
Gael Guennebaud
f722e43770
bug #1741 : fix SelfAdjointView::rankUpdate and product to triangular part for destination with non-trivial inner stride
...
(grafted from c06e6fd115d747c42a2b2ea029c53bbdf41276d6
)
2019-09-10 23:29:52 +02:00
Gael Guennebaud
f483c7ea8a
bug #1741 : fix C.noalias() = A*C; with C.innerStride()!=1
...
(grafted from ea0d5dc956c1268dd91ce636d8fd5e07225acb06
)
2019-09-10 16:25:24 +02:00
Gael Guennebaud
32cb4853c6
bug #1562 : optimize evaluation of small products of the form s*A*B by rewriting them as: s*(A.lazyProduct(B)) to save a costly temporary. Measured speedup from 2x to 5x...
...
(grafted from d428a199ab70bc08db7551457a1e9d8f65d9ebb9
)
2018-07-02 11:41:09 +02:00
Gael Guennebaud
07c2081aac
fix unit test in c++03: c++03 does not allow passing local or anonymous enum as template param
...
(grafted from 48898a988a5159d2f3c0ff00bd737d17b202e844
)
2019-03-18 11:38:36 +01:00
Gael Guennebaud
441b3511de
bug #1692 : enable enum as sizes of Matrix and Array
...
(grafted from cf7e2e277f76d965fe37dac5a3fecf588f58e3b7
)
2019-03-17 21:59:30 +01:00
Gael Guennebaud
7b93328baf
Enable construction of Ref<VectorType> from a runtime vector.
...
(grafted from b0d406d91c62ff32153df43d5f698ceb02341ac7
)
2019-03-03 15:25:25 +01:00
Gael Guennebaud
bb9981e24b
Fix gcc 8.1 warning: "maybe use uninitialized"
...
(grafted from 16b2001eceac03a3adf981f4bc02b72583433ab1
)
2018-10-07 21:54:49 +02:00
Gael Guennebaud
74a0c08d70
Disable ignoring attributes warning
...
(grafted from 2cf6d3050c42d14819160e2642a5c3dfc449e44a
)
2018-09-20 11:38:19 +02:00
Gael Guennebaud
c30beb5974
bug #1669 : fix PartialPivLU/inverse with zero-sized matrices.
...
(grafted from 8a06c699d0f8d47f4fc4f259a21574b4719792b2
)
2019-01-29 10:27:13 +01:00
Christoph Hertzberg
7b160dcc82
After fixing bug #1557 , boostmultiprec_7 failed with NumericalIssue instead of NoConvergence (all that matters here is no Success)
...
(grafted from d575505d2589877a9d712feb0d455704d3834f12
)
2019-01-17 19:14:07 +01:00
Gael Guennebaud
eea99eb4e0
fix always true warning with gcc 4.7
...
(grafted from 32d7232aec1b5c78061548a00f0583ddd693e3e3
)
2019-01-15 11:18:48 +01:00
Christoph Hertzberg
65a6d41510
Fix nonnull-compare warning
...
(grafted from 642dddcce29269f266d35e34d34ee83d99a7c116
)
2016-12-15 17:16:56 +01:00
Gael Guennebaud
204d1f1456
Fix noise in sparse_basic_3 (numerical cancellation)
...
(grafted from cd25b538abff7370100ef5613b8138919f89c7b0
)
2018-12-08 00:13:37 +01:00
Gael Guennebaud
c285ed1033
Fix noise in lu unit test
2018-12-08 00:05:38 +01:00
Christoph Hertzberg
818bf74b18
Add default constructor to Bar to make test compile again with clang-3.8
...
(grafted from ea60a172cf1c2b82d3d9b43a57e5a8ad391f1bdf
)
2018-11-23 14:24:22 +01:00
Christoph Hertzberg
b9a2a8d2aa
bug #785 : Make Cholesky decomposition work for empty matrices
...
(grafted from 919414b9fe2ad7fdcb0f2b2cbdf6b5322d0f2034
)
2018-12-03 16:18:15 +01:00
Gael Guennebaud
a2d6c106a4
Workaround weird MSVC bug
...
(grafted from 4b2cebade8512abe05e94fd08ef901d818d8912b
)
2018-11-21 15:53:37 +01:00
Matthieu Vigne
0ee9dede55
bug #1617 : Fix SolveTriangular.solveInPlace crashing for empty matrix.
...
This made FullPivLU.kernel() crash when used on the zero matrix.
Add unit test for FullPivLU.kernel() on the zero matrix.
(grafted from 8d7a73e48e82b41f8e8b90afb434c98452556990
)
2018-10-31 20:28:18 +01:00
Gael Guennebaud
1d5581ead2
Workaround gcc bug making it trigger an invalid warning
2018-10-07 09:23:15 +02:00
Christoph Hertzberg
718e954df4
Fix shadowing typedefs
2018-09-07 16:34:04 +02:00
Christoph Hertzberg
7f3fff3fec
Remove shadowing typedefs
2018-08-17 16:32:35 +02:00
Gael Guennebaud
8180e13926
Fix half_float unit test wrt previous changeset
2018-07-31 09:58:24 +02:00
Christoph Hertzberg
b89d81b2a8
DIsable static assertions only when necessary and disable double-promotion warnings in that case as well
2018-07-26 00:07:07 +02:00
Gael Guennebaud
06fc5761fa
Oopps, EIGEN_COMP_MSVC is not available before including Eigen.
...
(grafted from de70671937827dd61a63d2432e0bea4ca7b00300
)
2018-07-20 17:51:17 +02:00
Gael Guennebaud
a185bc485c
Disable optimization for sparse_product unit test with MSVC 2013, otherwise it takes several hours to build.
...
(grafted from 56a750b6ccf52e59874e991a2373265fc3ab4b8e
)
2018-07-20 08:36:38 -07:00
Gael Guennebaud
96134409fc
Fix weird issue with MSVC 2013
...
(grafted from 3a2dc3869ed77cb6eca2beaad5c0af7d5134f15c
)
2018-07-18 02:26:43 -07:00
Gael Guennebaud
ab3fa2e123
Fix GeneralizedEigenSolver when requesting for eigenvalues only.
...
(grafted from a87cff20df5129c364c4675f05ceb6d451188f6c
)
2018-07-14 09:38:49 +02:00
Gael Guennebaud
ae6e5caa40
Fix unit test
...
(grafted from a7b313a16cf5b64981dd953f150327638379e68b
)
2018-07-01 22:45:47 +02:00
Gael Guennebaud
483beabab9
bug #1560 fix product with a 1x1 diagonal matrix
...
(grafted from ee5864f72e83830f536ad91dc38d574c02a08348
)
2018-06-25 10:30:12 +02:00
Gael Guennebaud
352489edbe
Fix short vs long
2018-06-07 15:26:04 +02:00
Jeff Trull
2f9de52245
Add tests for sparseQR results (value and size) covering bugs #1522 and #1544
2018-04-21 10:26:30 -07:00
Gael Guennebaud
80af7d6a47
bug #1543 : fix linear indexing in generic block evaluation (this completes the fix in commit 12efc7d41b80259b996be5781bf596c249c90d3f
...
)
(grafted from 5679e439e0c87e4b93ad7870f463d5168edcd57d
)
2018-04-23 14:40:16 +02:00
Gael Guennebaud
87f9e301f9
Fix unit test
...
(grafted from 35b31353abebbbd823457c58d00d85c9f65e8a30
)
2018-04-22 22:49:08 +02:00
Christoph Hertzberg
542fb03968
Fix enum-compare warning
2018-04-20 23:11:37 +02:00
Christoph Hertzberg
f90d136c84
Add parenthesis to fix compiler warnings
2018-04-15 18:43:56 +02:00
Gael Guennebaud
a2a2c3c865
bug #1509 : fix computeInverseWithCheck for complexes
...
(grafted from 2f833b1c6438fb379e05f12e3111c30c0b2f3416
)
2018-04-04 15:47:46 +02:00
Gael Guennebaud
170914dbbc
Fix compilation of product with inverse transpositions (e.g., mat * Transpositions().inverse())
...
(grafted from a1292395d6feefa5d78ed9101c2c85648ba8eea9
)
2018-04-03 23:06:44 +02:00
Gael Guennebaud
273738ba6f
bug #1516 : add assertion for out-of-range diagonal index in MatrixBase::diagonal(i)
...
(grafted from 8d0ffe36552aeeb5f46d9c652edc45c68e536cdd
)
2018-04-03 16:15:43 +02:00
Gael Guennebaud
1724dae8b8
Add static assertion for fixed sizes Ref<>
...
(grafted from f7d17689a5e4609418c55ec47d7e5924e2785460
)
2018-03-09 10:11:13 +01:00