| ghc-6.10.4: The GHC API | Contents | Index
MachInstrs
Contents
Cmm instantiations Machine instructions
Synopsis
type NatCmm = GenCmm CmmStatic [CmmStatic] (ListGraph Instr)
type NatCmmTop = GenCmmTop CmmStatic [CmmStatic] (ListGraph Instr)
type NatBasicBlock = GenBasicBlock Instr
data Instr
= COMMENT FastString
| LDATA Section [CmmStatic]
| NEWBLOCK BlockId
| DELTA Int
| SPILL Reg Int
| RELOAD Int Reg
| MOV MachRep Operand Operand
| MOVZxL MachRep Operand Operand
| MOVSxL MachRep Operand Operand
| LEA MachRep Operand Operand
| ADD MachRep Operand Operand
| ADC MachRep Operand Operand
| SUB MachRep Operand Operand
| MUL MachRep Operand Operand
| IMUL MachRep Operand Operand
| IMUL2 MachRep Operand
| DIV MachRep Operand
| IDIV MachRep Operand
| AND MachRep Operand Operand
| OR MachRep Operand Operand
| XOR MachRep Operand Operand
| NOT MachRep Operand
| NEGI MachRep Operand
| SHL MachRep Operand Operand
| SAR MachRep Operand Operand
| SHR MachRep Operand Operand
| BT MachRep Imm Operand
| NOP
| CVTSS2SD Reg Reg
| CVTSD2SS Reg Reg
| CVTTSS2SIQ Operand Reg
| CVTTSD2SIQ Operand Reg
| CVTSI2SS Operand Reg
| CVTSI2SD Operand Reg
| FDIV MachRep Operand Operand
| SQRT MachRep Operand Reg
| TEST MachRep Operand Operand
| CMP MachRep Operand Operand
| SETCC Cond Operand
| PUSH MachRep Operand
| POP MachRep Operand
| JMP Operand
| JXX Cond BlockId
| JXX_GBL Cond Imm
| JMP_TBL Operand [BlockId]
| CALL (Either Imm Reg) [Reg]
| CLTD MachRep
| FETCHGOT Reg
| FETCHPC Reg
data Cond
= ALWAYS
| EQQ
| GE
| GEU
| GTT
| GU
| LE
| LEU
| LTT
| LU
| NE
| NEG
| POS
| CARRY
| OFLO
| PARITY
| NOTPARITY
condUnsigned
condToSigned
condToUnsigned
data RI
= RIReg Reg
| RIImm Imm
data Operand
= OpReg Reg
| OpImm Imm
| OpAddr AddrMode
Cmm instantiations
type NatCmm = GenCmm CmmStatic [CmmStatic] (ListGraph Instr)
type NatCmmTop = GenCmmTop CmmStatic [CmmStatic] (ListGraph Instr)
type NatBasicBlock = GenBasicBlock Instr
Machine instructions
data Instr
Constructors
COMMENT FastString |
LDATA Section [CmmStatic] |
NEWBLOCK BlockId |
DELTA Int |
SPILL Reg Int | spill this reg to a stack slot
RELOAD Int Reg | reload this reg from a stack slot
MOV MachRep Operand Operand |
MOVZxL MachRep Operand Operand |
MOVSxL MachRep Operand Operand |
LEA MachRep Operand Operand |
ADD MachRep Operand Operand |
ADC MachRep Operand Operand |
SUB MachRep Operand Operand |
MUL MachRep Operand Operand |
IMUL MachRep Operand Operand |
IMUL2 MachRep Operand |
DIV MachRep Operand |
IDIV MachRep Operand |
AND MachRep Operand Operand |
OR MachRep Operand Operand |
XOR MachRep Operand Operand |
NOT MachRep Operand |
NEGI MachRep Operand |
SHL MachRep Operand Operand |
SAR MachRep Operand Operand |
SHR MachRep Operand Operand |
BT MachRep Imm Operand |
NOP |
CVTSS2SD Reg Reg |
CVTSD2SS Reg Reg |
CVTTSS2SIQ Operand Reg |
CVTTSD2SIQ Operand Reg |
CVTSI2SS Operand Reg |
CVTSI2SD Operand Reg |
FDIV MachRep Operand Operand |
SQRT MachRep Operand Reg |
TEST MachRep Operand Operand |
CMP MachRep Operand Operand |
SETCC Cond Operand |
PUSH MachRep Operand |
POP MachRep Operand |
JMP Operand |
JXX Cond BlockId |
JXX_GBL Cond Imm |
JMP_TBL Operand [BlockId] |
CALL (Either Imm Reg) [Reg] |
CLTD MachRep |
FETCHGOT Reg |
FETCHPC Reg |
Instances
Outputable Instr
data Cond
Constructors
ALWAYS |
EQQ |
GE |
GEU |
GTT |
GU |
LE |
LEU |
LTT |
LU |
NE |
NEG |
POS |
CARRY |
OFLO |
PARITY |
NOTPARITY |
Instances
Eq Cond
condUnsigned
condToSigned
condToUnsigned
data RI
Constructors
RIReg Reg |
RIImm Imm |
data Operand
Constructors
OpReg Reg |
OpImm Imm |
OpAddr AddrMode |
Produced by Haddock version 2.4.2