diff options
author | Gael Guennebaud <g.gael@free.fr> | 2011-01-30 08:17:46 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2011-01-30 08:17:46 +0100 |
commit | 6e67d15795272cec06f752d44511bab5de98707c (patch) | |
tree | b20575ccadf4d467e580304f27f9cb33cb49ed94 /test | |
parent | 157a5040d5372b65a9669a7f84c8c8cef82b6ee6 (diff) |
now gemv supports strides
Diffstat (limited to 'test')
-rw-r--r-- | test/product_notemporary.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
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<typename MatrixType> 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<Scalar>(), @@ -128,6 +128,13 @@ template<typename MatrixType> 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() |