Safe Haskell | None |
---|---|
Language | Haskell98 |
- type DynTag = Int
- tagForCon :: DynFlags -> DataCon -> DynTag
- isSmallFamily :: DynFlags -> Int -> Bool
- type ConTagZ = Int
- dataConTagZ :: DataCon -> ConTagZ
- idPrimRep :: Id -> PrimRep
- isVoidRep :: PrimRep -> Bool
- isGcPtrRep :: PrimRep -> Bool
- addIdReps :: [Id] -> [(PrimRep, Id)]
- addArgReps :: [StgArg] -> [(PrimRep, StgArg)]
- argPrimRep :: StgArg -> PrimRep
- data LambdaFormInfo
- data StandardFormInfo
- mkLFThunk :: Type -> TopLevelFlag -> [Id] -> UpdateFlag -> LambdaFormInfo
- mkLFReEntrant :: TopLevelFlag -> [Id] -> [Id] -> ArgDescr -> LambdaFormInfo
- mkConLFInfo :: DataCon -> LambdaFormInfo
- mkSelectorLFInfo :: Id -> Int -> Bool -> LambdaFormInfo
- mkApLFInfo :: Id -> UpdateFlag -> Arity -> LambdaFormInfo
- mkLFImported :: Id -> LambdaFormInfo
- mkLFArgument :: Id -> LambdaFormInfo
- mkLFLetNoEscape :: LambdaFormInfo
- lfDynTag :: DynFlags -> LambdaFormInfo -> DynTag
- maybeIsLFCon :: LambdaFormInfo -> Maybe DataCon
- isLFThunk :: LambdaFormInfo -> Bool
- isLFReEntrant :: LambdaFormInfo -> Bool
- lfUpdatable :: LambdaFormInfo -> Bool
- data CgLoc
- type SelfLoopInfo = (Id, BlockId, [LocalReg])
- data CallMethod
- nodeMustPointToIt :: DynFlags -> LambdaFormInfo -> Bool
- isKnownFun :: LambdaFormInfo -> Bool
- funTag :: DynFlags -> ClosureInfo -> DynTag
- tagForArity :: DynFlags -> RepArity -> DynTag
- getCallMethod :: DynFlags -> Name -> Id -> LambdaFormInfo -> RepArity -> CgLoc -> Maybe SelfLoopInfo -> CallMethod
- data ClosureInfo
- mkClosureInfo :: DynFlags -> Bool -> Id -> LambdaFormInfo -> Int -> Int -> String -> ClosureInfo
- mkCmmInfo :: ClosureInfo -> CmmInfoTable
- closureLFInfo :: ClosureInfo -> LambdaFormInfo
- closureName :: ClosureInfo -> Name
- closureInfoLabel :: ClosureInfo -> CLabel
- staticClosureLabel :: ClosureInfo -> CLabel
- closureSlowEntryLabel :: ClosureInfo -> CLabel
- closureLocalEntryLabel :: DynFlags -> ClosureInfo -> CLabel
- closureUpdReqd :: ClosureInfo -> Bool
- closureSingleEntry :: ClosureInfo -> Bool
- closureReEntrant :: ClosureInfo -> Bool
- closureFunInfo :: ClosureInfo -> Maybe (RepArity, ArgDescr)
- isToplevClosure :: ClosureInfo -> Bool
- blackHoleOnEntry :: ClosureInfo -> Bool
- isStaticClosure :: ClosureInfo -> Bool
- mkDataConInfoTable :: DynFlags -> DataCon -> Bool -> Int -> Int -> CmmInfoTable
- cafBlackHoleInfoTable :: CmmInfoTable
- indStaticInfoTable :: CmmInfoTable
- staticClosureNeedsLink :: Bool -> CmmInfoTable -> Bool
Documentation
isSmallFamily :: DynFlags -> Int -> BoolSource
dataConTagZ :: DataCon -> ConTagZSource
isGcPtrRep :: PrimRep -> BoolSource
addArgReps :: [StgArg] -> [(PrimRep, StgArg)]Source
argPrimRep :: StgArg -> PrimRepSource
LambdaFormInfo
data LambdaFormInfoSource
mkLFThunk :: Type -> TopLevelFlag -> [Id] -> UpdateFlag -> LambdaFormInfoSource
mkLFReEntrant :: TopLevelFlag -> [Id] -> [Id] -> ArgDescr -> LambdaFormInfoSource
mkSelectorLFInfo :: Id -> Int -> Bool -> LambdaFormInfoSource
mkApLFInfo :: Id -> UpdateFlag -> Arity -> LambdaFormInfoSource
lfDynTag :: DynFlags -> LambdaFormInfo -> DynTagSource
Used by other modules
type SelfLoopInfo = (Id, BlockId, [LocalReg])Source
data CallMethodSource
funTag :: DynFlags -> ClosureInfo -> DynTagSource
tagForArity :: DynFlags -> RepArity -> DynTagSource
getCallMethod :: DynFlags -> Name -> Id -> LambdaFormInfo -> RepArity -> CgLoc -> Maybe SelfLoopInfo -> CallMethodSource
ClosureInfo
data ClosureInfoSource
mkClosureInfo :: DynFlags -> Bool -> Id -> LambdaFormInfo -> Int -> Int -> String -> ClosureInfoSource
mkCmmInfo :: ClosureInfo -> CmmInfoTableSource
Convert from ClosureInfo
to CmmInfoTable
.
Inspection
closureName :: ClosureInfo -> NameSource
Labels
Predicates
closureFunInfo :: ClosureInfo -> Maybe (RepArity, ArgDescr)Source
InfoTables
mkDataConInfoTable :: DynFlags -> DataCon -> Bool -> Int -> Int -> CmmInfoTableSource
staticClosureNeedsLink :: Bool -> CmmInfoTable -> BoolSource