diff options
author | Gael Guennebaud <g.gael@free.fr> | 2016-05-01 23:25:06 +0200 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2016-05-01 23:25:06 +0200 |
commit | b1bd53aa6bec39c53de475c90987eece86c206d2 (patch) | |
tree | 7942709c9d16453f5310883eca8558cc9d9d15ea /Eigen/src/Core/CoreEvaluators.h | |
parent | d6c9596fd8693b29b94fed984824480f285336ea (diff) |
Fix performance regression: with AVX, unaligned stores were emitted instead of aligned ones for fixed size assignement.
Diffstat (limited to 'Eigen/src/Core/CoreEvaluators.h')
-rw-r--r-- | Eigen/src/Core/CoreEvaluators.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Eigen/src/Core/CoreEvaluators.h b/Eigen/src/Core/CoreEvaluators.h index 388805f0d..932178f53 100644 --- a/Eigen/src/Core/CoreEvaluators.h +++ b/Eigen/src/Core/CoreEvaluators.h @@ -850,14 +850,14 @@ struct unary_evaluator<Block<ArgType, BlockRows, BlockCols, InnerPanel>, IndexBa template<int StoreMode, typename PacketType> EIGEN_STRONG_INLINE void writePacket(Index row, Index col, const PacketType& x) - { + { return m_argImpl.template writePacket<StoreMode,PacketType>(m_startRow.value() + row, m_startCol.value() + col, x); } template<int StoreMode, typename PacketType> EIGEN_STRONG_INLINE void writePacket(Index index, const PacketType& x) - { + { return writePacket<StoreMode,PacketType>(RowsAtCompileTime == 1 ? 0 : index, RowsAtCompileTime == 1 ? index : 0, x); |