X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fvectorise%2FVectorise%2FBuiltins%2FBase.hs;h=69ae84ff9d7c78af9ec4d5333b513d7403851e11;hb=f2aaae9757e7532485c97f6c9a9ed5437542d1dd;hp=884224e00c5e37d70e90551057a42927efaacae0;hpb=671f6c78fd7b9b6453b4386e5dc64f169f7ed291;p=ghc-hetmet.git diff --git a/compiler/vectorise/Vectorise/Builtins/Base.hs b/compiler/vectorise/Vectorise/Builtins/Base.hs index 884224e..69ae84f 100644 --- a/compiler/vectorise/Vectorise/Builtins/Base.hs +++ b/compiler/vectorise/Vectorise/Builtins/Base.hs @@ -61,9 +61,12 @@ data Builtins , parrayTyCon :: TyCon -- ^ PArray , parrayDataCon :: DataCon -- ^ PArray , pdataTyCon :: TyCon -- ^ PData + , paClass :: Class -- ^ PA , paTyCon :: TyCon -- ^ PA , paDataCon :: DataCon -- ^ PA + , paPRSel :: Var -- ^ PA , preprTyCon :: TyCon -- ^ PRepr + , prClass :: Class -- ^ PR , prTyCon :: TyCon -- ^ PR , prDataCon :: DataCon -- ^ PR , replicatePDVar :: Var -- ^ replicatePD @@ -117,7 +120,15 @@ indexBuiltin indexBuiltin fn f i bi | inRange (bounds xs) i = xs ! i - | otherwise = pprPanic fn (ppr i) + | otherwise + = pprSorry "Vectorise.Builtins.indexBuiltin" + (vcat [ text "" + , text "DPH builtin function '" <> text fn <> text "' of size '" <> ppr i <> text "' is not yet implemented." + , text "This function does not appear in your source program, but it is needed" + , text "to compile your code in the backend. This is a known, current limitation" + , text "of DPH. If you want it to to work you should send mail to cvs-ghc@haskell.org" + , text "and ask what you can do to help (it might involve some GHC hacking)."]) + where xs = f bi