From d6f4a83b4421a3a2470a7fdb81f83047bbf86df2 Mon Sep 17 00:00:00 2001 From: Alexandru Fikl <alexfikl@gmail.com> Date: Sat, 9 Sep 2023 16:11:06 +0300 Subject: [PATCH] pass all arguments to CSE constructor --- sumpy/codegen.py | 3 ++- sumpy/kernel.py | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/sumpy/codegen.py b/sumpy/codegen.py index 3b19fcb9..c4857fca 100644 --- a/sumpy/codegen.py +++ b/sumpy/codegen.py @@ -290,7 +290,8 @@ class BesselDerivativeReplacer(CSECachingIdentityMapper, CallExternalRecMapper): 2**(-k)*sum( (-1)**idx*int(sym.binomial(k, idx)) * function(i, arg) for idx, i in enumerate(range(order-k, order+k+1, 2))), - f"d{n_derivs}_{function.name}_{order_str}") + f"d{n_derivs}_{function.name}_{order_str}", + scope=prim.cse_scope.EVALUATION) else: return CSECachingIdentityMapper.map_call( rec_self or self, expr, rec_self, *args) diff --git a/sumpy/kernel.py b/sumpy/kernel.py index 6c50350b..76027809 100644 --- a/sumpy/kernel.py +++ b/sumpy/kernel.py @@ -1077,11 +1077,12 @@ class _VectorIndexAdder(CSECachingMapperMixin, IdentityMapper): self.additional_indices = additional_indices def map_subscript(self, expr): - from pymbolic.primitives import CommonSubexpression + from pymbolic.primitives import CommonSubexpression, cse_scope if expr.aggregate.name == self.vec_name \ and isinstance(expr.index, int): - return CommonSubexpression(expr.aggregate.index( - (expr.index,) + self.additional_indices)) + return CommonSubexpression( + expr.aggregate.index((expr.index,) + self.additional_indices), + prefix=None, scope=cse_scope.EVALUATION) else: return IdentityMapper.map_subscript(self, expr) -- GitLab