ghc-7.0.4: The GHC API

StgCmmClosure

# Documentation

data SMRep Source

type DynTag = Int Source

tagForCon :: DataCon -> DynTag Source

isSmallFamily :: Int -> Bool Source

type ConTagZ = Int Source

dataConTagZ :: DataCon -> ConTagZ Source

data ArgDescr Source

Constructors

ArgSpec !StgHalfWord |
ArgGen Liveness |

data Liveness Source

Constructors

SmallLiveness StgWord |
BigLiveness CLabel |

data C_SRT Source

Constructors

NoC_SRT |
C_SRT !CLabel !WordOff !StgHalfWord |

Instances

Eq C_SRT |
Outputable C_SRT |

needsSRT :: C_SRT -> Bool Source

isVoidRep :: PrimRep -> Bool Source

isGcPtrRep :: PrimRep -> Bool Source

addIdReps :: [Id] -> [(PrimRep, Id)]Source

addArgReps :: [StgArg] -> [(PrimRep, StgArg)]Source

argPrimRep :: StgArg -> PrimRep Source

data LambdaFormInfo Source

data StandardFormInfo Source

mkLFThunk :: Type -> TopLevelFlag -> [Id] -> UpdateFlag -> LambdaFormInfo Source

mkLFReEntrant :: TopLevelFlag -> [Id] -> [Id] -> ArgDescr -> LambdaFormInfo Source

mkConLFInfo :: DataCon -> LambdaFormInfo Source

mkSelectorLFInfo :: Id -> Int -> Bool -> LambdaFormInfo Source

mkApLFInfo :: Id -> UpdateFlag -> Arity -> LambdaFormInfo Source

mkLFImported :: Id -> LambdaFormInfo Source

mkLFArgument :: Id -> LambdaFormInfo Source

mkLFLetNoEscape :: LambdaFormInfo Source

lfDynTag :: LambdaFormInfo -> DynTag Source

data ClosureInfo Source

mkClosureInfo :: Bool -> Id -> LambdaFormInfo -> Int -> Int -> C_SRT -> String -> ClosureInfo Source

mkConInfo :: Bool -> DataCon -> Int -> Int -> ClosureInfo Source

maybeIsLFCon :: LambdaFormInfo -> Maybe DataCon Source

closureSize :: ClosureInfo -> WordOff Source

closureNonHdrSize :: ClosureInfo -> WordOff Source

closureGoodStuffSize :: ClosureInfo -> WordOff Source

closurePtrsSize :: ClosureInfo -> WordOff Source

slopSize :: ClosureInfo -> WordOff Source

closureName :: ClosureInfo -> Name Source

infoTableLabelFromCI :: ClosureInfo -> CLabel Source

closureLabelFromCI :: ClosureInfo -> CLabel Source

closureTypeInfo :: ClosureInfo -> ((ConstrDescription -> ClosureTypeInfo) -> DataCon -> CLabel -> a) -> (ClosureTypeInfo -> a) -> aSource

closureLFInfo :: ClosureInfo -> LambdaFormInfo Source

isLFThunk :: LambdaFormInfo -> Bool Source

closureSMRep :: ClosureInfo -> SMRep Source

closureUpdReqd :: ClosureInfo -> Bool Source

closureNeedsUpdSpace :: ClosureInfo -> Bool Source

closureIsThunk :: ClosureInfo -> Bool Source

closureSingleEntry :: ClosureInfo -> Bool Source

closureReEntrant :: ClosureInfo -> Bool Source

isConstrClosure_maybe :: ClosureInfo -> Maybe DataCon Source

closureFunInfo :: ClosureInfo -> Maybe (Int, ArgDescr)Source

isStandardFormThunk :: LambdaFormInfo -> Bool Source

isKnownFun :: LambdaFormInfo -> Bool Source

funTag :: ClosureInfo -> DynTag Source

tagForArity :: Int -> DynTag Source

enterIdLabel :: Name -> CafInfo -> CLabel Source

enterLocalIdLabel :: Name -> CafInfo -> CLabel Source

nodeMustPointToIt :: LambdaFormInfo -> Bool Source

data CallMethod Source

Constructors

EnterIt |
JumpToIt |
ReturnIt |
SlowCall |
DirectEntry CLabel Int |

getCallMethod :: DynFlags -> Name -> CafInfo -> LambdaFormInfo -> Int -> CallMethod Source

blackHoleOnEntry :: DynFlags -> ClosureInfo -> Bool Source

getClosureType :: Bool -> WordOff -> LambdaFormInfo -> ClosureType Source

isToplevClosure :: ClosureInfo -> Bool Source

closureValDescr :: ClosureInfo -> String Source

closureTypeDescr :: ClosureInfo -> String Source

isStaticClosure :: ClosureInfo -> Bool Source

cafBlackHoleClosureInfo :: ClosureInfo -> ClosureInfo Source

staticClosureNeedsLink :: ClosureInfo -> Bool Source

clHasCafRefs :: ClosureInfo -> CafInfo Source