Generate PRepr instances during vectorisation
[ghc-hetmet.git] / compiler / basicTypes / OccName.lhs
index 4968463..aa9934a 100644 (file)
@@ -32,7 +32,10 @@ module OccName (
        mkDataTOcc, mkDataCOcc, mkDataConWorkerOcc,
        mkSuperDictSelOcc, mkLocalOcc, mkMethodOcc, mkInstTyTcOcc,
        mkInstTyCoOcc, mkEqPredCoOcc,
-        mkCloOcc, mkCloTyCoOcc,
+        mkVectOcc, mkVectTyConOcc, mkVectDataConOcc, mkVectIsoOcc,
+        mkPArrayTyConOcc, mkPArrayDataConOcc,
+        mkPReprTyConOcc,
+        mkPADFunOcc,
 
        -- ** Deconstruction
        occNameFS, occNameString, occNameSpace, 
@@ -445,7 +448,7 @@ mkIPOcc                 = mk_simple_deriv varName  "$i"
 mkSpecOcc          = mk_simple_deriv varName  "$s"
 mkForeignExportOcc  = mk_simple_deriv varName  "$f"
 mkNewTyCoOcc        = mk_simple_deriv tcName  ":Co"
-mkInstTyCoOcc       = mk_simple_deriv tcName  ":Co"      -- derived from rep ty
+mkInstTyCoOcc       = mk_simple_deriv tcName  ":CoF"     -- derived from rep ty
 mkEqPredCoOcc      = mk_simple_deriv tcName  "$co"
 
 -- Generic derivable classes
@@ -458,9 +461,15 @@ mkGenOcc2           = mk_simple_deriv varName  "$gto"
 mkDataTOcc = mk_simple_deriv varName  "$t"
 mkDataCOcc = mk_simple_deriv varName  "$c"
 
--- Closure conversion
-mkCloOcc     = mk_simple_deriv varName "$CC_"
-mkCloTyCoOcc = mk_simple_deriv tcName  ":CC_"
+-- Vectorisation
+mkVectOcc          = mk_simple_deriv varName  "$v_"
+mkVectTyConOcc     = mk_simple_deriv tcName   ":V_"
+mkVectDataConOcc   = mk_simple_deriv dataName ":VD_"
+mkVectIsoOcc       = mk_simple_deriv varName  "$VI_"
+mkPArrayTyConOcc   = mk_simple_deriv tcName   ":VP_"
+mkPArrayDataConOcc = mk_simple_deriv dataName ":VPD_"
+mkPReprTyConOcc    = mk_simple_deriv tcName   ":VR_"
+mkPADFunOcc        = mk_simple_deriv varName  "$PA_"
 
 mk_simple_deriv sp px occ = mk_deriv sp px (occNameString occ)