diff --git a/python/dune/perftool/sumfact/accumulation.py b/python/dune/perftool/sumfact/accumulation.py index f8ef3940e0ffb348c59ea9ec1904b1537c91dd80..a3e14a3b57c025e0016536876cebaa0534829c88 100644 --- a/python/dune/perftool/sumfact/accumulation.py +++ b/python/dune/perftool/sumfact/accumulation.py @@ -292,7 +292,7 @@ def generate_accumulation_instruction(expr, visitor): # Those input fields, that are padded need to be set to zero # in order to do a horizontal_add later on - for pad in vsf.padded_indices: + for pad in vsf.padded_indices(visitor): assignee = prim.Subscript(lp.TaggedVariable(temp, vsf.tag), pad) instruction(assignee=assignee, expression=0, diff --git a/python/dune/perftool/sumfact/symbolic.py b/python/dune/perftool/sumfact/symbolic.py index 884464175b62ccbe0955fb67992ccd08d6723e1f..296d6f6d757cd6a9cccbd95d8e0d37e856624e8a 100644 --- a/python/dune/perftool/sumfact/symbolic.py +++ b/python/dune/perftool/sumfact/symbolic.py @@ -290,8 +290,7 @@ class SumfactKernel(SumfactKernelBase, ImmutableRecord, prim.Variable): # Define properties for conformity with the interface of VectorizedSumfactKernel # - @property - def padded_indices(self): + def padded_indices(self, visitor): return set() @property @@ -441,10 +440,9 @@ class VectorizedSumfactKernel(SumfactKernelBase, ImmutableRecord, prim.Variable) # Define some properties only needed for this one # - @property - def padded_indices(self): + def padded_indices(self, visitor): indices = set(range(self.vector_width)) - set(range(len(self.kernels))) - return tuple(self.kernels[0].quadrature_index(None) + (i,) for i in indices) + return tuple(self.kernels[0].quadrature_index(None, visitor) + (i,) for i in indices) @property def vector_width(self):