From 15664781f7d87f776ff6565a967bdc56beb48a6a Mon Sep 17 00:00:00 2001 From: Christian Zimmermann Date: Thu, 21 Jan 2021 00:35:13 +0100 Subject: [PATCH] further auto vectorization (open issue: static loop reduction) --- src/include/multi_array_operation.cc.h | 91 ++++++++++++++++++-------- src/include/multi_array_operation.h | 42 ++++++++---- src/include/xfor/xfor.h | 8 ++- 3 files changed, 100 insertions(+), 41 deletions(-) diff --git a/src/include/multi_array_operation.cc.h b/src/include/multi_array_operation.cc.h index 0f1fa41..2b554db 100644 --- a/src/include/multi_array_operation.cc.h +++ b/src/include/multi_array_operation.cc.h @@ -346,6 +346,7 @@ namespace MultiArrayTools template inline const V& ConstOperationRoot::vget(ET pos) const { + VCHECK(pos.val()); return *(reinterpret_cast(mDataPtr)+pos.val()); } @@ -595,29 +596,30 @@ namespace MultiArrayTools template struct VExec { - template + template