From 6e67d15795272cec06f752d44511bab5de98707c Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Sun, 30 Jan 2011 08:17:46 +0100 Subject: now gemv supports strides --- test/product_notemporary.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'test/product_notemporary.cpp') diff --git a/test/product_notemporary.cpp b/test/product_notemporary.cpp index 0d33e0ffb..980e2bbaf 100644 --- a/test/product_notemporary.cpp +++ b/test/product_notemporary.cpp @@ -60,7 +60,7 @@ template void product_notemporary(const MatrixType& m) m2 = MatrixType::Random(rows, cols), m3(rows, cols); RowVectorType rv1 = RowVectorType::Random(rows), rvres(rows); - ColVectorType vc2 = ColVectorType::Random(cols), cvres(cols); + ColVectorType cv1 = ColVectorType::Random(cols), cvres(cols); RowMajorMatrixType rm3(rows, cols); Scalar s1 = internal::random(), @@ -128,6 +128,13 @@ template void product_notemporary(const MatrixType& m) // Zero temporaries for ... CoeffBasedProductMode // - does not work with GCC because of the <..>, we'ld need variadic macros ... //VERIFY_EVALUATION_COUNT( m3.col(0).head<5>() * m3.col(0).transpose() + m3.col(0).head<5>() * m3.col(0).transpose(), 0 ); + + // Check matrix * vectors + VERIFY_EVALUATION_COUNT( cvres.noalias() = m1 * cv1, 0 ); + VERIFY_EVALUATION_COUNT( cvres.noalias() -= m1 * cv1, 0 ); + VERIFY_EVALUATION_COUNT( cvres.noalias() -= m1 * m2.col(0), 0 ); + VERIFY_EVALUATION_COUNT( cvres.noalias() -= m1 * rv1.adjoint(), 0 ); + VERIFY_EVALUATION_COUNT( cvres.noalias() -= m1 * m2.row(0).transpose(), 0 ); } void test_product_notemporary() -- cgit v1.2.3