X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fprelude%2FPrelNames.lhs;h=2d2edb041ca05ee99084a2c127ee47c27266e693;hb=4319ec9f159a0911bc0fc30cd9a108f22d1f3e65;hp=9078982dcef75cb6af37b93a5dfc58b6b746975f;hpb=940524aec90652b5ef81789c9a453c57c0e42cc9;p=ghc-hetmet.git diff --git a/compiler/prelude/PrelNames.lhs b/compiler/prelude/PrelNames.lhs index 9078982..2d2edb0 100644 --- a/compiler/prelude/PrelNames.lhs +++ b/compiler/prelude/PrelNames.lhs @@ -104,6 +104,7 @@ basicKnownKeyNames :: [Name] basicKnownKeyNames = genericTyConNames ++ typeableClassNames + ++ ndpNames ++ [ -- Type constructors (synonyms especially) ioTyConName, ioDataConName, runMainIOName, @@ -214,6 +215,14 @@ basicKnownKeyNames genericTyConNames :: [Name] genericTyConNames = [crossTyConName, plusTyConName, genUnitTyConName] + +ndpNames :: [Name] +ndpNames = [ parrayTyConName, paTyConName, reprTyConName, embedTyConName + , closureTyConName + , mkClosureName, applyClosureName + , mkClosurePName, applyClosurePName + , lengthPAName, replicatePAName, emptyPAName, packPAName, + combinePAName, intEqPAName ] \end{code} @@ -265,6 +274,11 @@ aRROW = mkBaseModule FSLIT("Control.Arrow") rANDOM = mkBaseModule FSLIT("System.Random") gLA_EXTS = mkBaseModule FSLIT("GHC.Exts") +nDP_PARRAY = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.PArray") +nDP_UTILS = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Utils") +nDP_CLOSURE = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Closure") +nDP_INSTANCES = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Instances") + mAIN = mkMainModule_ mAIN_NAME rOOT_MAIN = mkMainModule FSLIT(":Main") -- Root module for initialisation @@ -284,6 +298,12 @@ mkBaseModule m = mkModule basePackageId (mkModuleNameFS m) mkBaseModule_ :: ModuleName -> Module mkBaseModule_ m = mkModule basePackageId m +mkNDPModule :: FastString -> Module +mkNDPModule m = mkModule ndpPackageId (mkModuleNameFS m) + +mkNDPModule_ :: ModuleName -> Module +mkNDPModule_ m = mkModule ndpPackageId m + mkMainModule :: FastString -> Module mkMainModule m = mkModule mainPackageId (mkModuleNameFS m) @@ -670,6 +690,23 @@ marshalObjectName = varQual dOTNET FSLIT("marshalObject") marshalObjectIdKey marshalStringName = varQual dOTNET FSLIT("marshalString") marshalStringIdKey unmarshalStringName = varQual dOTNET FSLIT("unmarshalString") unmarshalStringIdKey checkDotnetResName = varQual dOTNET FSLIT("checkResult") checkDotnetResNameIdKey + +-- NDP stuff +parrayTyConName = tcQual nDP_PARRAY FSLIT("PArray") parrayTyConKey +paTyConName = tcQual nDP_PARRAY FSLIT("PA") paTyConKey +reprTyConName = tcQual nDP_PARRAY FSLIT("Repr") reprTyConKey +embedTyConName = tcQual nDP_PARRAY FSLIT("Embed") embedTyConKey +lengthPAName = varQual nDP_PARRAY FSLIT("lengthPA") lengthPAIdKey +replicatePAName = varQual nDP_PARRAY FSLIT("replicatePA") replicatePAIdKey +emptyPAName = varQual nDP_PARRAY FSLIT("emptyPA") emptyPAIdKey +packPAName = varQual nDP_PARRAY FSLIT("packPA") packPAIdKey +combinePAName = varQual nDP_PARRAY FSLIT("combinePA") combinePAIdKey +intEqPAName = varQual nDP_UTILS FSLIT("intEqPA") intEqPAIdKey +closureTyConName = tcQual nDP_CLOSURE FSLIT(":->") closureTyConKey +mkClosureName = varQual nDP_CLOSURE FSLIT("mkClosure") mkClosureIdKey +applyClosureName = varQual nDP_CLOSURE FSLIT("$:") applyClosureIdKey +mkClosurePName = varQual nDP_CLOSURE FSLIT("mkClosureP") mkClosurePIdKey +applyClosurePName = varQual nDP_CLOSURE FSLIT("$:^") applyClosurePIdKey \end{code} %************************************************************************ @@ -849,6 +886,12 @@ opaqueTyConKey = mkPreludeTyConUnique 133 stringTyConKey = mkPreludeTyConUnique 134 +parrayTyConKey = mkPreludeTyConUnique 135 +closureTyConKey = mkPreludeTyConUnique 136 +paTyConKey = mkPreludeTyConUnique 137 +reprTyConKey = mkPreludeTyConUnique 138 +embedTyConKey = mkPreludeTyConUnique 139 + ---------------- Template Haskell ------------------- -- USES TyConUniques 100-129 @@ -1029,6 +1072,19 @@ loopAIdKey = mkPreludeMiscIdUnique 124 fromStringClassOpKey = mkPreludeMiscIdUnique 125 +-- Flattened parallel array functions +mkClosureIdKey = mkPreludeMiscIdUnique 126 +applyClosureIdKey = mkPreludeMiscIdUnique 127 +mkClosurePIdKey = mkPreludeMiscIdUnique 128 +applyClosurePIdKey = mkPreludeMiscIdUnique 129 +closurePAIdKey = mkPreludeMiscIdUnique 130 +lengthPAIdKey = mkPreludeMiscIdUnique 131 +replicatePAIdKey = mkPreludeMiscIdUnique 132 +emptyPAIdKey = mkPreludeMiscIdUnique 133 +packPAIdKey = mkPreludeMiscIdUnique 134 +combinePAIdKey = mkPreludeMiscIdUnique 135 +intEqPAIdKey = mkPreludeMiscIdUnique 136 + ---------------- Template Haskell ------------------- -- USES IdUniques 200-399 -----------------------------------------------------