2 -- | Modules that contain builtin functions used by the vectoriser.
3 module Vectorise.Builtins.Modules
11 -- | Ids of the modules that contain our DPH builtins.
14 { dph_PArray :: Module
16 , dph_Closure :: Module
17 , dph_Unboxed :: Module
18 , dph_Instances :: Module
19 , dph_Combinators :: Module
20 , dph_Scalar :: Module
21 , dph_PArray_Scalar :: Module
22 , dph_PArray_PRepr :: Module
23 , dph_PArray_PData :: Module
24 , dph_Prelude_PArr :: Module
25 , dph_Prelude_Int :: Module
26 , dph_Prelude_Word8 :: Module
27 , dph_Prelude_Double :: Module
28 , dph_Prelude_Bool :: Module
29 , dph_Prelude_Tuple :: Module
33 -- | The locations of builtins in the current DPH library.
34 dph_Modules :: PackageId -> Modules
37 { dph_PArray = mk (fsLit "Data.Array.Parallel.Lifted.PArray")
38 , dph_Repr = mk (fsLit "Data.Array.Parallel.Lifted.Repr")
39 , dph_Closure = mk (fsLit "Data.Array.Parallel.Lifted.Closure")
40 , dph_Unboxed = mk (fsLit "Data.Array.Parallel.Lifted.Unboxed")
41 , dph_Instances = mk (fsLit "Data.Array.Parallel.Lifted.Instances")
42 , dph_Combinators = mk (fsLit "Data.Array.Parallel.Lifted.Combinators")
43 , dph_Scalar = mk (fsLit "Data.Array.Parallel.Lifted.Scalar")
45 , dph_PArray_Scalar = mk (fsLit "Data.Array.Parallel.PArray.Scalar")
46 , dph_PArray_PRepr = mk (fsLit "Data.Array.Parallel.PArray.PRepr")
47 , dph_PArray_PData = mk (fsLit "Data.Array.Parallel.PArray.PData")
49 , dph_Prelude_PArr = mk (fsLit "Data.Array.Parallel.Prelude.Base.PArr")
50 , dph_Prelude_Int = mk (fsLit "Data.Array.Parallel.Prelude.Base.Int")
51 , dph_Prelude_Word8 = mk (fsLit "Data.Array.Parallel.Prelude.Base.Word8")
52 , dph_Prelude_Double = mk (fsLit "Data.Array.Parallel.Prelude.Base.Double")
53 , dph_Prelude_Bool = mk (fsLit "Data.Array.Parallel.Prelude.Base.Bool")
54 , dph_Prelude_Tuple = mk (fsLit "Data.Array.Parallel.Prelude.Base.Tuple")
56 where mk = mkModule pkg . mkModuleNameFS
59 -- | Project out ids of modules that contain orphan instances that we need to load.
60 dph_Orphans :: [Modules -> Module]
61 dph_Orphans = [dph_Repr, dph_Instances]