From d64448dbada32674111a4ca6e70afc1fa7061a81 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner <inform@tiker.net> Date: Fri, 6 Apr 2012 14:54:26 -0400 Subject: [PATCH] Don't remove CSEs when forming CSE keys. --- pymbolic/cse.py | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/pymbolic/cse.py b/pymbolic/cse.py index 34fe275..6d3c65c 100644 --- a/pymbolic/cse.py +++ b/pymbolic/cse.py @@ -1,30 +1,14 @@ from __future__ import division import pymbolic.primitives as prim -from pymbolic.mapper import IdentityMapper, WalkMapper, CSECachingMapperMixin -from pytools import memoize_method +from pymbolic.mapper import IdentityMapper, WalkMapper COMMUTATIVE_CLASSES = (prim.Sum, prim.Product) -class CSERemover(IdentityMapper): - def map_common_subexpression(self, expr): - return self.rec(expr.child) - - - - class NormalizedKeyGetter(object): - def __init__(self): - self.cse_remover = CSERemover() - - @memoize_method - def remove_cses(self, expr): - return self.cse_remover(expr) - def __call__(self, expr): - expr = self.remove_cses(expr) if isinstance(expr, COMMUTATIVE_CLASSES): kid_count = {} for child in expr.children: -- GitLab