projects
/
ghc-hetmet.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
dc6fa4f
)
Create exported names in vectorisation monads
author
Roman Leshchinskiy
<rl@cse.unsw.edu.au>
Thu, 26 Jul 2007 02:41:44 +0000
(
02:41
+0000)
committer
Roman Leshchinskiy
<rl@cse.unsw.edu.au>
Thu, 26 Jul 2007 02:41:44 +0000
(
02:41
+0000)
compiler/vectorise/VectMonad.hs
patch
|
blob
|
history
diff --git
a/compiler/vectorise/VectMonad.hs
b/compiler/vectorise/VectMonad.hs
index
ed18f1f
..
944f8c8
100644
(file)
--- a/
compiler/vectorise/VectMonad.hs
+++ b/
compiler/vectorise/VectMonad.hs
@@
-3,7
+3,7
@@
module VectMonad (
VM,
noV, tryV, maybeV, orElseV, fixV, localV, closedV, initV,
VM,
noV, tryV, maybeV, orElseV, fixV, localV, closedV, initV,
- cloneName, newLocalVar, newTyVar,
+ cloneName, newExportedVar, newLocalVar, newTyVar,
Builtins(..), paDictTyCon, paDictDataCon,
builtin,
Builtins(..), paDictTyCon, paDictDataCon,
builtin,
@@
-47,6
+47,7
@@
import FamInstEnv
import Panic
import Outputable
import FastString
import Panic
import Outputable
import FastString
+import SrcLoc ( noSrcSpan )
import Control.Monad ( liftM )
import Control.Monad ( liftM )
@@
-280,6
+281,16
@@
cloneName mk_occ name = liftM make (liftDs newUnique)
(nameSrcSpan name)
| otherwise = mkSystemName u occ_name
(nameSrcSpan name)
| otherwise = mkSystemName u occ_name
+newExportedVar :: OccName -> Type -> VM Var
+newExportedVar occ_name ty
+ = do
+ mod <- liftDs getModuleDs
+ u <- liftDs newUnique
+
+ let name = mkExternalName u mod occ_name noSrcSpan
+
+ return $ Id.mkExportedLocalId name ty
+
newLocalVar :: FastString -> Type -> VM Var
newLocalVar fs ty
= do
newLocalVar :: FastString -> Type -> VM Var
newLocalVar fs ty
= do