diff --git a/python/dune/perftool/pdelab/localoperator.py b/python/dune/perftool/pdelab/localoperator.py index e53422138b7b2ae549373816cfe244ed47e4d6bb..115aede7f16b081399ccc8016961f035162869d2 100644 --- a/python/dune/perftool/pdelab/localoperator.py +++ b/python/dune/perftool/pdelab/localoperator.py @@ -491,9 +491,15 @@ def extract_kernel_from_cache(tag, wrap_in_cgen=True): preambles = [(i, p) for i, p in enumerate(retrieve_cache_items("{} and preamble".format(tag)))] kernel = kernel.copy(preambles=preambles) + # Remove inames that have become obsolete + kernel = lp.remove_unused_inames(kernel) + # Do the loopy preprocessing! kernel = preprocess_kernel(kernel) + # *REALLY* ignore boostability. This is - so far - necessary due to a mystery bug. + kernel = kernel.copy(instructions=[i.copy(boostable=False, boostable_into=frozenset()) for i in kernel.instructions]) + if wrap_in_cgen: # Wrap the kernel in something which can generate code from dune.perftool.pdelab.signatures import assembly_routine_signature diff --git a/python/dune/perftool/sumfact/vectorization.py b/python/dune/perftool/sumfact/vectorization.py index a9e050fb68c3f583d283a62a39943f1deef53093..cae5e4cff11d0e71c4d95d438b151eb83e629800 100644 --- a/python/dune/perftool/sumfact/vectorization.py +++ b/python/dune/perftool/sumfact/vectorization.py @@ -38,7 +38,7 @@ def no_vectorization(sumfacts): sumf.restriction, sumf.a_matrices, get_counted_variable("buffer"), - get_counted_variable(restricted_name("input", sumf.restriction)), + get_counted_variable("input"), None)