[project @ 1997-11-25 14:16:15 by sof]
[ghc-hetmet.git] / ghc / compiler / codeGen / CgConTbls.lhs
index 7745466..09d9c10 100644 (file)
@@ -14,10 +14,9 @@ import AbsCSyn
 import CgMonad
 
 import AbsCUtils       ( mkAbsCStmts, mkAbstractCs, magicIdPrimRep )
-import CgCompInfo      ( uF_UPDATEE )
+import Constants       ( uF_UPDATEE )
 import CgHeapery       ( heapCheck, allocDynClosure )
-import CgRetConv       ( mkLiveRegsMask,
-                         dataReturnConvAlg, ctrlReturnConvAlg,
+import CgRetConv       ( dataReturnConvAlg, ctrlReturnConvAlg,
                          CtrlReturnConvention(..),
                          DataReturnConvention(..)
                        )
@@ -30,21 +29,22 @@ import CLabel               ( mkConEntryLabel, mkStaticClosureLabel,
 import ClosureInfo     ( layOutStaticClosure, layOutDynCon,
                          layOutPhantomClosure, closurePtrsSize,
                          fitsMinUpdSize, mkConLFInfo,
-                         infoTableLabelFromCI, dataConLiveness
+                         infoTableLabelFromCI, dataConLiveness,
+                         ClosureInfo
                        )
-import CostCentre      ( dontCareCostCentre )
-import FiniteMap       ( fmToList )
-import HeapOffs                ( zeroOff, VirtualHeapOffset(..) )
+import CostCentre      ( dontCareCostCentre, CostCentre )
+import FiniteMap       ( fmToList, FiniteMap )
+import HeapOffs                ( zeroOff, SYN_IE(VirtualHeapOffset) )
 import Id              ( dataConTag, dataConRawArgTys,
-                         dataConArity, fIRST_TAG,
+                         dataConNumFields, fIRST_TAG,
                          emptyIdSet,
-                         GenId{-instance NamedThing-}
+                         GenId{-instance NamedThing-}, SYN_IE(Id)
                        )
-import Name            ( getLocalName )
+import Name            ( getOccString )
 import PrelInfo                ( maybeIntLikeTyCon )
 import PrimRep         ( getPrimRepSize, PrimRep(..) )
-import TyCon           ( tyConDataCons, mkSpecTyCon )
-import Type            ( typePrimRep )
+import TyCon           ( tyConDataCons, mkSpecTyCon, TyCon )
+import Type            ( typePrimRep, SYN_IE(Type) )
 import Util            ( panic )
 
 mkSameSpecCon = panic "CgConTbls.mkSameSpecCon (ToDo)"
@@ -209,7 +209,7 @@ genConInfo comp_info tycon data_con
                      body_code))
 
     entry_addr = CLbl entry_label CodePtrRep
-    con_descr  = _UNPK_ (getLocalName data_con)
+    con_descr  = getOccString data_con
 
     closure_code        = CClosureInfoAndCode closure_info body Nothing
                                              stdUpd con_descr
@@ -241,7 +241,6 @@ genConInfo comp_info tycon data_con
     zero_size arg_ty = getPrimRepSize (typePrimRep arg_ty) == 0
 
     arg_tys        = dataConRawArgTys     data_con
-    con_arity      = dataConArity         data_con
     entry_label     = mkConEntryLabel      data_con
     closure_label   = mkStaticClosureLabel data_con
 \end{code}
@@ -337,9 +336,9 @@ genPhantomUpdInfo comp_info tycon data_con
 
            phantom_ci = layOutPhantomClosure data_con (mkConLFInfo data_con)
 
-           con_descr = _UNPK_ (getLocalName data_con)
+           con_descr = getOccString data_con
 
-           con_arity = dataConArity data_con
+           con_arity = dataConNumFields data_con
 
            upd_code = CLabelledCode upd_label (mkAbsCStmts build_closure perform_return)
            upd_label = mkConUpdCodePtrVecLabel tycon tag