aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/vectorization_logic.cpp
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2010-07-23 16:29:29 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2010-07-23 16:29:29 +0200
commitaa2b46aa9151bd739ba02114e1dad643a8cc5c4d (patch)
tree857c13746870a614a42661c7174363e65b83dbb7 /test/vectorization_logic.cpp
parent853c0e15df2c13cbfc4a85eab2c7f2edea2cee49 (diff)
allow vectorization of mat44.col() by adding a InnerPanel boolean
template parameter to Block
Diffstat (limited to 'test/vectorization_logic.cpp')
-rw-r--r--test/vectorization_logic.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/vectorization_logic.cpp b/test/vectorization_logic.cpp
index 4bc7e58c5..2b23d4082 100644
--- a/test/vectorization_logic.cpp
+++ b/test/vectorization_logic.cpp
@@ -149,8 +149,20 @@ template<typename Scalar, bool Enable = ei_packet_traits<Scalar>::Vectorizable>
VERIFY(test_assign(Matrix1u(),Matrix1()+Matrix1(),
LinearTraversal,CompleteUnrolling));
+ VERIFY(test_assign(Matrix44c().col(1),Matrix44c().col(2)+Matrix44c().col(3),
+ InnerVectorizedTraversal,CompleteUnrolling));
+
+ VERIFY(test_assign(Matrix44r().row(2),Matrix44r().row(1)+Matrix44r().row(1),
+ InnerVectorizedTraversal,CompleteUnrolling));
+
if(PacketSize>1)
{
+ typedef Matrix<Scalar,3,3,ColMajor> Matrix33c;
+ VERIFY(test_assign(Matrix33c().row(2),Matrix33c().row(1)+Matrix33c().row(1),
+ LinearTraversal,CompleteUnrolling));
+ VERIFY(test_assign(Matrix33c().col(0),Matrix33c().col(1)+Matrix33c().col(1),
+ LinearTraversal,CompleteUnrolling));
+
VERIFY(test_assign(Matrix3(),Matrix3().cwiseQuotient(Matrix3()),
LinearVectorizedTraversal,CompleteUnrolling));