aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/vectorization_logic.cpp
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2017-12-14 14:24:33 +0100
committerGravatar Gael Guennebaud <g.gael@free.fr>2017-12-14 14:24:33 +0100
commit9c3aed9d48d7dbc0f88d2fb92ca232dcbf0d402e (patch)
treef82ec866759e39ea90ec36bc4834f757fdab6a60 /test/vectorization_logic.cpp
parent76c7dae600efc26a6fda212be518b804f101244f (diff)
Fix packet and alignment propagation logic of Block<Xpr> expressions. In particular, (A+B).col(j) lost vectorisation.
Diffstat (limited to 'test/vectorization_logic.cpp')
-rw-r--r--test/vectorization_logic.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/test/vectorization_logic.cpp b/test/vectorization_logic.cpp
index 83c1439ad..37e7495f5 100644
--- a/test/vectorization_logic.cpp
+++ b/test/vectorization_logic.cpp
@@ -207,6 +207,12 @@ struct vectorization_logic
VERIFY(test_redux(Vector1(),
LinearVectorizedTraversal,CompleteUnrolling));
+ VERIFY(test_redux(Vector1().array()*Vector1().array(),
+ LinearVectorizedTraversal,CompleteUnrolling));
+
+ VERIFY(test_redux((Vector1().array()*Vector1().array()).col(0),
+ LinearVectorizedTraversal,CompleteUnrolling));
+
VERIFY(test_redux(Matrix<Scalar,PacketSize,3>(),
LinearVectorizedTraversal,CompleteUnrolling));