ghc-7.0.4: The GHC API

CgProf

Synopsis

- mkCCostCentre :: CostCentre -> CmmLit
- mkCCostCentreStack :: CostCentreStack -> CmmLit
- dynProfHdr :: CmmExpr -> [CmmExpr]
- profDynAlloc :: ClosureInfo -> CmmExpr -> Code
- profAlloc :: CmmExpr -> CmmExpr -> Code
- staticProfHdr :: CostCentreStack -> [CmmLit]
- initUpdFrameProf :: CmmExpr -> Code
- enterCostCentre :: ClosureInfo -> CostCentreStack -> StgExpr -> Code
- enterCostCentrePAP :: CmmExpr -> Code
- enterCostCentreThunk :: CmmExpr -> Code
- chooseDynCostCentres :: CostCentreStack -> [Id] -> StgExpr -> FCode (CmmExpr, CmmExpr)
- costCentreFrom :: CmmExpr -> CmmExpr
- curCCS :: CmmExpr
- curCCSAddr :: CmmExpr
- emitCostCentreDecl :: CostCentre -> Code
- emitCostCentreStackDecl :: CostCentreStack -> Code
- emitRegisterCC :: CostCentre -> Code
- emitRegisterCCS :: CostCentreStack -> Code
- emitSetCCC :: CostCentre -> Code
- emitCCS :: CostCentreStack -> FCode CmmExpr
- ldvEnter :: CmmExpr -> Code
- ldvEnterClosure :: ClosureInfo -> Code
- ldvRecordCreate :: CmmExpr -> Code

# Documentation

mkCCostCentre :: CostCentre -> CmmLit Source

mkCCostCentreStack :: CostCentreStack -> CmmLit Source

dynProfHdr :: CmmExpr -> [CmmExpr]Source

profDynAlloc :: ClosureInfo -> CmmExpr -> Code Source

Record the allocation of a closure. The CmmExpr is the cost centre stack to which to attribute the allocation.

profAlloc :: CmmExpr -> CmmExpr -> Code Source

Record the allocation of a closure (size is given by a CmmExpr) The size must be in words, because the allocation counter in a CCS counts in words.

staticProfHdr :: CostCentreStack -> [CmmLit]Source

initUpdFrameProf :: CmmExpr -> Code Source

enterCostCentre :: ClosureInfo -> CostCentreStack -> StgExpr -> Code Source

enterCostCentrePAP :: CmmExpr -> Code Source

enterCostCentreThunk :: CmmExpr -> Code Source

chooseDynCostCentres :: CostCentreStack -> [Id] -> StgExpr -> FCode (CmmExpr, CmmExpr)Source

costCentreFrom :: CmmExpr -> CmmExpr Source

curCCS :: CmmExpr Source

curCCSAddr :: CmmExpr Source

emitCostCentreDecl :: CostCentre -> Code Source

emitCostCentreStackDecl :: CostCentreStack -> Code Source

emitRegisterCC :: CostCentre -> Code Source

emitRegisterCCS :: CostCentreStack -> Code Source

emitSetCCC :: CostCentre -> Code Source

emitCCS :: CostCentreStack -> FCode CmmExpr Source

ldvEnter :: CmmExpr -> Code Source

ldvEnterClosure :: ClosureInfo -> Code Source

ldvRecordCreate :: CmmExpr -> Code Source