X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FbasicTypes%2FOccName.lhs;h=644b59d694fc0234cf7e73c0a64b792c7fdc7422;hb=88ba83c8e50bd37cd6256d4f0fa699bb54103766;hp=0ca7f5f6f5da3e39b513670d449f328e4cdfa6b1;hpb=7739158ff9d983f80cb269f3c7cb38108e72e8ec;p=ghc-hetmet.git diff --git a/compiler/basicTypes/OccName.lhs b/compiler/basicTypes/OccName.lhs index 0ca7f5f6..644b59d 100644 --- a/compiler/basicTypes/OccName.lhs +++ b/compiler/basicTypes/OccName.lhs @@ -32,6 +32,8 @@ module OccName ( mkDataTOcc, mkDataCOcc, mkDataConWorkerOcc, mkSuperDictSelOcc, mkLocalOcc, mkMethodOcc, mkInstTyTcOcc, mkInstTyCoOcc, mkEqPredCoOcc, + mkVectOcc, mkVectTyConOcc, mkVectDataConOcc, mkVectIsoOcc, + mkPArrayTyConOcc, mkPArrayDataConOcc, -- ** Deconstruction occNameFS, occNameString, occNameSpace, @@ -78,7 +80,6 @@ import Data.Char -- Unicode TODO: put isSymbol in libcompat #if __GLASGOW_HASKELL__ > 604 -import Data.Char ( isSymbol ) #else isSymbol = const False #endif @@ -445,7 +446,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,6 +459,14 @@ mkGenOcc2 = mk_simple_deriv varName "$gto" mkDataTOcc = mk_simple_deriv varName "$t" mkDataCOcc = mk_simple_deriv varName "$c" +-- 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_" + mk_simple_deriv sp px occ = mk_deriv sp px (occNameString occ) -- Data constructor workers are made by setting the name space