[project @ 1996-01-08 20:28:12 by partain]
[ghc-hetmet.git] / ghc / compiler / codeGen / CgConTbls.hi
1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface CgConTbls where
3 import AbsCSyn(AbstractC, CAddrMode, CStmtMacro, MagicId, RegRelative, ReturnInfo)
4 import BasicLit(BasicLit)
5 import CLabelInfo(CLabel)
6 import CgMonad(CompilationInfo)
7 import ClosureInfo(ClosureInfo)
8 import CmdLineOpts(GlobalSwitch)
9 import CostCentre(CostCentre)
10 import FiniteMap(FiniteMap)
11 import Maybes(Labda)
12 import PreludePS(_PackedString)
13 import PrimOps(PrimOp)
14 import TCE(TCE(..))
15 import TyCon(TyCon)
16 import UniType(UniType)
17 import UniqFM(UniqFM)
18 data AbstractC  {-# GHC_PRAGMA AbsCNop | AbsCStmts AbstractC AbstractC | CAssign CAddrMode CAddrMode | CJump CAddrMode | CFallThrough CAddrMode | CReturn CAddrMode ReturnInfo | CSwitch CAddrMode [(BasicLit, AbstractC)] AbstractC | CCodeBlock CLabel AbstractC | CInitHdr ClosureInfo RegRelative CAddrMode Bool | COpStmt [CAddrMode] PrimOp [CAddrMode] Int [MagicId] | CSimultaneous AbstractC | CMacroStmt CStmtMacro [CAddrMode] | CCallProfCtrMacro _PackedString [CAddrMode] | CCallProfCCMacro _PackedString [CAddrMode] | CStaticClosure CLabel ClosureInfo CAddrMode [CAddrMode] | CClosureInfoAndCode ClosureInfo AbstractC (Labda AbstractC) CAddrMode [Char] | CRetVector CLabel [Labda CAddrMode] AbstractC | CRetUnVector CLabel CAddrMode | CFlatRetVector CLabel [CAddrMode] | CCostCentreDecl Bool CostCentre | CClosureUpdInfo AbstractC | CSplitMarker #-}
19 data CompilationInfo    {-# GHC_PRAGMA MkCompInfo (GlobalSwitch -> Bool) _PackedString #-}
20 type TCE = UniqFM TyCon
21 data UniqFM a   {-# GHC_PRAGMA EmptyUFM | LeafUFM Int# a | NodeUFM Int# Int# (UniqFM a) (UniqFM a) #-}
22 genStaticConBits :: CompilationInfo -> [TyCon] -> FiniteMap TyCon [[Labda UniType]] -> AbstractC
23         {-# GHC_PRAGMA _A_ 3 _U_ 211 _N_ _N_ _N_ _N_ #-}
24