ghc-7.2.2: The GHC API

OldCmm

Synopsis

Documentation

type Cmm = GenCmm CmmStatics CmmInfo (ListGraph CmmStmt)Source

Cmm with the info table as a data type

type RawCmm = GenCmm CmmStatics (Maybe CmmStatics) (ListGraph CmmStmt)Source

Cmm with the info tables converted to a list of CmmStatic along with the info table label. If we are building without tables-next-to-code there will be no statics

INVARIANT: if there is an info table, it has at least one CmmStatic

newtype ListGraph i Source

A control-flow graph represented as a list of extended basic blocks.

Constructors

ListGraph [GenBasicBlock i]

Code, may be empty. The first block is the entry point. The order is otherwise initially unimportant, but at some point the code gen will fix the order.

Instances

data UpdateFrame Source

A frame that is to be pushed before entry to the function. Used to handle update frames.

Constructors

UpdateFrame CmmExpr [CmmExpr] 

cmmMapGraph :: (g -> g') -> GenCmm d h g -> GenCmm d h g'Source

cmmTopMapGraph :: (g -> g') -> GenCmmTop d h g -> GenCmmTop d h g'Source

cmmMapGraphM :: Monad m => (String -> g -> m g') -> GenCmm d h g -> m (GenCmm d h g')Source

cmmTopMapGraphM :: Monad m => (String -> g -> m g') -> GenCmmTop d h g -> m (GenCmmTop d h g')Source

module CmmDecl

module CmmExpr