ghc-lib-0.20190204: The GHC API, decoupled from GHC versions

Safe HaskellNone
LanguageHaskell2010

Cmm

Synopsis

Cmm top-level datatypes

type CmmProgram = [CmmGroup] Source #

type CmmGroup = GenCmmGroup CmmStatics CmmTopInfo CmmGraph Source #

type GenCmmGroup d h g = [GenCmmDecl d h g] Source #

type CmmDecl = GenCmmDecl CmmStatics CmmTopInfo CmmGraph Source #

data GenCmmDecl d h g Source #

A top-level chunk, abstracted over the type of the contents of the basic blocks (Cmm or instructions are the likely instantiations).

Constructors

Instances
Instance details

Defined in PprCmmDecl

Methods

ppr :: GenCmmDecl d info i -> SDoc Source #

pprPrec :: Rational -> GenCmmDecl d info i -> SDoc Source #

type CmmGraph = GenCmmGraph CmmNode Source #

data GenCmmGraph n Source #

Constructors

Fields

Instances
Instance details

Defined in PprCmm

type CmmBlock = Block CmmNode C C Source #

type RawCmmDecl = GenCmmDecl CmmStatics (LabelMap CmmStatics) CmmGraph Source #

type RawCmmGroup = GenCmmGroup CmmStatics (LabelMap CmmStatics) CmmGraph Source #

data Section Source #

Constructors

data SectionType Source #

Constructors

Instances
Instance details

Defined in Cmm

data CmmStatics Source #

Constructors

Instances
Instance details

Defined in PprCmmDecl

data CmmStatic Source #

Constructors

Instances
Instance details

Defined in PprCmmDecl

isSecConstant :: Section -> Bool Source #

Should a data in this section be considered constant

Blocks containing lists

data GenBasicBlock i Source #

Constructors

Instances
Instance details

Defined in Cmm

Methods

ppr :: GenBasicBlock instr -> SDoc Source #

pprPrec :: Rational -> GenBasicBlock instr -> SDoc Source #

blockId :: GenBasicBlock i -> BlockId Source #

The branch block id is that of the first block in the branch, which is that branch's entry point

newtype ListGraph i Source #

Constructors

Instances
Instance details

Defined in Cmm

Methods

ppr :: ListGraph instr -> SDoc Source #

pprPrec :: Rational -> ListGraph instr -> SDoc Source #

pprBBlock :: Outputable stmt => GenBasicBlock stmt -> SDoc Source #

Info Tables

data CmmTopInfo Source #

Constructors

Instances
Instance details

Defined in PprCmm

data CmmStackInfo Source #

Constructors

Instances
Instance details

Defined in PprCmm

data CmmInfoTable Source #

Info table as a haskell data type

Constructors

Instances
Instance details

Defined in PprCmmDecl

topInfoTable :: GenCmmDecl a CmmTopInfo (GenCmmGraph n) -> Maybe CmmInfoTable Source #

data ClosureTypeInfo Source #

Constructors

Fun FunArity ArgDescr
ThunkSelector SelectorOffset
Instances
Instance details

Defined in SMRep

data ProfilingInfo Source #

Constructors

type ConstrDescription = [Word8] Source #

Statements, expressions and types

module CmmNode

module CmmExpr

AltStyle によって変換されたページ (->オリジナル) /