ghc-7.10.2: The GHC API

Safe HaskellNone
LanguageHaskell2010

Cmm

Contents

Synopsis

Cmm top-level datatypes

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

data GenCmmDecl d h g

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

Constructors

CmmProc h CLabel [GlobalReg] g 
CmmData Section d 

data GenCmmGraph n

Constructors

CmmGraph 

Fields

g_entry :: BlockId
 
g_graph :: Graph n C C
 

data CmmStatics

Constructors

Statics CLabel [CmmStatic] 

Blocks containing lists

data GenBasicBlock i

Constructors

BasicBlock BlockId [i] 

Instances

blockId :: GenBasicBlock i -> BlockId

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

newtype ListGraph i

Constructors

ListGraph [GenBasicBlock i] 

Instances

Outputable instr => Outputable (ListGraph instr) 

Cmm graphs

type GenCmmReplGraph n e x = UniqSM (Maybe (Graph n e x))

Info Tables

data CmmInfoTable

Info table as a haskell data type

data ClosureTypeInfo

Constructors

Constr ConstrTag ConstrDescription 
Fun FunArity ArgDescr 
Thunk 
ThunkSelector SelectorOffset 
BlackHole 
IndStatic 

data C_SRT

Instances

Statements, expressions and types

module CmmNode

module CmmExpr