From b22fc6cdc316a11a5bc15870f05472e9b0613298 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Thu, 24 Jun 2010 17:51:25 +0200 Subject: bug fix in gemv: solution always use a temporary in dst.innerStride != 1 even though this is not needed when packet_size == 1.... --- test/product.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'test/product.h') diff --git a/test/product.h b/test/product.h index 5365a7dc6..804ce131d 100644 --- a/test/product.h +++ b/test/product.h @@ -45,7 +45,7 @@ template void product(const MatrixType& m) typedef Matrix RowSquareMatrixType; typedef Matrix ColSquareMatrixType; typedef Matrix OtherMajorMatrixType; + MatrixType::Flags&RowMajorBit?ColMajor:RowMajor> OtherMajorMatrixType; Index rows = m.rows(); Index cols = m.cols(); @@ -152,6 +152,9 @@ template void product(const MatrixType& m) VERIFY(areNotApprox(res2,square2 + m2.transpose() * m1)); } + VERIFY_IS_APPROX(res.col(r).noalias() = square.adjoint() * square.col(r), (square.adjoint() * square.col(r)).eval()); + VERIFY_IS_APPROX(res.col(r).noalias() = square * square.col(r), (square * square.col(r)).eval()); + // inner product Scalar x = square2.row(c) * square2.col(c2); VERIFY_IS_APPROX(x, square2.row(c).transpose().cwiseProduct(square2.col(c2)).sum()); -- cgit v1.2.3