X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fvectorise%2FVectBuiltIn.hs;h=2cfb28c76ad1f971b60e100e1b40f852baa43ff2;hb=709faa1b6cbc3704e23da7d99392475a7e4207cd;hp=6757691ed24f9ef64f26ef3fc0a23a89c3359bf8;hpb=7b4fa73c1d9449d10723b562b2ca3e71e86c6ae3;p=ghc-hetmet.git diff --git a/compiler/vectorise/VectBuiltIn.hs b/compiler/vectorise/VectBuiltIn.hs index 6757691..2cfb28c 100644 --- a/compiler/vectorise/VectBuiltIn.hs +++ b/compiler/vectorise/VectBuiltIn.hs @@ -61,6 +61,7 @@ nDP_UARR, nDP_PRELUDE_PARR, nDP_PRELUDE_INT, nDP_PRELUDE_DOUBLE, + nDP_PRELUDE_BOOL, nDP_PRELUDE_TUPLE :: Module nDP_UARR = mkNDPModule (fsLit "Data.Array.Parallel.Unlifted.Flat.UArr") @@ -74,6 +75,7 @@ nDP_COMBINATORS = mkNDPModule (fsLit "Data.Array.Parallel.Lifted.Combinators") nDP_PRELUDE_PARR = mkNDPModule (fsLit "Data.Array.Parallel.Prelude.Base.PArr") nDP_PRELUDE_INT = mkNDPModule (fsLit "Data.Array.Parallel.Prelude.Base.Int") nDP_PRELUDE_DOUBLE = mkNDPModule (fsLit "Data.Array.Parallel.Prelude.Base.Double") +nDP_PRELUDE_BOOL = mkNDPModule (fsLit "Data.Array.Parallel.Prelude.Base.Bool") nDP_PRELUDE_TUPLE = mkNDPModule (fsLit "Data.Array.Parallel.Prelude.Base.Tuple") data Builtins = Builtins { @@ -241,12 +243,16 @@ preludeVars , mk gHC_PARR (fsLit "singletonP") nDP_COMBINATORS (fsLit "singletonPA") , mk gHC_PARR (fsLit "concatP") nDP_COMBINATORS (fsLit "concatPA") , mk gHC_PARR (fsLit "+:+") nDP_COMBINATORS (fsLit "appPA") + , mk gHC_PARR (fsLit "emptyP") nDP_PARRAY (fsLit "emptyPA") , mk nDP_PRELUDE_INT (fsLit "plus") nDP_PRELUDE_INT (fsLit "plusV") , mk nDP_PRELUDE_INT (fsLit "minus") nDP_PRELUDE_INT (fsLit "minusV") , mk nDP_PRELUDE_INT (fsLit "mult") nDP_PRELUDE_INT (fsLit "multV") , mk nDP_PRELUDE_INT (fsLit "intDiv") nDP_PRELUDE_INT (fsLit "intDivV") + , mk nDP_PRELUDE_INT (fsLit "intMod") nDP_PRELUDE_INT (fsLit "intModV") + , mk nDP_PRELUDE_INT (fsLit "intSquareRoot") nDP_PRELUDE_INT (fsLit "intSquareRootV") , mk nDP_PRELUDE_INT (fsLit "sumP") nDP_PRELUDE_INT (fsLit "sumPA") + , mk nDP_PRELUDE_INT (fsLit "enumFromToP") nDP_PRELUDE_INT (fsLit "enumFromToPA") , mk nDP_PRELUDE_INT (fsLit "upToP") nDP_PRELUDE_INT (fsLit "upToPA") , mk nDP_PRELUDE_INT (fsLit "eq") nDP_PRELUDE_INT (fsLit "eqV") @@ -260,6 +266,7 @@ preludeVars , mk nDP_PRELUDE_DOUBLE (fsLit "minus") nDP_PRELUDE_DOUBLE (fsLit "minusV") , mk nDP_PRELUDE_DOUBLE (fsLit "mult") nDP_PRELUDE_DOUBLE (fsLit "multV") , mk nDP_PRELUDE_DOUBLE (fsLit "divide") nDP_PRELUDE_DOUBLE (fsLit "divideV") + , mk nDP_PRELUDE_DOUBLE (fsLit "squareRoot") nDP_PRELUDE_DOUBLE (fsLit "squareRootV") , mk nDP_PRELUDE_DOUBLE (fsLit "sumP") nDP_PRELUDE_DOUBLE (fsLit "sumPA") , mk nDP_PRELUDE_DOUBLE (fsLit "minIndexP") nDP_PRELUDE_DOUBLE (fsLit "minIndexPA") @@ -273,10 +280,14 @@ preludeVars , mk nDP_PRELUDE_DOUBLE (fsLit "ge") nDP_PRELUDE_DOUBLE (fsLit "geV") , mk nDP_PRELUDE_DOUBLE (fsLit "gt") nDP_PRELUDE_DOUBLE (fsLit "gtV") + , mk nDP_PRELUDE_BOOL (fsLit "andP") nDP_PRELUDE_BOOL (fsLit "andPA") + , mk nDP_PRELUDE_BOOL (fsLit "orP") nDP_PRELUDE_BOOL (fsLit "orPA") + -- FIXME: temporary , mk nDP_PRELUDE_PARR (fsLit "fromPArrayP") nDP_PRELUDE_PARR (fsLit "fromPArrayPA") , mk nDP_PRELUDE_PARR (fsLit "toPArrayP") nDP_PRELUDE_PARR (fsLit "toPArrayPA") , mk nDP_PRELUDE_PARR (fsLit "fromNestedPArrayP") nDP_PRELUDE_PARR (fsLit "fromNestedPArrayPA") + , mk nDP_PRELUDE_PARR (fsLit "combineP") nDP_COMBINATORS (fsLit "combine2PA") ] where mk = (,,,)