summaryrefslogtreecommitdiff
path: root/src/Simplify.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Simplify.hs')
-rw-r--r--src/Simplify.hs2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/Simplify.hs b/src/Simplify.hs
index 6f97e6d..d963b7e 100644
--- a/src/Simplify.hs
+++ b/src/Simplify.hs
@@ -291,6 +291,7 @@ simplify'Rec = \case
e1' <- within (\e1' -> ECustom ext s t p a' b' c' e1' e2) (simplify' e1)
e2' <- within (\e2' -> ECustom ext s t p a' b' c' e1' e2') (simplify' e2)
pure (ECustom ext s t p a' b' c' e1' e2')
+ ERecompute _ e -> [simprec| ERecompute ext *e |]
EWith _ t e1 e2 -> do
e1' <- within (\e1' -> EWith ext t e1' e2) (simplify' e1)
e2' <- within (\e2' -> EWith ext t e1' e2') (let ?accumInScope = True in simplify' e2)
@@ -345,6 +346,7 @@ hasAdds = \case
EShape _ e -> hasAdds e
EOp _ _ e -> hasAdds e
EWith _ _ a b -> hasAdds a || hasAdds b
+ ERecompute _ e -> hasAdds e
EAccum _ _ _ _ _ _ -> True
EZero _ _ e -> hasAdds e
EPlus _ _ a b -> hasAdds a || hasAdds b