GHC.CmmToAsm.Types

ghc-9.4.0.20220501: The GHC API

Safe Haskell | Safe-Inferred
Language | Haskell2010

GHC.CmmToAsm.Types

Synopsis

- type NatCmm instr = GenCmmGroup RawCmmStatics (LabelMap RawCmmStatics) (ListGraph instr)
- type NatCmmDecl statics instr = GenCmmDecl statics (LabelMap RawCmmStatics) (ListGraph instr)
- type NatBasicBlock instr = GenBasicBlock instr
- data GenBasicBlock i = BasicBlock BlockId [i]
- blockId :: GenBasicBlock i -> BlockId
- newtype ListGraph i = ListGraph [GenBasicBlock i]
- type RawCmmStatics = GenCmmStatics 'True
- type RawCmmDecl = GenCmmDecl RawCmmStatics (LabelMap RawCmmStatics) CmmGraph

# Documentation

type NatCmm instr = GenCmmGroup RawCmmStatics (LabelMap RawCmmStatics) (ListGraph instr) Source #

type NatCmmDecl statics instr = GenCmmDecl statics (LabelMap RawCmmStatics) (ListGraph instr) Source #

type NatBasicBlock instr = GenBasicBlock instr Source #

data GenBasicBlock i Source #

Constructors

BasicBlock BlockId [i] |

#### Instances

Instances details

Functor GenBasicBlock Source # |
Instance details Defined in GHC.Cmm Methods fmap :: (a -> b) -> GenBasicBlock a -> GenBasicBlock b Source # (<$) :: a -> GenBasicBlock b -> GenBasicBlock a Source #
OutputableP env instr => OutputableP env (GenBasicBlock instr) Source # |
Instance details Defined in GHC.Cmm Methods pdoc :: env -> GenBasicBlock instr -> SDoc Source #
Outputable instr => Outputable (GenBasicBlock instr) Source # |
Instance details Defined in GHC.Cmm Methods ppr :: 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

ListGraph [GenBasicBlock i] |

#### Instances

Instances details

Functor ListGraph Source # |
Instance details Defined in GHC.Cmm Methods fmap :: (a -> b) -> ListGraph a -> ListGraph b Source # (<$) :: a -> ListGraph b -> ListGraph a Source #
OutputableP env instr => OutputableP env (ListGraph instr) Source # |
Instance details Defined in GHC.Cmm Methods pdoc :: env -> ListGraph instr -> SDoc Source #
Outputable instr => Outputable (ListGraph instr) Source # |
Instance details Defined in GHC.Cmm Methods ppr :: ListGraph instr -> SDoc Source #

type RawCmmStatics = GenCmmStatics 'True Source #

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