diff options
author | Gael Guennebaud <g.gael@free.fr> | 2019-01-16 21:47:42 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2019-01-16 21:47:42 +0100 |
commit | e118ce86fdbb83fdce8f64baaabb1ed93dd8f070 (patch) | |
tree | d83a1d06d4113fe406b586c8f62f3b070c236f2f /Eigen/src/Core/products | |
parent | 70e133333d733886923cd5a9082e92714b95d076 (diff) |
GEBP: cleanup logic to choose between a 4 packets of 1 packet
Diffstat (limited to 'Eigen/src/Core/products')
-rw-r--r-- | Eigen/src/Core/products/GeneralBlockPanelKernel.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Eigen/src/Core/products/GeneralBlockPanelKernel.h b/Eigen/src/Core/products/GeneralBlockPanelKernel.h index 8b4b1dbd3..fdc050e05 100644 --- a/Eigen/src/Core/products/GeneralBlockPanelKernel.h +++ b/Eigen/src/Core/products/GeneralBlockPanelKernel.h @@ -350,9 +350,9 @@ inline void computeProductBlockingSizes(Index& k, Index& m, Index& n, Index num_ template <typename RhsPacket, typename RhsPacketx4, int registers_taken> struct RhsPanelHelper { private: - typedef typename conditional<(registers_taken < 15), RhsPacket, RhsPacketx4>::type inter_type; + static const int remaining_registers = EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS - registers_taken; public: - typedef typename conditional<(EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS < 32), RhsPacket, inter_type>::type type; + typedef typename conditional<remaining_registers>=4, RhsPacketx4, RhsPacket>::type type; }; template <typename Packet> |