aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/CwiseBinaryOp.h
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2008-05-05 10:23:29 +0000
committerGravatar Gael Guennebaud <g.gael@free.fr>2008-05-05 10:23:29 +0000
commit46fa4c713fa2fdb472e287cad95b5933135e6503 (patch)
tree451b02d2b48dda665d7f2c924c30b2ab03cf75cb /Eigen/src/Core/CwiseBinaryOp.h
parent8c6007f80e773ca3661c5a323d8e28ce49a609b3 (diff)
* Started support for unaligned vectorization.
* Introduce a new highly optimized matrix-matrix product for large matrices. The code is still highly experimental and it is activated only if you define EIGEN_WIP_PRODUCT at compile time. Currently the third dimension of the product must be a factor of the packet size (x4 for floats) and the right handed side matrix must be column major. Moreover, currently c = a*b; actually computes c += a*b !! Therefore, the code is provided for experimentation purpose only ! These limitations will be fixed soon or later to become the default product implementation.
Diffstat (limited to 'Eigen/src/Core/CwiseBinaryOp.h')
-rw-r--r--Eigen/src/Core/CwiseBinaryOp.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/Eigen/src/Core/CwiseBinaryOp.h b/Eigen/src/Core/CwiseBinaryOp.h
index 3de3e2dd5..31afbe0f1 100644
--- a/Eigen/src/Core/CwiseBinaryOp.h
+++ b/Eigen/src/Core/CwiseBinaryOp.h
@@ -103,9 +103,10 @@ class CwiseBinaryOp : ei_no_assignment_operator,
return m_functor(m_lhs.coeff(row, col), m_rhs.coeff(row, col));
}
+ template<int LoadMode>
PacketScalar _packetCoeff(int row, int col) const
{
- return m_functor.packetOp(m_lhs.packetCoeff(row, col), m_rhs.packetCoeff(row, col));
+ return m_functor.packetOp(m_lhs.template packetCoeff<LoadMode>(row, col), m_rhs.template packetCoeff<LoadMode>(row, col));
}
protected: