X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fvectorise%2FVectorise%2FBuiltins%2FInitialise.hs;h=9e78f112f9ee04d940c5cad413b658c3990a50b5;hp=d9a1f0dfdfa0bd492ef2c785860fb546e017c4ab;hb=ff3bfae6010625b7ffe96bc62e8e139870684600;hpb=869984cd0306c18dcd103b9ef7dd315573dc3c6d diff --git a/compiler/vectorise/Vectorise/Builtins/Initialise.hs b/compiler/vectorise/Vectorise/Builtins/Initialise.hs index d9a1f0d..9e78f11 100644 --- a/compiler/vectorise/Vectorise/Builtins/Initialise.hs +++ b/compiler/vectorise/Vectorise/Builtins/Initialise.hs @@ -46,14 +46,15 @@ initBuiltins pkg let [parrayDataCon] = tyConDataCons parrayTyCon pdataTyCon <- externalTyCon dph_PArray (fsLit "PData") - pa <- externalClass dph_PArray (fsLit "PA") - let paTyCon = classTyCon pa + paClass <- externalClass dph_PArray (fsLit "PA") + let paTyCon = classTyCon paClass [paDataCon] = tyConDataCons paTyCon - paPRSel = classSCSelId pa 0 + paPRSel = classSCSelId paClass 0 preprTyCon <- externalTyCon dph_PArray (fsLit "PRepr") - prTyCon <- externalClassTyCon dph_PArray (fsLit "PR") - let [prDataCon] = tyConDataCons prTyCon + prClass <- externalClass dph_PArray (fsLit "PR") + let prTyCon = classTyCon prClass + [prDataCon] = tyConDataCons prTyCon closureTyCon <- externalTyCon dph_Closure (fsLit ":->") @@ -127,10 +128,12 @@ initBuiltins pkg , parrayTyCon = parrayTyCon , parrayDataCon = parrayDataCon , pdataTyCon = pdataTyCon + , paClass = paClass , paTyCon = paTyCon , paDataCon = paDataCon , paPRSel = paPRSel , preprTyCon = preprTyCon + , prClass = prClass , prTyCon = prTyCon , prDataCon = prDataCon , voidTyCon = voidTyCon @@ -308,9 +311,3 @@ externalClass :: Module -> FastString -> DsM Class externalClass mod fs = dsLookupClass =<< lookupOrig mod (mkClsOccFS fs) - --- | Like `externalClass`, but get the TyCon of of the class. -externalClassTyCon :: Module -> FastString -> DsM TyCon -externalClassTyCon mod fs = liftM classTyCon (externalClass mod fs) - -