Added double divide and unzipP
[ghc-hetmet.git] / compiler / vectorise / VectBuiltIn.hs
index 4a47457..0ad2bf7 100644 (file)
@@ -42,7 +42,7 @@ import Control.Monad   ( liftM, zipWithM )
 import Data.List       ( unzip4 )
 
 mAX_NDP_PROD :: Int
-mAX_NDP_PROD = 4
+mAX_NDP_PROD = 5
 
 mAX_NDP_SUM :: Int
 mAX_NDP_SUM = 3
@@ -214,6 +214,7 @@ preludeVars
       mk gHC_PARR FSLIT("mapP")       nDP_COMBINATORS FSLIT("mapPA")
     , mk gHC_PARR FSLIT("zipWithP")   nDP_COMBINATORS FSLIT("zipWithPA")
     , mk gHC_PARR FSLIT("zipP")       nDP_COMBINATORS FSLIT("zipPA")
+    , mk gHC_PARR FSLIT("unzipP")     nDP_COMBINATORS FSLIT("unzipPA")
     , mk gHC_PARR FSLIT("filterP")    nDP_COMBINATORS FSLIT("filterPA")
     , mk gHC_PARR FSLIT("lengthP")    nDP_COMBINATORS FSLIT("lengthPA")
     , mk gHC_PARR FSLIT("replicateP") nDP_COMBINATORS FSLIT("replicatePA")
@@ -226,6 +227,7 @@ preludeVars
     , 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("sumP")  nDP_PRELUDE_INT FSLIT("sumPA")
     , mk nDP_PRELUDE_INT  FSLIT("upToP") nDP_PRELUDE_INT FSLIT("upToPA")
 
@@ -239,6 +241,7 @@ preludeVars
     , mk nDP_PRELUDE_DOUBLE  FSLIT("plus") nDP_PRELUDE_DOUBLE FSLIT("plusV")
     , 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("sumP")  nDP_PRELUDE_DOUBLE FSLIT("sumPA")
     , mk nDP_PRELUDE_DOUBLE  FSLIT("minIndexP") 
          nDP_PRELUDE_DOUBLE  FSLIT("minIndexPA")