From 81ddaf86984449270cb6309c9f83a5354b2d5d81 Mon Sep 17 00:00:00 2001 From: Dominic Kempf <dominic.kempf@iwr.uni-heidelberg.de> Date: Wed, 9 Nov 2016 15:19:00 +0100 Subject: [PATCH] Document issue with vector access --- python/dune/perftool/loopy/target.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/python/dune/perftool/loopy/target.py b/python/dune/perftool/loopy/target.py index 07a2f87c..aa9d0151 100644 --- a/python/dune/perftool/loopy/target.py +++ b/python/dune/perftool/loopy/target.py @@ -54,6 +54,14 @@ class DuneASTBuilder(CASTBuilder): if temp_var.decl_method: return Line(temp_var.decl_method(temp_var.name, temp_var.shape, temp_var.shape_impl)) + def add_vector_access(self, access_expr, index): + # There is no generic way of implementing a vector access with VCL, as + # it might be that the entire statement needs to be rewritten. Consider + # the example of an assignment to a vector component. It is *not* of the + # form 'x.0 = 2' but instead its 'x.insert(0, 2)'. It is currently not + # clear to me how this can be done, so I avoid the sitauation entirely. + raise NotImplementedError() + def emit_barrier(self, kind, comment): post_include("#define BARRIER asm volatile(\"\": : :\"memory\")", filetag="operatorfile") return Line("BARRIER;") -- GitLab