From d0afb7276c06414c1930a2e76271239ebe9b93b0 Mon Sep 17 00:00:00 2001 From: Matthijs Kooijman Date: Mon, 13 Jul 2009 11:52:44 +0200 Subject: [PATCH] Add is_local_var predicate. --- NormalizeTools.hs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/NormalizeTools.hs b/NormalizeTools.hs index 429a27c..1290fd8 100644 --- a/NormalizeTools.hs +++ b/NormalizeTools.hs @@ -258,3 +258,9 @@ runTransformSession env uniqSupply session = State.evalState session emptyTransf isRepr :: CoreSyn.CoreExpr -> TransformMonad Bool isRepr (Type ty) = return False isRepr expr = Trans.lift $ MonadState.lift tsType $ VHDLTools.isReprType (CoreUtils.exprType expr) + +is_local_var :: CoreSyn.CoreExpr -> TransformSession Bool +is_local_var (CoreSyn.Var v) = do + bndrs <- getGlobalBinders + return $ not $ v `elem` bndrs +is_local_var _ = return False -- 2.30.2