From: Roman Leshchinskiy Date: Fri, 3 Aug 2007 03:02:37 +0000 (+0000) Subject: Add utility functions for accessing PA info during vectorisation X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=17f2929d489cb59ce009377e7379ca230d3411b0;p=ghc-hetmet.git Add utility functions for accessing PA info during vectorisation --- diff --git a/compiler/vectorise/VectMonad.hs b/compiler/vectorise/VectMonad.hs index b31d798..571350d 100644 --- a/compiler/vectorise/VectMonad.hs +++ b/compiler/vectorise/VectMonad.hs @@ -21,6 +21,7 @@ module VectMonad ( lookupVar, defGlobalVar, lookupTyCon, defTyCon, lookupDataCon, defDataCon, + lookupTyConPA, defTyConPA, lookupTyVarPA, defLocalTyVar, defLocalTyVarWithPA, localTyVars, lookupInst, lookupFamInst @@ -383,6 +384,13 @@ defDataCon :: DataCon -> DataCon -> VM () defDataCon dc dc' = updGEnv $ \env -> env { global_datacons = extendNameEnv (global_datacons env) (dataConName dc) dc' } +lookupTyConPA :: TyCon -> VM (Maybe Var) +lookupTyConPA tc = readGEnv $ \env -> lookupNameEnv (global_pa_funs env) (tyConName tc) + +defTyConPA :: TyCon -> Var -> VM () +defTyConPA tc pa = updGEnv $ \env -> + env { global_pa_funs = extendNameEnv (global_pa_funs env) (tyConName tc) pa } + lookupTyVarPA :: Var -> VM (Maybe CoreExpr) lookupTyVarPA tv = readLEnv $ \env -> lookupVarEnv (local_tyvar_pa env) tv