From: Roman Leshchinskiy Date: Fri, 24 Aug 2007 05:12:13 +0000 (+0000) Subject: Add UArr built-in X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=83937bef9abc2c60c6018d12cbc3fa080ab47d74 Add UArr built-in --- diff --git a/compiler/prelude/PrelNames.lhs b/compiler/prelude/PrelNames.lhs index 49ff539..b630233 100644 --- a/compiler/prelude/PrelNames.lhs +++ b/compiler/prelude/PrelNames.lhs @@ -218,6 +218,7 @@ genericTyConNames = [crossTyConName, plusTyConName, genUnitTyConName] ndpNames :: [Name] ndpNames = [ parrayTyConName, paTyConName, preprTyConName, prTyConName + , uarrTyConName , mkPRName , closureTyConName , mkClosureName, applyClosureName @@ -280,6 +281,7 @@ nDP_REPR = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Repr") 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") +nDP_UARR = mkNDPModule FSLIT("Data.Array.Parallel.Unlifted.Flat.UArr") mAIN = mkMainModule_ mAIN_NAME rOOT_MAIN = mkMainModule FSLIT(":Main") -- Root module for initialisation @@ -697,7 +699,8 @@ checkDotnetResName = varQual dOTNET FSLIT("checkResult") checkDotnetResNam parrayTyConName = tcQual nDP_PARRAY FSLIT("PArray") parrayTyConKey paTyConName = tcQual nDP_PARRAY FSLIT("PA") paTyConKey preprTyConName = tcQual nDP_PARRAY FSLIT("PRepr") preprTyConKey -prTyConName = clsQual nDP_PARRAY FSLIT("PR") prTyConKey +prTyConName = tcQual nDP_PARRAY FSLIT("PR") prTyConKey +uarrTyConName = tcQual nDP_UARR FSLIT("UArr") uarrTyConKey mkPRName = varQual nDP_PARRAY FSLIT("mkPR") mkPRIdKey lengthPAName = varQual nDP_PARRAY FSLIT("lengthPA") lengthPAIdKey replicatePAName = varQual nDP_PARRAY FSLIT("replicatePA") replicatePAIdKey @@ -894,6 +897,7 @@ closureTyConKey = mkPreludeTyConUnique 136 paTyConKey = mkPreludeTyConUnique 137 preprTyConKey = mkPreludeTyConUnique 138 prTyConKey = mkPreludeTyConUnique 139 +uarrTyConKey = mkPreludeTyConUnique 140 ---------------- Template Haskell ------------------- diff --git a/compiler/vectorise/VectBuiltIn.hs b/compiler/vectorise/VectBuiltIn.hs index 0b8c047..2d20b83 100644 --- a/compiler/vectorise/VectBuiltIn.hs +++ b/compiler/vectorise/VectBuiltIn.hs @@ -41,6 +41,7 @@ data Builtins = Builtins { , preprTyCon :: TyCon , prTyCon :: TyCon , prDataCon :: DataCon + , uarrTyCon :: TyCon , sumTyCons :: Array Int TyCon , closureTyCon :: TyCon , mkPRVar :: Var @@ -76,6 +77,7 @@ initBuiltins let [paDataCon] = tyConDataCons paTyCon preprTyCon <- dsLookupTyCon preprTyConName prTyCon <- dsLookupTyCon prTyConName + uarrTyCon <- dsLookupTyCon uarrTyConName let [prDataCon] = tyConDataCons prTyCon closureTyCon <- dsLookupTyCon closureTyConName @@ -106,6 +108,7 @@ initBuiltins , preprTyCon = preprTyCon , prTyCon = prTyCon , prDataCon = prDataCon + , uarrTyCon = uarrTyCon , sumTyCons = sumTyCons , closureTyCon = closureTyCon , mkPRVar = mkPRVar