Track changes to package ndp (use PArray_Int# instead of UArr Int)
authorRoman Leshchinskiy <rl@cse.unsw.edu.au>
Thu, 30 Aug 2007 03:21:04 +0000 (03:21 +0000)
committerRoman Leshchinskiy <rl@cse.unsw.edu.au>
Thu, 30 Aug 2007 03:21:04 +0000 (03:21 +0000)
compiler/prelude/PrelNames.lhs
compiler/vectorise/VectBuiltIn.hs
compiler/vectorise/VectType.hs

index db27cc7..1f09675 100644 (file)
@@ -218,7 +218,7 @@ genericTyConNames = [crossTyConName, plusTyConName, genUnitTyConName]
 
 ndpNames :: [Name]
 ndpNames = [ parrayTyConName, paTyConName, preprTyConName, prTyConName
-           , uarrTyConName
+           , parrayIntPrimTyConName
            , mkPRName
            , closureTyConName
            , mkClosureName, applyClosureName
@@ -281,7 +281,6 @@ nDP_REPR        = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Repr")
 nDP_CLOSURE     = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Closure")
 nDP_PRIM        = mkNDPModule FSLIT("Data.Array.Parallel.Lifted.Prim")
 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 
@@ -700,7 +699,8 @@ parrayTyConName     = tcQual   nDP_PARRAY FSLIT("PArray") parrayTyConKey
 paTyConName         = tcQual   nDP_PARRAY FSLIT("PA")     paTyConKey
 preprTyConName      = tcQual   nDP_PARRAY FSLIT("PRepr")  preprTyConKey
 prTyConName         = tcQual   nDP_PARRAY FSLIT("PR")     prTyConKey
-uarrTyConName       = tcQual   nDP_UARR   FSLIT("UArr")   uarrTyConKey
+parrayIntPrimTyConName = tcQual nDP_PRIM  FSLIT("PArray_Int#")
+                                                          parrayIntPrimTyConKey
 mkPRName            = varQual  nDP_PARRAY FSLIT("mkPR")   mkPRIdKey
 lengthPAName        = varQual  nDP_PARRAY FSLIT("lengthPA")    lengthPAIdKey
 replicatePAName     = varQual  nDP_PARRAY FSLIT("replicatePA") replicatePAIdKey
@@ -896,7 +896,7 @@ closureTyConKey                         = mkPreludeTyConUnique 136
 paTyConKey                              = mkPreludeTyConUnique 137
 preprTyConKey                           = mkPreludeTyConUnique 138
 prTyConKey                              = mkPreludeTyConUnique 139
-uarrTyConKey                            = mkPreludeTyConUnique 140
+parrayIntPrimTyConKey                   = mkPreludeTyConUnique 140
 
 
 ---------------- Template Haskell -------------------
index 39d4a03..2338d87 100644 (file)
@@ -45,7 +45,7 @@ data Builtins = Builtins {
                 , preprTyCon       :: TyCon
                 , prTyCon          :: TyCon
                 , prDataCon        :: DataCon
-                , uarrTyCon        :: TyCon
+                , parrayIntPrimTyCon :: TyCon
                 , sumTyCons        :: Array Int TyCon
                 , closureTyCon     :: TyCon
                 , mkPRVar          :: Var
@@ -79,8 +79,8 @@ initBuiltins
       let [paDataCon] = tyConDataCons paTyCon
       preprTyCon   <- dsLookupTyCon preprTyConName
       prTyCon      <- dsLookupTyCon prTyConName
-      uarrTyCon    <- dsLookupTyCon uarrTyConName
       let [prDataCon] = tyConDataCons prTyCon
+      parrayIntPrimTyCon <- dsLookupTyCon parrayIntPrimTyConName
       closureTyCon <- dsLookupTyCon closureTyConName
 
       sum_tcs <- mapM (lookupExternalTyCon nDP_REPR)
@@ -109,7 +109,7 @@ initBuiltins
                , preprTyCon       = preprTyCon
                , prTyCon          = prTyCon
                , prDataCon        = prDataCon
-               , uarrTyCon        = uarrTyCon
+               , parrayIntPrimTyCon = parrayIntPrimTyCon
                , sumTyCons        = sumTyCons
                , closureTyCon     = closureTyCon
                , mkPRVar          = mkPRVar
index c3f8350..0e397ba 100644 (file)
@@ -288,8 +288,8 @@ reprVars = mapM (mapM (newLocalVar FSLIT("r"))) . reprTys
 arrShapeTys :: Repr -> VM [Type]
 arrShapeTys (SumRepr  {})
   = do
-      uarr <- builtin uarrTyCon
-      return [intPrimTy, mkTyConApp uarr [intTy]]
+      int_arr <- builtin parrayIntPrimTyCon
+      return [intPrimTy, mkTyConApp int_arr [], mkTyConApp int_arr []]
 arrShapeTys repr = return [intPrimTy]
 
 arrShapeVars :: Repr -> VM [Var]