6b44d0129485b26bacaa11011d4997cbb5c6b2a5
[ghc-hetmet.git] / ghc / compiler / profiling / CostCentre.hi
1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface CostCentre where
3 import CharSeq(CSeq)
4 import Id(Id, IdDetails)
5 import IdInfo(IdInfo)
6 import Maybes(Labda)
7 import PreludePS(_PackedString)
8 import Pretty(PprStyle)
9 import UniType(UniType)
10 import Unique(Unique)
11 import Unpretty(Unpretty(..))
12 data CSeq       {-# GHC_PRAGMA CNil | CAppend CSeq CSeq | CIndent Int CSeq | CNewline | CStr [Char] | CCh Char | CInt Int | CPStr _PackedString #-}
13 data CcKind     {-# GHC_PRAGMA UserCC _PackedString | AutoCC Id | DictCC Id #-}
14 data CostCentre         {-# GHC_PRAGMA NoCostCentre | NormalCC CcKind _PackedString _PackedString IsDupdCC IsCafCC | CurrentCC | SubsumedCosts | AllCafsCC _PackedString _PackedString | AllDictsCC _PackedString _PackedString IsDupdCC | OverheadCC | PreludeCafsCC | PreludeDictsCC IsDupdCC | DontCareCC #-}
15 data Id         {-# GHC_PRAGMA Id Unique UniType IdInfo IdDetails #-}
16 data IsCafCC   = IsCafCC | IsNotCafCC
17 data IsDupdCC   {-# GHC_PRAGMA AnOriginalCC | ADupdCC #-}
18 data Labda a    {-# GHC_PRAGMA Hamna | Ni a #-}
19 type Unpretty = CSeq
20 cafifyCC :: CostCentre -> CostCentre
21         {-# GHC_PRAGMA _A_ 1 _U_ 2 _N_ _S_ "S" _N_ _N_ #-}
22 ccFromThisModule :: CostCentre -> _PackedString -> Bool
23         {-# GHC_PRAGMA _A_ 2 _U_ 12 _N_ _S_ "SL" _N_ _N_ #-}
24 ccMentionsId :: CostCentre -> Labda Id
25         {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _N_ _N_ #-}
26 cmpCostCentre :: CostCentre -> CostCentre -> Int#
27         {-# GHC_PRAGMA _A_ 2 _U_ 22 _N_ _S_ "SS" _N_ _N_ #-}
28 costsAreSubsumed :: CostCentre -> Bool
29         {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _F_ _IF_ARGS_ 0 1 C 12 \ (u0 :: CostCentre) -> case u0 of { _ALG_ _ORIG_ CostCentre SubsumedCosts  -> _!_ True [] []; (u1 :: CostCentre) -> _!_ False [] [] } _N_ #-}
30 currentOrSubsumedCosts :: CostCentre -> Bool
31         {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _F_ _IF_ARGS_ 0 1 C 13 \ (u0 :: CostCentre) -> case u0 of { _ALG_ _ORIG_ CostCentre SubsumedCosts  -> _!_ True [] []; _ORIG_ CostCentre CurrentCC  -> _!_ True [] []; (u1 :: CostCentre) -> _!_ False [] [] } _N_ #-}
32 dontCareCostCentre :: CostCentre
33         {-# GHC_PRAGMA _A_ 0 _N_ _N_ _N_ _F_ _IF_ARGS_ 0 0 X 1 _!_ _ORIG_ CostCentre DontCareCC [] [] _N_ #-}
34 dupifyCC :: CostCentre -> CostCentre
35         {-# GHC_PRAGMA _A_ 1 _U_ 2 _N_ _S_ "S" _N_ _N_ #-}
36 isCafCC :: CostCentre -> Bool
37         {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _N_ _N_ #-}
38 isDictCC :: CostCentre -> Bool
39         {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _N_ _N_ #-}
40 isDupdCC :: CostCentre -> Bool
41         {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _N_ _N_ #-}
42 mkAllCafsCC :: _PackedString -> _PackedString -> CostCentre
43         {-# GHC_PRAGMA _A_ 2 _U_ 22 _N_ _N_ _F_ _IF_ARGS_ 0 2 XX 3 \ (u0 :: _PackedString) (u1 :: _PackedString) -> _!_ _ORIG_ CostCentre AllCafsCC [] [u0, u1] _N_ #-}
44 mkAllDictsCC :: _PackedString -> _PackedString -> Bool -> CostCentre
45         {-# GHC_PRAGMA _A_ 3 _U_ 221 _N_ _N_ _N_ _N_ #-}
46 mkAutoCC :: Id -> _PackedString -> _PackedString -> IsCafCC -> CostCentre
47         {-# GHC_PRAGMA _A_ 4 _U_ 2222 _N_ _N_ _N_ _N_ #-}
48 mkDictCC :: Id -> _PackedString -> _PackedString -> IsCafCC -> CostCentre
49         {-# GHC_PRAGMA _A_ 4 _U_ 2222 _N_ _N_ _N_ _N_ #-}
50 mkUserCC :: _PackedString -> _PackedString -> _PackedString -> CostCentre
51         {-# GHC_PRAGMA _A_ 3 _U_ 222 _N_ _N_ _N_ _N_ #-}
52 noCostCentre :: CostCentre
53         {-# GHC_PRAGMA _A_ 0 _N_ _N_ _N_ _F_ _IF_ARGS_ 0 0 X 1 _!_ _ORIG_ CostCentre NoCostCentre [] [] _N_ #-}
54 noCostCentreAttached :: CostCentre -> Bool
55         {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _S_ "S" _F_ _IF_ARGS_ 0 1 C 12 \ (u0 :: CostCentre) -> case u0 of { _ALG_ _ORIG_ CostCentre NoCostCentre  -> _!_ True [] []; (u1 :: CostCentre) -> _!_ False [] [] } _N_ #-}
56 overheadCostCentre :: CostCentre
57         {-# GHC_PRAGMA _A_ 0 _N_ _N_ _N_ _F_ _IF_ARGS_ 0 0 X 1 _!_ _ORIG_ CostCentre OverheadCC [] [] _N_ #-}
58 preludeCafsCostCentre :: CostCentre
59         {-# GHC_PRAGMA _A_ 0 _N_ _N_ _N_ _F_ _IF_ARGS_ 0 0 X 1 _!_ _ORIG_ CostCentre PreludeCafsCC [] [] _N_ #-}
60 preludeDictsCostCentre :: Bool -> CostCentre
61         {-# GHC_PRAGMA _A_ 1 _U_ 1 _N_ _N_ _N_ _N_ #-}
62 setToAbleCostCentre :: CostCentre -> Bool
63         {-# GHC_PRAGMA _A_ 1 _U_ 2 _N_ _S_ "S" _N_ _N_ #-}
64 showCostCentre :: PprStyle -> Bool -> CostCentre -> [Char]
65         {-# GHC_PRAGMA _A_ 3 _U_ 222 _N_ _S_ "SLS" _N_ _N_ #-}
66 subsumedCosts :: CostCentre
67         {-# GHC_PRAGMA _A_ 0 _N_ _N_ _N_ _F_ _IF_ARGS_ 0 0 X 1 _!_ _ORIG_ CostCentre SubsumedCosts [] [] _N_ #-}
68 unCafifyCC :: CostCentre -> CostCentre
69         {-# GHC_PRAGMA _A_ 1 _U_ 2 _N_ _S_ "S" _N_ _N_ #-}
70 uppCostCentre :: PprStyle -> Bool -> CostCentre -> CSeq
71         {-# GHC_PRAGMA _A_ 3 _U_ 222 _N_ _S_ "LLS" _N_ _N_ #-}
72 uppCostCentreDecl :: PprStyle -> Bool -> CostCentre -> CSeq
73         {-# GHC_PRAGMA _A_ 3 _U_ 222 _N_ _S_ "LEL" _N_ _N_ #-}
74 useCurrentCostCentre :: CostCentre
75         {-# GHC_PRAGMA _A_ 0 _N_ _N_ _N_ _F_ _IF_ARGS_ 0 0 X 1 _!_ _ORIG_ CostCentre CurrentCC [] [] _N_ #-}
76