projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vectoriser: adapt to new superclass story part I (dictionary construction)
[ghc-hetmet.git]
/
compiler
/
vectorise
/
Vectorise
/
Utils
/
PRDict.hs
diff --git
a/compiler/vectorise/Vectorise/Utils/PRDict.hs
b/compiler/vectorise/Vectorise/Utils/PRDict.hs
index
e573232
..
0c5451b
100644
(file)
--- a/
compiler/vectorise/Vectorise/Utils/PRDict.hs
+++ b/
compiler/vectorise/Vectorise/Utils/PRDict.hs
@@
-2,13
+2,12
@@
module Vectorise.Utils.PRDict (
prDFunOfTyCon,
prDictOfType,
module Vectorise.Utils.PRDict (
prDFunOfTyCon,
prDictOfType,
- prDictOfTyApp,
- prDFunApply,
wrapPR
)
where
import Vectorise.Monad
import Vectorise.Builtins
wrapPR
)
where
import Vectorise.Monad
import Vectorise.Builtins
+import Vectorise.Utils.Base
import Vectorise.Utils.PADict
import CoreSyn
import Vectorise.Utils.PADict
import CoreSyn
@@
-19,14
+18,6
@@
import Outputable
import Control.Monad
import Control.Monad
-prDFunOfTyCon :: TyCon -> VM CoreExpr
-prDFunOfTyCon tycon
- = liftM Var
- . maybeCantVectoriseM "No PR dictionary for tycon" (ppr tycon)
- $ lookupTyConPR tycon
-
-
-
prDictOfType :: Type -> VM CoreExpr
prDictOfType ty = prDictOfTyApp ty_fn ty_args
where
prDictOfType :: Type -> VM CoreExpr
prDictOfType ty = prDictOfTyApp ty_fn ty_args
where
@@
-50,6
+41,6
@@
prDFunApply dfun tys
wrapPR :: Type -> VM CoreExpr
wrapPR ty
= do
wrapPR :: Type -> VM CoreExpr
wrapPR ty
= do
- Just pa_dict <- paDictOfType ty
- pr_dfun <- prDFunOfTyCon =<< builtin wrapTyCon
+ pa_dict <- paDictOfType ty
+ pr_dfun <- prDFunOfTyCon =<< builtin wrapTyCon
return $ mkApps pr_dfun [Type ty, pa_dict]
return $ mkApps pr_dfun [Type ty, pa_dict]