diff options
author | Gael Guennebaud <g.gael@free.fr> | 2019-02-15 16:35:35 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2019-02-15 16:35:35 +0100 |
commit | 83309068b42c85d919aff53eb3652fa7896ed020 (patch) | |
tree | 468f88431963cfece04e6e1c3d734a05bb7ecad9 /Eigen/src/Core/GeneralProduct.h | |
parent | 0505248f250f0d1665d51e2e8f0775531ce40382 (diff) |
bug #1680: improve MSVC inlining by declaring many triavial constructors and accessors as STRONG_INLINE.
Diffstat (limited to 'Eigen/src/Core/GeneralProduct.h')
-rw-r--r-- | Eigen/src/Core/GeneralProduct.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/Eigen/src/Core/GeneralProduct.h b/Eigen/src/Core/GeneralProduct.h index 5bfcd6db8..bf7ef54b5 100644 --- a/Eigen/src/Core/GeneralProduct.h +++ b/Eigen/src/Core/GeneralProduct.h @@ -396,8 +396,8 @@ template<> struct gemv_dense_selector<OnTheRight,RowMajor,false> */ template<typename Derived> template<typename OtherDerived> -EIGEN_DEVICE_FUNC -inline const Product<Derived, OtherDerived> +EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE +const Product<Derived, OtherDerived> MatrixBase<Derived>::operator*(const MatrixBase<OtherDerived> &other) const { // A note regarding the function declaration: In MSVC, this function will sometimes @@ -439,8 +439,9 @@ MatrixBase<Derived>::operator*(const MatrixBase<OtherDerived> &other) const */ template<typename Derived> template<typename OtherDerived> +EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Product<Derived,OtherDerived,LazyProduct> -EIGEN_DEVICE_FUNC MatrixBase<Derived>::lazyProduct(const MatrixBase<OtherDerived> &other) const +MatrixBase<Derived>::lazyProduct(const MatrixBase<OtherDerived> &other) const { enum { ProductIsValid = Derived::ColsAtCompileTime==Dynamic |