ghc-7.8.2: The GHC API

Safe HaskellNone
LanguageHaskell98

SMRep

Contents

Synopsis

Words and bytes

Closure repesentation

data SMRep Source

A description of the layout of a closure. Corresponds directly to the closure types in includesrtsstorage/ClosureTypes.h.

Instances

type IsStatic = Bool Source

True = This is a static closure. Affects how we garbage-collect it. Static closure have an extra static link field at the end.

data ClosureTypeInfo Source

Constructors

Constr ConstrTag ConstrDescription 
Fun FunArity ArgDescr 
Thunk 
ThunkSelector SelectorOffset 
BlackHole 
IndStatic 

Construction

Predicates

Size-related things

fixedHdrSize :: DynFlags -> WordOff Source

Size of a closure header (StgHeader in includesrtsstorage/Closures.h)

profHdrSize :: DynFlags -> WordOff Source

Size of the profiling part of a closure header (StgProfHeader in includesrtsstorage/Closures.h)

RTS closure types

rtsClosureType :: SMRep -> Int Source

Derives the RTS closure type from an SMRep

Operations over [Word8] strings that don't belong here