diff options
author | 2009-07-15 14:20:45 +0200 | |
---|---|---|
committer | 2009-07-15 14:20:45 +0200 | |
commit | 1578421ed14c23fa5c7ab3c818a069f1c1cefb8a (patch) | |
tree | 565cfe8bfd2e85872b95684e364aa9a9ef3ae7eb /Eigen/src/Core/Product.h | |
parent | 7a9519a9be524a879b44a1912ae694cfe4ee4ef7 (diff) |
fix issue #25 : the problem was that we assumed Dynamic was a multiple of a packet size
(also disable the test of blueNorm)
Diffstat (limited to 'Eigen/src/Core/Product.h')
-rw-r--r-- | Eigen/src/Core/Product.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Eigen/src/Core/Product.h b/Eigen/src/Core/Product.h index c2317e425..05a8221ee 100644 --- a/Eigen/src/Core/Product.h +++ b/Eigen/src/Core/Product.h @@ -138,10 +138,10 @@ struct ei_traits<Product<LhsNested, RhsNested, ProductMode> > RhsRowMajor = RhsFlags & RowMajorBit, CanVectorizeRhs = RhsRowMajor && (RhsFlags & PacketAccessBit) - && (ColsAtCompileTime % ei_packet_traits<Scalar>::size == 0), + && (ColsAtCompileTime == Dynamic || (ColsAtCompileTime % ei_packet_traits<Scalar>::size) == 0), CanVectorizeLhs = (!LhsRowMajor) && (LhsFlags & PacketAccessBit) - && (RowsAtCompileTime % ei_packet_traits<Scalar>::size == 0), + && (RowsAtCompileTime == Dynamic || (RowsAtCompileTime % ei_packet_traits<Scalar>::size) == 0), EvalToRowMajor = RhsRowMajor && (ProductMode==(int)CacheFriendlyProduct ? LhsRowMajor : (!CanVectorizeLhs)), |