harpy-0.4.1: Runtime code generation for x86 machine code

Portabilitynon-portable
Stabilityprovisional
Maintainer{magr,klee}@cs.tu-berlin.de

Harpy.X86Assembler

Description

A type class based layer on top of X86CodeGen which determines the addressing modes from the types of the operands.

Documentation

newtype Reg8 Source

Constructors

Reg8 Word8 

Instances

Setz Reg8 
Sets Reg8 
Seto Reg8 
Setns Reg8 
Setno Reg8 
Setnle Reg8 
Setnl Reg8 
Setnge Reg8 
Setng Reg8 
Setle Reg8 
Setl Reg8 
Setge Reg8 
Setg Reg8 
Setpo Reg8 
Setpe Reg8 
Setp Reg8 
Setnz Reg8 
Setnp Reg8 
Setne Reg8 
Setnc Reg8 
Setnbe Reg8 
Setnb Reg8 
Setnae Reg8 
Setna Reg8 
Sete Reg8 
Setc Reg8 
Setbe Reg8 
Setb Reg8 
Setae Reg8 
Seta Reg8 
Movzxb Reg32 Reg8 
Movsxb Reg32 Reg8 
Mov Ind Reg8 
Mov Addr Reg8 
Mov Reg8 Ind 
Mov Reg8 Addr 
Mov Reg8 Reg8 
Sal Ind Reg8 
Sal Addr Reg8 
Sal Reg32 Reg8 
Sar Ind Reg8 
Sar Addr Reg8 
Sar Reg32 Reg8 
Shr Ind Reg8 
Shr Addr Reg8 
Shr Reg32 Reg8 
Shl Ind Reg8 
Shl Addr Reg8 
Shl Reg32 Reg8 
Rcr Ind Reg8 
Rcr Addr Reg8 
Rcr Reg32 Reg8 
Rcl Ind Reg8 
Rcl Addr Reg8 
Rcl Reg32 Reg8 
Ror Ind Reg8 
Ror Addr Reg8 
Ror Reg32 Reg8 
Rol Ind Reg8 
Rol Addr Reg8 
Rol Reg32 Reg8 
Cmp Reg8 Reg8 
Xor Reg8 Reg8 
Sub Reg8 Reg8 
And Reg8 Reg8 
Sbb Reg8 Reg8 
Adc Reg8 Reg8 
Or Reg8 Reg8 
Add Reg8 Reg8 
Xadd Ind Reg8 
Xadd Addr Reg8 
Xadd Reg8 Reg8 
Xchg Ind Reg8 
Xchg Addr Reg8 
Xchg Reg8 Reg8 
Shld Reg32 Reg32 Reg8 
Shrd Reg32 Reg32 Reg8 
Mov Reg8 (Disp, Reg32) 
Mov Reg8 (Disp, Reg32, Scale) 
Mov Reg8 (Reg32, Reg32, Scale) 
Mov Reg8 (Disp, Reg32, Reg32, Scale) 
Mov (Disp, Reg32) Reg8 
Sal (Disp, Reg32) Reg8 
Sar (Disp, Reg32) Reg8 
Shr (Disp, Reg32) Reg8 
Shl (Disp, Reg32) Reg8 
Rcr (Disp, Reg32) Reg8 
Rcl (Disp, Reg32) Reg8 
Ror (Disp, Reg32) Reg8 
Rol (Disp, Reg32) Reg8 
Xadd (Disp, Reg32) Reg8 
Xchg (Disp, Reg32) Reg8 
Mov (Disp, Reg32, Scale) Reg8 
Mov (Reg32, Reg32, Scale) Reg8 
Mov (Disp, Reg32, Reg32, Scale) Reg8 

newtype Reg32 Source

Constructors

Reg32 Word8 

Instances

Eq Reg32 
Ord Reg32 
Show Reg32 
Call Reg32 
Jmp Reg32 
Pop Reg32 
Push Reg32 
Idiv Reg32 
Div Reg32 
Mul Reg32 
Neg Reg32 
Not Reg32 
Dec Reg32 
Inc Reg32 
Cmovs Reg32 Ind 
Cmovs Reg32 Addr 
Cmovs Reg32 Reg32 
Cmovo Reg32 Ind 
Cmovo Reg32 Addr 
Cmovo Reg32 Reg32 
Cmovns Reg32 Ind 
Cmovns Reg32 Addr 
Cmovns Reg32 Reg32 
Cmovno Reg32 Ind 
Cmovno Reg32 Addr 
Cmovno Reg32 Reg32 
Cmovnle Reg32 Ind 
Cmovnle Reg32 Addr 
Cmovnle Reg32 Reg32 
Cmovnl Reg32 Ind 
Cmovnl Reg32 Addr 
Cmovnl Reg32 Reg32 
Cmovnge Reg32 Ind 
Cmovnge Reg32 Addr 
Cmovnge Reg32 Reg32 
Cmovng Reg32 Ind 
Cmovng Reg32 Addr 
Cmovng Reg32 Reg32 
Cmovle Reg32 Ind 
Cmovle Reg32 Addr 
Cmovle Reg32 Reg32 
Cmovl Reg32 Ind 
Cmovl Reg32 Addr 
Cmovl Reg32 Reg32 
Cmovge Reg32 Ind 
Cmovge Reg32 Addr 
Cmovge Reg32 Reg32 
Cmovg Reg32 Ind 
Cmovg Reg32 Addr 
Cmovg Reg32 Reg32 
Cmovz Reg32 Ind 
Cmovz Reg32 Addr 
Cmovz Reg32 Reg32 
Cmovpo Reg32 Ind 
Cmovpo Reg32 Addr 
Cmovpo Reg32 Reg32 
Cmovpe Reg32 Ind 
Cmovpe Reg32 Addr 
Cmovpe Reg32 Reg32 
Cmovp Reg32 Ind 
Cmovp Reg32 Addr 
Cmovp Reg32 Reg32 
Cmovnz Reg32 Ind 
Cmovnz Reg32 Addr 
Cmovnz Reg32 Reg32 
Cmovnp Reg32 Ind 
Cmovnp Reg32 Addr 
Cmovnp Reg32 Reg32 
Cmovne Reg32 Ind 
Cmovne Reg32 Addr 
Cmovne Reg32 Reg32 
Cmovnc Reg32 Ind 
Cmovnc Reg32 Addr 
Cmovnc Reg32 Reg32 
Cmovnbe Reg32 Ind 
Cmovnbe Reg32 Addr 
Cmovnbe Reg32 Reg32 
Cmovnb Reg32 Ind 
Cmovnb Reg32 Addr 
Cmovnb Reg32 Reg32 
Cmovnae Reg32 Ind 
Cmovnae Reg32 Addr 
Cmovnae Reg32 Reg32 
Cmovna Reg32 Ind 
Cmovna Reg32 Addr 
Cmovna Reg32 Reg32 
Cmove Reg32 Ind 
Cmove Reg32 Addr 
Cmove Reg32 Reg32 
Cmovc Reg32 Ind 
Cmovc Reg32 Addr 
Cmovc Reg32 Reg32 
Cmovbe Reg32 Ind 
Cmovbe Reg32 Addr 
Cmovbe Reg32 Reg32 
Cmovb Reg32 Ind 
Cmovb Reg32 Addr 
Cmovb Reg32 Reg32 
Cmovae Reg32 Ind 
Cmovae Reg32 Addr 
Cmovae Reg32 Reg32 
Cmova Reg32 Ind 
Cmova Reg32 Addr 
Cmova Reg32 Reg32 
Lea Reg32 Ind 
Lea Reg32 Addr 
Movzxw Reg32 Ind 
Movzxw Reg32 Addr 
Movzxw Reg32 Reg16 
Movzxb Reg32 Ind 
Movzxb Reg32 Addr 
Movzxb Reg32 Reg8 
Movsxw Reg32 Ind 
Movsxw Reg32 Addr 
Movsxw Reg32 Reg16 
Movsxb Reg32 Ind 
Movsxb Reg32 Addr 
Movsxb Reg32 Reg8 
Mov Ind Reg32 
Mov Addr Reg32 
Mov Reg32 Word32 
Mov Reg32 Label 
Mov Reg32 Ind 
Mov Reg32 Addr 
Mov Reg32 Reg32 
Sal Reg32 Word8 
Sal Reg32 Reg8 
Sar Reg32 Word8 
Sar Reg32 Reg8 
Shr Reg32 Word8 
Shr Reg32 Reg8 
Shl Reg32 Word8 
Shl Reg32 Reg8 
Rcr Reg32 Word8 
Rcr Reg32 Reg8 
Rcl Reg32 Word8 
Rcl Reg32 Reg8 
Ror Reg32 Word8 
Ror Reg32 Reg8 
Rol Reg32 Word8 
Rol Reg32 Reg8 
Test Ind Reg32 
Test Addr Reg32 
Test Reg32 Word32 
Test Reg32 Reg32 
Cmp Ind Reg32 
Cmp Addr Reg32 
Cmp Reg32 Word32 
Cmp Reg32 Label 
Cmp Reg32 Ind 
Cmp Reg32 Addr 
Cmp Reg32 Reg32 
Xor Ind Reg32 
Xor Addr Reg32 
Xor Reg32 Word32 
Xor Reg32 Ind 
Xor Reg32 Addr 
Xor Reg32 Reg32 
Sub Ind Reg32 
Sub Addr Reg32 
Sub Reg32 Word32 
Sub Reg32 Ind 
Sub Reg32 Addr 
Sub Reg32 Reg32 
And Ind Reg32 
And Addr Reg32 
And Reg32 Word32 
And Reg32 Ind 
And Reg32 Addr 
And Reg32 Reg32 
Sbb Ind Reg32 
Sbb Addr Reg32 
Sbb Reg32 Word32 
Sbb Reg32 Ind 
Sbb Reg32 Addr 
Sbb Reg32 Reg32 
Adc Ind Reg32 
Adc Addr Reg32 
Adc Reg32 Word32 
Adc Reg32 Ind 
Adc Reg32 Addr 
Adc Reg32 Reg32 
Or Ind Reg32 
Or Addr Reg32 
Or Reg32 Word32 
Or Reg32 Ind 
Or Reg32 Addr 
Or Reg32 Reg32 
Add Ind Reg32 
Add Addr Reg32 
Add Reg32 Word32 
Add Reg32 Ind 
Add Reg32 Addr 
Add Reg32 Reg32 
Xadd Ind Reg32 
Xadd Addr Reg32 
Xadd Reg32 Reg32 
Xchg Ind Reg32 
Xchg Addr Reg32 
Xchg Reg32 Reg32 
Cmpxchg Ind Reg32 
Cmpxchg Addr Reg32 
Cmpxchg Reg32 Reg32 
Imul InPlace Reg32 Ind 
Imul InPlace Reg32 Addr 
Imul InPlace Reg32 Reg32 
Imul Reg32 Ind Word32 
Imul Reg32 Addr Word32 
Imul Reg32 Reg32 Word32 
Shld Reg32 Reg32 Word8 
Shld Reg32 Reg32 Reg8 
Shrd Reg32 Reg32 Word8 
Shrd Reg32 Reg32 Reg8 
Imul InPlace Reg32 (Disp, Reg32) 
Ucomiss XMMReg (Disp, Reg32) 
Ucomisd XMMReg (Disp, Reg32) 
Comiss XMMReg (Disp, Reg32) 
Comisd XMMReg (Disp, Reg32) 
Movsd XMMReg (Disp, Reg32) 
Maxps XMMReg (Disp, Reg32) 
Maxpd XMMReg (Disp, Reg32) 
Maxss XMMReg (Disp, Reg32) 
Maxsd XMMReg (Disp, Reg32) 
Minps XMMReg (Disp, Reg32) 
Minpd XMMReg (Disp, Reg32) 
Minss XMMReg (Disp, Reg32) 
Minsd XMMReg (Disp, Reg32) 
Divps XMMReg (Disp, Reg32) 
Divpd XMMReg (Disp, Reg32) 
Divss XMMReg (Disp, Reg32) 
Divsd XMMReg (Disp, Reg32) 
Mulps XMMReg (Disp, Reg32) 
Mulpd XMMReg (Disp, Reg32) 
Mulss XMMReg (Disp, Reg32) 
Mulsd XMMReg (Disp, Reg32) 
Subps XMMReg (Disp, Reg32) 
Subpd XMMReg (Disp, Reg32) 
Subss XMMReg (Disp, Reg32) 
Subsd XMMReg (Disp, Reg32) 
Addps XMMReg (Disp, Reg32) 
Addpd XMMReg (Disp, Reg32) 
Addss XMMReg (Disp, Reg32) 
Addsd XMMReg (Disp, Reg32) 
Sqrtps XMMReg (Disp, Reg32) 
Sqrtpd XMMReg (Disp, Reg32) 
Sqrtss XMMReg (Disp, Reg32) 
Sqrtsd XMMReg (Disp, Reg32) 
Fld80 FPTopReg (Disp, Reg32) 
Fld FPTopReg (Disp, Reg32) 
Fcomp FPTopReg (Disp, Reg32) 
Fcom FPTopReg (Disp, Reg32) 
Fdivr FPTopReg (Disp, Reg32) 
Fdiv FPTopReg (Disp, Reg32) 
Fmul FPTopReg (Disp, Reg32) 
Fsubr FPTopReg (Disp, Reg32) 
Fsub FPTopReg (Disp, Reg32) 
Fadd FPTopReg (Disp, Reg32) 
Cmovs Reg32 (Disp, Reg32) 
Cmovo Reg32 (Disp, Reg32) 
Cmovns Reg32 (Disp, Reg32) 
Cmovno Reg32 (Disp, Reg32) 
Cmovnle Reg32 (Disp, Reg32) 
Cmovnl Reg32 (Disp, Reg32) 
Cmovnge Reg32 (Disp, Reg32) 
Cmovng Reg32 (Disp, Reg32) 
Cmovle Reg32 (Disp, Reg32) 
Cmovl Reg32 (Disp, Reg32) 
Cmovge Reg32 (Disp, Reg32) 
Cmovg Reg32 (Disp, Reg32) 
Cmovz Reg32 (Disp, Reg32) 
Cmovpo Reg32 (Disp, Reg32) 
Cmovpe Reg32 (Disp, Reg32) 
Cmovp Reg32 (Disp, Reg32) 
Cmovnz Reg32 (Disp, Reg32) 
Cmovnp Reg32 (Disp, Reg32) 
Cmovne Reg32 (Disp, Reg32) 
Cmovnc Reg32 (Disp, Reg32) 
Cmovnbe Reg32 (Disp, Reg32) 
Cmovnb Reg32 (Disp, Reg32) 
Cmovnae Reg32 (Disp, Reg32) 
Cmovna Reg32 (Disp, Reg32) 
Cmove Reg32 (Disp, Reg32) 
Cmovc Reg32 (Disp, Reg32) 
Cmovbe Reg32 (Disp, Reg32) 
Cmovb Reg32 (Disp, Reg32) 
Cmovae Reg32 (Disp, Reg32) 
Cmova Reg32 (Disp, Reg32) 
Lea Reg32 (Disp, Reg32) 
Movzxw Reg32 (Disp, Reg32) 
Movzxb Reg32 (Disp, Reg32) 
Movsxw Reg32 (Disp, Reg32) 
Movsxb Reg32 (Disp, Reg32) 
Mov Reg32 (Disp, Reg32) 
Mov Reg16 (Disp, Reg32) 
Mov Reg8 (Disp, Reg32) 
Cmp Reg32 (Disp, Reg32) 
Xor Reg32 (Disp, Reg32) 
Sub Reg32 (Disp, Reg32) 
And Reg32 (Disp, Reg32) 
Sbb Reg32 (Disp, Reg32) 
Adc Reg32 (Disp, Reg32) 
Or Reg32 (Disp, Reg32) 
Add Reg32 (Disp, Reg32) 
Imul Reg32 (Disp, Reg32) Word32 
Lea Reg32 (Disp, Reg32, Scale) 
Lea Reg32 (Reg32, Reg32, Scale) 
Movzxw Reg32 (Disp, Reg32, Scale) 
Movzxw Reg32 (Reg32, Reg32, Scale) 
Movzxb Reg32 (Disp, Reg32, Scale) 
Movzxb Reg32 (Reg32, Reg32, Scale) 
Movsxw Reg32 (Disp, Reg32, Scale) 
Movsxw Reg32 (Reg32, Reg32, Scale) 
Movsxb Reg32 (Disp, Reg32, Scale) 
Movsxb Reg32 (Reg32, Reg32, Scale) 
Mov Reg32 (Disp, Reg32, Scale) 
Mov Reg32 (Reg32, Reg32, Scale) 
Mov Reg16 (Disp, Reg32, Scale) 
Mov Reg16 (Reg32, Reg32, Scale) 
Mov Reg8 (Disp, Reg32, Scale) 
Mov Reg8 (Reg32, Reg32, Scale) 
Lea Reg32 (Disp, Reg32, Reg32, Scale) 
Movzxw Reg32 (Disp, Reg32, Reg32, Scale) 
Movzxb Reg32 (Disp, Reg32, Reg32, Scale) 
Movsxw Reg32 (Disp, Reg32, Reg32, Scale) 
Movsxb Reg32 (Disp, Reg32, Reg32, Scale) 
Mov Reg32 (Disp, Reg32, Reg32, Scale) 
Mov Reg16 (Disp, Reg32, Reg32, Scale) 
Mov Reg8 (Disp, Reg32, Reg32, Scale) 
Prefetch2 (Disp, Reg32) 
Prefetch1 (Disp, Reg32) 
Prefetch0 (Disp, Reg32) 
Prefetchnta (Disp, Reg32) 
Fistp (Disp, Reg32) 
Fist (Disp, Reg32) 
Fild (Disp, Reg32) 
Fldcw (Disp, Reg32) 
Fnstcw (Disp, Reg32) 
Fst80 (Disp, Reg32) 
Fstp (Disp, Reg32) 
Fst (Disp, Reg32) 
Call (Disp, Reg32) 
Setz (Disp, Reg32) 
Sets (Disp, Reg32) 
Seto (Disp, Reg32) 
Setns (Disp, Reg32) 
Setno (Disp, Reg32) 
Setnle (Disp, Reg32) 
Setnl (Disp, Reg32) 
Setnge (Disp, Reg32) 
Setng (Disp, Reg32) 
Setle (Disp, Reg32) 
Setl (Disp, Reg32) 
Setge (Disp, Reg32) 
Setg (Disp, Reg32) 
Setpo (Disp, Reg32) 
Setpe (Disp, Reg32) 
Setp (Disp, Reg32) 
Setnz (Disp, Reg32) 
Setnp (Disp, Reg32) 
Setne (Disp, Reg32) 
Setnc (Disp, Reg32) 
Setnbe (Disp, Reg32) 
Setnb (Disp, Reg32) 
Setnae (Disp, Reg32) 
Setna (Disp, Reg32) 
Sete (Disp, Reg32) 
Setc (Disp, Reg32) 
Setbe (Disp, Reg32) 
Setb (Disp, Reg32) 
Setae (Disp, Reg32) 
Seta (Disp, Reg32) 
Jmp (Disp, Reg32) 
Pop (Disp, Reg32) 
Push (Disp, Reg32) 
Idiv (Disp, Reg32) 
Div (Disp, Reg32) 
Mul (Disp, Reg32) 
Neg (Disp, Reg32) 
Not (Disp, Reg32) 
Dec (Disp, Reg32) 
Inc (Disp, Reg32) 
Movsd (Disp, Reg32) XMMReg 
Mov (Disp, Reg32) Word8 
Mov (Disp, Reg32) Word16 
Mov (Disp, Reg32) Word32 
Mov (Disp, Reg32) Label 
Mov (Disp, Reg32) Reg32 
Mov (Disp, Reg32) Reg16 
Mov (Disp, Reg32) Reg8 
Sal (Disp, Reg32) Word8 
Sal (Disp, Reg32) Reg8 
Sar (Disp, Reg32) Word8 
Sar (Disp, Reg32) Reg8 
Shr (Disp, Reg32) Word8 
Shr (Disp, Reg32) Reg8 
Shl (Disp, Reg32) Word8 
Shl (Disp, Reg32) Reg8 
Rcr (Disp, Reg32) Word8 
Rcr (Disp, Reg32) Reg8 
Rcl (Disp, Reg32) Word8 
Rcl (Disp, Reg32) Reg8 
Ror (Disp, Reg32) Word8 
Ror (Disp, Reg32) Reg8 
Rol (Disp, Reg32) Word8 
Rol (Disp, Reg32) Reg8 
Test (Disp, Reg32) Word32 
Test (Disp, Reg32) Reg32 
Cmp (Disp, Reg32) Word8 
Cmp (Disp, Reg32) Word32 
Cmp (Disp, Reg32) Label 
Cmp (Disp, Reg32) Reg32 
Xor (Disp, Reg32) Word8 
Xor (Disp, Reg32) Word32 
Xor (Disp, Reg32) Reg32 
Sub (Disp, Reg32) Word8 
Sub (Disp, Reg32) Word32 
Sub (Disp, Reg32) Reg32 
And (Disp, Reg32) Word8 
And (Disp, Reg32) Word32 
And (Disp, Reg32) Reg32 
Sbb (Disp, Reg32) Word8 
Sbb (Disp, Reg32) Word32 
Sbb (Disp, Reg32) Reg32 
Adc (Disp, Reg32) Word8 
Adc (Disp, Reg32) Word32 
Adc (Disp, Reg32) Reg32 
Or (Disp, Reg32) Word8 
Or (Disp, Reg32) Word32 
Or (Disp, Reg32) Reg32 
Add (Disp, Reg32) Word8 
Add (Disp, Reg32) Word32 
Add (Disp, Reg32) Reg32 
Xadd (Disp, Reg32) Reg32 
Xadd (Disp, Reg32) Reg8 
Xchg (Disp, Reg32) Reg32 
Xchg (Disp, Reg32) Reg8 
Cmpxchg (Disp, Reg32) Reg32 
Push (Disp, Reg32, Scale) 
Push (Reg32, Reg32, Scale) 
Mov (Disp, Reg32, Scale) Word8 
Mov (Disp, Reg32, Scale) Word16 
Mov (Disp, Reg32, Scale) Word32 
Mov (Disp, Reg32, Scale) Label 
Mov (Disp, Reg32, Scale) Reg32 
Mov (Disp, Reg32, Scale) Reg16 
Mov (Disp, Reg32, Scale) Reg8 
Mov (Reg32, Reg32, Scale) Word8 
Mov (Reg32, Reg32, Scale) Word16 
Mov (Reg32, Reg32, Scale) Word32 
Mov (Reg32, Reg32, Scale) Label 
Mov (Reg32, Reg32, Scale) Reg32 
Mov (Reg32, Reg32, Scale) Reg16 
Mov (Reg32, Reg32, Scale) Reg8 
Push (Disp, Reg32, Reg32, Scale) 
Mov (Disp, Reg32, Reg32, Scale) Word8 
Mov (Disp, Reg32, Reg32, Scale) Word16 
Mov (Disp, Reg32, Reg32, Scale) Word32 
Mov (Disp, Reg32, Reg32, Scale) Label 
Mov (Disp, Reg32, Reg32, Scale) Reg32 
Mov (Disp, Reg32, Reg32, Scale) Reg16 
Mov (Disp, Reg32, Reg32, Scale) Reg8 

newtype XMMReg Source

Constructors

XMMReg Word8 

Instances

Eq XMMReg 
Ord XMMReg 
Show XMMReg 
Ucomiss XMMReg Ind 
Ucomiss XMMReg Addr 
Ucomiss XMMReg XMMReg 
Ucomisd XMMReg Ind 
Ucomisd XMMReg Addr 
Ucomisd XMMReg XMMReg 
Comiss XMMReg Ind 
Comiss XMMReg Addr 
Comiss XMMReg XMMReg 
Comisd XMMReg Ind 
Comisd XMMReg Addr 
Comisd XMMReg XMMReg 
Movsd Ind XMMReg 
Movsd Addr XMMReg 
Movsd XMMReg Ind 
Movsd XMMReg Addr 
Movsd XMMReg XMMReg 
Maxps XMMReg Ind 
Maxps XMMReg Addr 
Maxps XMMReg XMMReg 
Maxpd XMMReg Ind 
Maxpd XMMReg Addr 
Maxpd XMMReg XMMReg 
Maxss XMMReg Ind 
Maxss XMMReg Addr 
Maxss XMMReg XMMReg 
Maxsd XMMReg Ind 
Maxsd XMMReg Addr 
Maxsd XMMReg XMMReg 
Minps XMMReg Ind 
Minps XMMReg Addr 
Minps XMMReg XMMReg 
Minpd XMMReg Ind 
Minpd XMMReg Addr 
Minpd XMMReg XMMReg 
Minss XMMReg Ind 
Minss XMMReg Addr 
Minss XMMReg XMMReg 
Minsd XMMReg Ind 
Minsd XMMReg Addr 
Minsd XMMReg XMMReg 
Divps XMMReg Ind 
Divps XMMReg Addr 
Divps XMMReg XMMReg 
Divpd XMMReg Ind 
Divpd XMMReg Addr 
Divpd XMMReg XMMReg 
Divss XMMReg Ind 
Divss XMMReg Addr 
Divss XMMReg XMMReg 
Divsd XMMReg Ind 
Divsd XMMReg Addr 
Divsd XMMReg XMMReg 
Mulps XMMReg Ind 
Mulps XMMReg Addr 
Mulps XMMReg XMMReg 
Mulpd XMMReg Ind 
Mulpd XMMReg Addr 
Mulpd XMMReg XMMReg 
Mulss XMMReg Ind 
Mulss XMMReg Addr 
Mulss XMMReg XMMReg 
Mulsd XMMReg Ind 
Mulsd XMMReg Addr 
Mulsd XMMReg XMMReg 
Subps XMMReg Ind 
Subps XMMReg Addr 
Subps XMMReg XMMReg 
Subpd XMMReg Ind 
Subpd XMMReg Addr 
Subpd XMMReg XMMReg 
Subss XMMReg Ind 
Subss XMMReg Addr 
Subss XMMReg XMMReg 
Subsd XMMReg Ind 
Subsd XMMReg Addr 
Subsd XMMReg XMMReg 
Addps XMMReg Ind 
Addps XMMReg Addr 
Addps XMMReg XMMReg 
Addpd XMMReg Ind 
Addpd XMMReg Addr 
Addpd XMMReg XMMReg 
Addss XMMReg Ind 
Addss XMMReg Addr 
Addss XMMReg XMMReg 
Addsd XMMReg Ind 
Addsd XMMReg Addr 
Addsd XMMReg XMMReg 
Sqrtps XMMReg Ind 
Sqrtps XMMReg Addr 
Sqrtps XMMReg XMMReg 
Sqrtpd XMMReg Ind 
Sqrtpd XMMReg Addr 
Sqrtpd XMMReg XMMReg 
Sqrtss XMMReg Ind 
Sqrtss XMMReg Addr 
Sqrtss XMMReg XMMReg 
Sqrtsd XMMReg Ind 
Sqrtsd XMMReg Addr 
Sqrtsd XMMReg XMMReg 
Ucomiss XMMReg (Disp, Reg32) 
Ucomisd XMMReg (Disp, Reg32) 
Comiss XMMReg (Disp, Reg32) 
Comisd XMMReg (Disp, Reg32) 
Movsd XMMReg (Disp, Reg32) 
Maxps XMMReg (Disp, Reg32) 
Maxpd XMMReg (Disp, Reg32) 
Maxss XMMReg (Disp, Reg32) 
Maxsd XMMReg (Disp, Reg32) 
Minps XMMReg (Disp, Reg32) 
Minpd XMMReg (Disp, Reg32) 
Minss XMMReg (Disp, Reg32) 
Minsd XMMReg (Disp, Reg32) 
Divps XMMReg (Disp, Reg32) 
Divpd XMMReg (Disp, Reg32) 
Divss XMMReg (Disp, Reg32) 
Divsd XMMReg (Disp, Reg32) 
Mulps XMMReg (Disp, Reg32) 
Mulpd XMMReg (Disp, Reg32) 
Mulss XMMReg (Disp, Reg32) 
Mulsd XMMReg (Disp, Reg32) 
Subps XMMReg (Disp, Reg32) 
Subpd XMMReg (Disp, Reg32) 
Subss XMMReg (Disp, Reg32) 
Subsd XMMReg (Disp, Reg32) 
Addps XMMReg (Disp, Reg32) 
Addpd XMMReg (Disp, Reg32) 
Addss XMMReg (Disp, Reg32) 
Addsd XMMReg (Disp, Reg32) 
Sqrtps XMMReg (Disp, Reg32) 
Sqrtpd XMMReg (Disp, Reg32) 
Sqrtss XMMReg (Disp, Reg32) 
Sqrtsd XMMReg (Disp, Reg32) 
Movsd (Disp, Reg32) XMMReg 

newtype Addr Source

Constructors

Addr Word32 

Instances

Prefetch2 Addr 
Prefetch1 Addr 
Prefetch0 Addr 
Prefetchnta Addr 
Fistp Addr 
Fild Addr 
Fldcw Addr 
Fnstcw Addr 
Fst80 Addr 
Fstp Addr 
Fst Addr 
Call Addr 
Setz Addr 
Sets Addr 
Seto Addr 
Setns Addr 
Setno Addr 
Setnle Addr 
Setnl Addr 
Setnge Addr 
Setng Addr 
Setle Addr 
Setl Addr 
Setge Addr 
Setg Addr 
Setpo Addr 
Setpe Addr 
Setp Addr 
Setnz Addr 
Setnp Addr 
Setne Addr 
Setnc Addr 
Setnbe Addr 
Setnb Addr 
Setnae Addr 
Setna Addr 
Sete Addr 
Setc Addr 
Setbe Addr 
Setb Addr 
Setae Addr 
Seta Addr 
Jmp Addr 
Pop Addr 
Push Addr 
Idiv Addr 
Div Addr 
Mul Addr 
Neg Addr 
Not Addr 
Dec Addr 
Inc Addr 
Ucomiss XMMReg Addr 
Ucomisd XMMReg Addr 
Comiss XMMReg Addr 
Comisd XMMReg Addr 
Movsd Addr XMMReg 
Movsd XMMReg Addr 
Maxps XMMReg Addr 
Maxpd XMMReg Addr 
Maxss XMMReg Addr 
Maxsd XMMReg Addr 
Minps XMMReg Addr 
Minpd XMMReg Addr 
Minss XMMReg Addr 
Minsd XMMReg Addr 
Divps XMMReg Addr 
Divpd XMMReg Addr 
Divss XMMReg Addr 
Divsd XMMReg Addr 
Mulps XMMReg Addr 
Mulpd XMMReg Addr 
Mulss XMMReg Addr 
Mulsd XMMReg Addr 
Subps XMMReg Addr 
Subpd XMMReg Addr 
Subss XMMReg Addr 
Subsd XMMReg Addr 
Addps XMMReg Addr 
Addpd XMMReg Addr 
Addss XMMReg Addr 
Addsd XMMReg Addr 
Sqrtps XMMReg Addr 
Sqrtpd XMMReg Addr 
Sqrtss XMMReg Addr 
Sqrtsd XMMReg Addr 
Fld80 FPTopReg Addr 
Fld FPTopReg Addr 
Fcomp FPTopReg Addr 
Fcom FPTopReg Addr 
Fdivr FPTopReg Addr 
Fdiv FPTopReg Addr 
Fmul FPTopReg Addr 
Fsubr FPTopReg Addr 
Fsub FPTopReg Addr 
Fadd FPTopReg Addr 
Cmovs Reg32 Addr 
Cmovo Reg32 Addr 
Cmovns Reg32 Addr 
Cmovno Reg32 Addr 
Cmovnle Reg32 Addr 
Cmovnl Reg32 Addr 
Cmovnge Reg32 Addr 
Cmovng Reg32 Addr 
Cmovle Reg32 Addr 
Cmovl Reg32 Addr 
Cmovge Reg32 Addr 
Cmovg Reg32 Addr 
Cmovz Reg32 Addr 
Cmovpo Reg32 Addr 
Cmovpe Reg32 Addr 
Cmovp Reg32 Addr 
Cmovnz Reg32 Addr 
Cmovnp Reg32 Addr 
Cmovne Reg32 Addr 
Cmovnc Reg32 Addr 
Cmovnbe Reg32 Addr 
Cmovnb Reg32 Addr 
Cmovnae Reg32 Addr 
Cmovna Reg32 Addr 
Cmove Reg32 Addr 
Cmovc Reg32 Addr 
Cmovbe Reg32 Addr 
Cmovb Reg32 Addr 
Cmovae Reg32 Addr 
Cmova Reg32 Addr 
Lea Reg32 Addr 
Movzxw Reg32 Addr 
Movzxb Reg32 Addr 
Movsxw Reg32 Addr 
Movsxb Reg32 Addr 
Mov Addr Word8 
Mov Addr Word16 
Mov Addr Word32 
Mov Addr Label 
Mov Addr Reg32 
Mov Addr Reg16 
Mov Addr Reg8 
Mov Reg32 Addr 
Mov Reg16 Addr 
Mov Reg8 Addr 
Sal Addr Word8 
Sal Addr Reg8 
Sar Addr Word8 
Sar Addr Reg8 
Shr Addr Word8 
Shr Addr Reg8 
Shl Addr Word8 
Shl Addr Reg8 
Rcr Addr Word8 
Rcr Addr Reg8 
Rcl Addr Word8 
Rcl Addr Reg8 
Ror Addr Word8 
Ror Addr Reg8 
Rol Addr Word8 
Rol Addr Reg8 
Test Addr Word32 
Test Addr Reg32 
Cmp Addr Word32 
Cmp Addr Label 
Cmp Addr Reg32 
Cmp Reg32 Addr 
Xor Addr Word32 
Xor Addr Reg32 
Xor Reg32 Addr 
Sub Addr Word32 
Sub Addr Reg32 
Sub Reg32 Addr 
And Addr Word32 
And Addr Reg32 
And Reg32 Addr 
Sbb Addr Word32 
Sbb Addr Reg32 
Sbb Reg32 Addr 
Adc Addr Word32 
Adc Addr Reg32 
Adc Reg32 Addr 
Or Addr Word32 
Or Addr Reg32 
Or Reg32 Addr 
Add Addr Word32 
Add Addr Reg32 
Add Reg32 Addr 
Xadd Addr Reg32 
Xadd Addr Reg8 
Xchg Addr Reg32 
Xchg Addr Reg8 
Cmpxchg Addr Reg32 
Imul InPlace Reg32 Addr 
Imul Reg32 Addr Word32 

newtype Ind Source

Constructors

Ind Reg32 

Instances

Prefetch2 Ind 
Prefetch1 Ind 
Prefetch0 Ind 
Prefetchnta Ind 
Fistp Ind 
Fist Ind 
Fild Ind 
Fldcw Ind 
Fnstcw Ind 
Fst80 Ind 
Fstp Ind 
Fst Ind 
Call Ind 
Setz Ind 
Sets Ind 
Seto Ind 
Setns Ind 
Setno Ind 
Setnle Ind 
Setnl Ind 
Setnge Ind 
Setng Ind 
Setle Ind 
Setl Ind 
Setge Ind 
Setg Ind 
Setpo Ind 
Setpe Ind 
Setp Ind 
Setnz Ind 
Setnp Ind 
Setne Ind 
Setnc Ind 
Setnbe Ind 
Setnb Ind 
Setnae Ind 
Setna Ind 
Sete Ind 
Setc Ind 
Setbe Ind 
Setb Ind 
Setae Ind 
Seta Ind 
Jmp Ind 
Pop Ind 
Push Ind 
Idiv Ind 
Div Ind 
Mul Ind 
Neg Ind 
Not Ind 
Dec Ind 
Inc Ind 
Ucomiss XMMReg Ind 
Ucomisd XMMReg Ind 
Comiss XMMReg Ind 
Comisd XMMReg Ind 
Movsd Ind XMMReg 
Movsd XMMReg Ind 
Maxps XMMReg Ind 
Maxpd XMMReg Ind 
Maxss XMMReg Ind 
Maxsd XMMReg Ind 
Minps XMMReg Ind 
Minpd XMMReg Ind 
Minss XMMReg Ind 
Minsd XMMReg Ind 
Divps XMMReg Ind 
Divpd XMMReg Ind 
Divss XMMReg Ind 
Divsd XMMReg Ind 
Mulps XMMReg Ind 
Mulpd XMMReg Ind 
Mulss XMMReg Ind 
Mulsd XMMReg Ind 
Subps XMMReg Ind 
Subpd XMMReg Ind 
Subss XMMReg Ind 
Subsd XMMReg Ind 
Addps XMMReg Ind 
Addpd XMMReg Ind 
Addss XMMReg Ind 
Addsd XMMReg Ind 
Sqrtps XMMReg Ind 
Sqrtpd XMMReg Ind 
Sqrtss XMMReg Ind 
Sqrtsd XMMReg Ind 
Fld80 FPTopReg Ind 
Fld FPTopReg Ind 
Fcomp FPTopReg Ind 
Fcom FPTopReg Ind 
Fdivr FPTopReg Ind 
Fdiv FPTopReg Ind 
Fmul FPTopReg Ind 
Fsubr FPTopReg Ind 
Fsub FPTopReg Ind 
Fadd FPTopReg Ind 
Cmovs Reg32 Ind 
Cmovo Reg32 Ind 
Cmovns Reg32 Ind 
Cmovno Reg32 Ind 
Cmovnle Reg32 Ind 
Cmovnl Reg32 Ind 
Cmovnge Reg32 Ind 
Cmovng Reg32 Ind 
Cmovle Reg32 Ind 
Cmovl Reg32 Ind 
Cmovge Reg32 Ind 
Cmovg Reg32 Ind 
Cmovz Reg32 Ind 
Cmovpo Reg32 Ind 
Cmovpe Reg32 Ind 
Cmovp Reg32 Ind 
Cmovnz Reg32 Ind 
Cmovnp Reg32 Ind 
Cmovne Reg32 Ind 
Cmovnc Reg32 Ind 
Cmovnbe Reg32 Ind 
Cmovnb Reg32 Ind 
Cmovnae Reg32 Ind 
Cmovna Reg32 Ind 
Cmove Reg32 Ind 
Cmovc Reg32 Ind 
Cmovbe Reg32 Ind 
Cmovb Reg32 Ind 
Cmovae Reg32 Ind 
Cmova Reg32 Ind 
Lea Reg32 Ind 
Movzxw Reg32 Ind 
Movzxb Reg32 Ind 
Movsxw Reg32 Ind 
Movsxb Reg32 Ind 
Mov Ind Word8 
Mov Ind Word16 
Mov Ind Word32 
Mov Ind Label 
Mov Ind Reg32 
Mov Ind Reg16 
Mov Ind Reg8 
Mov Reg32 Ind 
Mov Reg16 Ind 
Mov Reg8 Ind 
Sal Ind Word8 
Sal Ind Reg8 
Sar Ind Word8 
Sar Ind Reg8 
Shr Ind Word8 
Shr Ind Reg8 
Shl Ind Word8 
Shl Ind Reg8 
Rcr Ind Word8 
Rcr Ind Reg8 
Rcl Ind Word8 
Rcl Ind Reg8 
Ror Ind Word8 
Ror Ind Reg8 
Rol Ind Word8 
Rol Ind Reg8 
Test Ind Word32 
Test Ind Reg32 
Cmp Ind Word8 
Cmp Ind Word32 
Cmp Ind Label 
Cmp Ind Reg32 
Cmp Reg32 Ind 
Xor Ind Word8 
Xor Ind Word32 
Xor Ind Reg32 
Xor Reg32 Ind 
Sub Ind Word8 
Sub Ind Word32 
Sub Ind Reg32 
Sub Reg32 Ind 
And Ind Word8 
And Ind Word32 
And Ind Reg32 
And Reg32 Ind 
Sbb Ind Word8 
Sbb Ind Word32 
Sbb Ind Reg32 
Sbb Reg32 Ind 
Adc Ind Word8 
Adc Ind Word32 
Adc Ind Reg32 
Adc Reg32 Ind 
Or Ind Word8 
Or Ind Word32 
Or Ind Reg32 
Or Reg32 Ind 
Add Ind Word8 
Add Ind Word32 
Add Ind Reg32 
Add Reg32 Ind 
Xadd Ind Reg32 
Xadd Ind Reg8 
Xchg Ind Reg32 
Xchg Ind Reg8 
Cmpxchg Ind Reg32 
Imul InPlace Reg32 Ind 
Imul Reg32 Ind Word32 

newtype Disp Source

Constructors

Disp Word32 

Instances

Imul InPlace Reg32 (Disp, Reg32) 
Ucomiss XMMReg (Disp, Reg32) 
Ucomisd XMMReg (Disp, Reg32) 
Comiss XMMReg (Disp, Reg32) 
Comisd XMMReg (Disp, Reg32) 
Movsd XMMReg (Disp, Reg32) 
Maxps XMMReg (Disp, Reg32) 
Maxpd XMMReg (Disp, Reg32) 
Maxss XMMReg (Disp, Reg32) 
Maxsd XMMReg (Disp, Reg32) 
Minps XMMReg (Disp, Reg32) 
Minpd XMMReg (Disp, Reg32) 
Minss XMMReg (Disp, Reg32) 
Minsd XMMReg (Disp, Reg32) 
Divps XMMReg (Disp, Reg32) 
Divpd XMMReg (Disp, Reg32) 
Divss XMMReg (Disp, Reg32) 
Divsd XMMReg (Disp, Reg32) 
Mulps XMMReg (Disp, Reg32) 
Mulpd XMMReg (Disp, Reg32) 
Mulss XMMReg (Disp, Reg32) 
Mulsd XMMReg (Disp, Reg32) 
Subps XMMReg (Disp, Reg32) 
Subpd XMMReg (Disp, Reg32) 
Subss XMMReg (Disp, Reg32) 
Subsd XMMReg (Disp, Reg32) 
Addps XMMReg (Disp, Reg32) 
Addpd XMMReg (Disp, Reg32) 
Addss XMMReg (Disp, Reg32) 
Addsd XMMReg (Disp, Reg32) 
Sqrtps XMMReg (Disp, Reg32) 
Sqrtpd XMMReg (Disp, Reg32) 
Sqrtss XMMReg (Disp, Reg32) 
Sqrtsd XMMReg (Disp, Reg32) 
Fld80 FPTopReg (Disp, Reg32) 
Fld FPTopReg (Disp, Reg32) 
Fcomp FPTopReg (Disp, Reg32) 
Fcom FPTopReg (Disp, Reg32) 
Fdivr FPTopReg (Disp, Reg32) 
Fdiv FPTopReg (Disp, Reg32) 
Fmul FPTopReg (Disp, Reg32) 
Fsubr FPTopReg (Disp, Reg32) 
Fsub FPTopReg (Disp, Reg32) 
Fadd FPTopReg (Disp, Reg32) 
Cmovs Reg32 (Disp, Reg32) 
Cmovo Reg32 (Disp, Reg32) 
Cmovns Reg32 (Disp, Reg32) 
Cmovno Reg32 (Disp, Reg32) 
Cmovnle Reg32 (Disp, Reg32) 
Cmovnl Reg32 (Disp, Reg32) 
Cmovnge Reg32 (Disp, Reg32) 
Cmovng Reg32 (Disp, Reg32) 
Cmovle Reg32 (Disp, Reg32) 
Cmovl Reg32 (Disp, Reg32) 
Cmovge Reg32 (Disp, Reg32) 
Cmovg Reg32 (Disp, Reg32) 
Cmovz Reg32 (Disp, Reg32) 
Cmovpo Reg32 (Disp, Reg32) 
Cmovpe Reg32 (Disp, Reg32) 
Cmovp Reg32 (Disp, Reg32) 
Cmovnz Reg32 (Disp, Reg32) 
Cmovnp Reg32 (Disp, Reg32) 
Cmovne Reg32 (Disp, Reg32) 
Cmovnc Reg32 (Disp, Reg32) 
Cmovnbe Reg32 (Disp, Reg32) 
Cmovnb Reg32 (Disp, Reg32) 
Cmovnae Reg32 (Disp, Reg32) 
Cmovna Reg32 (Disp, Reg32) 
Cmove Reg32 (Disp, Reg32) 
Cmovc Reg32 (Disp, Reg32) 
Cmovbe Reg32 (Disp, Reg32) 
Cmovb Reg32 (Disp, Reg32) 
Cmovae Reg32 (Disp, Reg32) 
Cmova Reg32 (Disp, Reg32) 
Lea Reg32 (Disp, Reg32) 
Movzxw Reg32 (Disp, Reg32) 
Movzxb Reg32 (Disp, Reg32) 
Movsxw Reg32 (Disp, Reg32) 
Movsxb Reg32 (Disp, Reg32) 
Mov Reg32 (Disp, Reg32) 
Mov Reg16 (Disp, Reg32) 
Mov Reg8 (Disp, Reg32) 
Cmp Reg32 (Disp, Reg32) 
Xor Reg32 (Disp, Reg32) 
Sub Reg32 (Disp, Reg32) 
And Reg32 (Disp, Reg32) 
Sbb Reg32 (Disp, Reg32) 
Adc Reg32 (Disp, Reg32) 
Or Reg32 (Disp, Reg32) 
Add Reg32 (Disp, Reg32) 
Imul Reg32 (Disp, Reg32) Word32 
Lea Reg32 (Disp, Reg32, Scale) 
Movzxw Reg32 (Disp, Reg32, Scale) 
Movzxb Reg32 (Disp, Reg32, Scale) 
Movsxw Reg32 (Disp, Reg32, Scale) 
Movsxb Reg32 (Disp, Reg32, Scale) 
Mov Reg32 (Disp, Reg32, Scale) 
Mov Reg16 (Disp, Reg32, Scale) 
Mov Reg8 (Disp, Reg32, Scale) 
Lea Reg32 (Disp, Reg32, Reg32, Scale) 
Movzxw Reg32 (Disp, Reg32, Reg32, Scale) 
Movzxb Reg32 (Disp, Reg32, Reg32, Scale) 
Movsxw Reg32 (Disp, Reg32, Reg32, Scale) 
Movsxb Reg32 (Disp, Reg32, Reg32, Scale) 
Mov Reg32 (Disp, Reg32, Reg32, Scale) 
Mov Reg16 (Disp, Reg32, Reg32, Scale) 
Mov Reg8 (Disp, Reg32, Reg32, Scale) 
Prefetch2 (Disp, Reg32) 
Prefetch1 (Disp, Reg32) 
Prefetch0 (Disp, Reg32) 
Prefetchnta (Disp, Reg32) 
Fistp (Disp, Reg32) 
Fist (Disp, Reg32) 
Fild (Disp, Reg32) 
Fldcw (Disp, Reg32) 
Fnstcw (Disp, Reg32) 
Fst80 (Disp, Reg32) 
Fstp (Disp, Reg32) 
Fst (Disp, Reg32) 
Call (Disp, Reg32) 
Setz (Disp, Reg32) 
Sets (Disp, Reg32) 
Seto (Disp, Reg32) 
Setns (Disp, Reg32) 
Setno (Disp, Reg32) 
Setnle (Disp, Reg32) 
Setnl (Disp, Reg32) 
Setnge (Disp, Reg32) 
Setng (Disp, Reg32) 
Setle (Disp, Reg32) 
Setl (Disp, Reg32) 
Setge (Disp, Reg32) 
Setg (Disp, Reg32) 
Setpo (Disp, Reg32) 
Setpe (Disp, Reg32) 
Setp (Disp, Reg32) 
Setnz (Disp, Reg32) 
Setnp (Disp, Reg32) 
Setne (Disp, Reg32) 
Setnc (Disp, Reg32) 
Setnbe (Disp, Reg32) 
Setnb (Disp, Reg32) 
Setnae (Disp, Reg32) 
Setna (Disp, Reg32) 
Sete (Disp, Reg32) 
Setc (Disp, Reg32) 
Setbe (Disp, Reg32) 
Setb (Disp, Reg32) 
Setae (Disp, Reg32) 
Seta (Disp, Reg32) 
Jmp (Disp, Reg32) 
Pop (Disp, Reg32) 
Push (Disp, Reg32) 
Idiv (Disp, Reg32) 
Div (Disp, Reg32) 
Mul (Disp, Reg32) 
Neg (Disp, Reg32) 
Not (Disp, Reg32) 
Dec (Disp, Reg32) 
Inc (Disp, Reg32) 
Movsd (Disp, Reg32) XMMReg 
Mov (Disp, Reg32) Word8 
Mov (Disp, Reg32) Word16 
Mov (Disp, Reg32) Word32 
Mov (Disp, Reg32) Label 
Mov (Disp, Reg32) Reg32 
Mov (Disp, Reg32) Reg16 
Mov (Disp, Reg32) Reg8 
Sal (Disp, Reg32) Word8 
Sal (Disp, Reg32) Reg8 
Sar (Disp, Reg32) Word8 
Sar (Disp, Reg32) Reg8 
Shr (Disp, Reg32) Word8 
Shr (Disp, Reg32) Reg8 
Shl (Disp, Reg32) Word8 
Shl (Disp, Reg32) Reg8 
Rcr (Disp, Reg32) Word8 
Rcr (Disp, Reg32) Reg8 
Rcl (Disp, Reg32) Word8 
Rcl (Disp, Reg32) Reg8 
Ror (Disp, Reg32) Word8 
Ror (Disp, Reg32) Reg8 
Rol (Disp, Reg32) Word8 
Rol (Disp, Reg32) Reg8 
Test (Disp, Reg32) Word32 
Test (Disp, Reg32) Reg32 
Cmp (Disp, Reg32) Word8 
Cmp (Disp, Reg32) Word32 
Cmp (Disp, Reg32) Label 
Cmp (Disp, Reg32) Reg32 
Xor (Disp, Reg32) Word8 
Xor (Disp, Reg32) Word32 
Xor (Disp, Reg32) Reg32 
Sub (Disp, Reg32) Word8 
Sub (Disp, Reg32) Word32 
Sub (Disp, Reg32) Reg32 
And (Disp, Reg32) Word8 
And (Disp, Reg32) Word32 
And (Disp, Reg32) Reg32 
Sbb (Disp, Reg32) Word8 
Sbb (Disp, Reg32) Word32 
Sbb (Disp, Reg32) Reg32 
Adc (Disp, Reg32) Word8 
Adc (Disp, Reg32) Word32 
Adc (Disp, Reg32) Reg32 
Or (Disp, Reg32) Word8 
Or (Disp, Reg32) Word32 
Or (Disp, Reg32) Reg32 
Add (Disp, Reg32) Word8 
Add (Disp, Reg32) Word32 
Add (Disp, Reg32) Reg32 
Xadd (Disp, Reg32) Reg32 
Xadd (Disp, Reg32) Reg8 
Xchg (Disp, Reg32) Reg32 
Xchg (Disp, Reg32) Reg8 
Cmpxchg (Disp, Reg32) Reg32 
Push (Disp, Reg32, Scale) 
Mov (Disp, Reg32, Scale) Word8 
Mov (Disp, Reg32, Scale) Word16 
Mov (Disp, Reg32, Scale) Word32 
Mov (Disp, Reg32, Scale) Label 
Mov (Disp, Reg32, Scale) Reg32 
Mov (Disp, Reg32, Scale) Reg16 
Mov (Disp, Reg32, Scale) Reg8 
Push (Disp, Reg32, Reg32, Scale) 
Mov (Disp, Reg32, Reg32, Scale) Word8 
Mov (Disp, Reg32, Reg32, Scale) Word16 
Mov (Disp, Reg32, Reg32, Scale) Word32 
Mov (Disp, Reg32, Reg32, Scale) Label 
Mov (Disp, Reg32, Reg32, Scale) Reg32 
Mov (Disp, Reg32, Reg32, Scale) Reg16 
Mov (Disp, Reg32, Reg32, Scale) Reg8 

data Scale Source

Constructors

S1 
S2 
S4 
S8 

Instances

Lea Reg32 (Disp, Reg32, Scale) 
Lea Reg32 (Reg32, Reg32, Scale) 
Movzxw Reg32 (Disp, Reg32, Scale) 
Movzxw Reg32 (Reg32, Reg32, Scale) 
Movzxb Reg32 (Disp, Reg32, Scale) 
Movzxb Reg32 (Reg32, Reg32, Scale) 
Movsxw Reg32 (Disp, Reg32, Scale) 
Movsxw Reg32 (Reg32, Reg32, Scale) 
Movsxb Reg32 (Disp, Reg32, Scale) 
Movsxb Reg32 (Reg32, Reg32, Scale) 
Mov Reg32 (Disp, Reg32, Scale) 
Mov Reg32 (Reg32, Reg32, Scale) 
Mov Reg16 (Disp, Reg32, Scale) 
Mov Reg16 (Reg32, Reg32, Scale) 
Mov Reg8 (Disp, Reg32, Scale) 
Mov Reg8 (Reg32, Reg32, Scale) 
Lea Reg32 (Disp, Reg32, Reg32, Scale) 
Movzxw Reg32 (Disp, Reg32, Reg32, Scale) 
Movzxb Reg32 (Disp, Reg32, Reg32, Scale) 
Movsxw Reg32 (Disp, Reg32, Reg32, Scale) 
Movsxb Reg32 (Disp, Reg32, Reg32, Scale) 
Mov Reg32 (Disp, Reg32, Reg32, Scale) 
Mov Reg16 (Disp, Reg32, Reg32, Scale) 
Mov Reg8 (Disp, Reg32, Reg32, Scale) 
Push (Disp, Reg32, Scale) 
Push (Reg32, Reg32, Scale) 
Mov (Disp, Reg32, Scale) Word8 
Mov (Disp, Reg32, Scale) Word16 
Mov (Disp, Reg32, Scale) Word32 
Mov (Disp, Reg32, Scale) Label 
Mov (Disp, Reg32, Scale) Reg32 
Mov (Disp, Reg32, Scale) Reg16 
Mov (Disp, Reg32, Scale) Reg8 
Mov (Reg32, Reg32, Scale) Word8 
Mov (Reg32, Reg32, Scale) Word16 
Mov (Reg32, Reg32, Scale) Word32 
Mov (Reg32, Reg32, Scale) Label 
Mov (Reg32, Reg32, Scale) Reg32 
Mov (Reg32, Reg32, Scale) Reg16 
Mov (Reg32, Reg32, Scale) Reg8 
Push (Disp, Reg32, Reg32, Scale) 
Mov (Disp, Reg32, Reg32, Scale) Word8 
Mov (Disp, Reg32, Reg32, Scale) Word16 
Mov (Disp, Reg32, Reg32, Scale) Word32 
Mov (Disp, Reg32, Reg32, Scale) Label 
Mov (Disp, Reg32, Reg32, Scale) Reg32 
Mov (Disp, Reg32, Reg32, Scale) Reg16 
Mov (Disp, Reg32, Reg32, Scale) Reg8 

class Cmpxchg a b whereSource

Methods

cmpxchg :: a -> b -> CodeGen e s ()Source

class Inc a whereSource

Methods

inc :: a -> CodeGen e s ()Source

Instances

class Dec a whereSource

Methods

dec :: a -> CodeGen e s ()Source

Instances

class Not a whereSource

Methods

not :: a -> CodeGen e s ()Source

Instances

class Neg a whereSource

Methods

neg :: a -> CodeGen e s ()Source

Instances

class Rol a b whereSource

Methods

rol :: a -> b -> CodeGen e s ()Source

class Ror a b whereSource

Methods

ror :: a -> b -> CodeGen e s ()Source

class Rcl a b whereSource

Methods

rcl :: a -> b -> CodeGen e s ()Source

class Rcr a b whereSource

Methods

rcr :: a -> b -> CodeGen e s ()Source

class Shl a b whereSource

Methods

shl :: a -> b -> CodeGen e s ()Source

class Shr a b whereSource

Methods

shr :: a -> b -> CodeGen e s ()Source

class Sar a b whereSource

Methods

sar :: a -> b -> CodeGen e s ()Source

class Sal a b whereSource

Methods

sal :: a -> b -> CodeGen e s ()Source

class Shrd a b c whereSource

Methods

shrd :: a -> b -> c -> CodeGen e s ()Source

class Shld a b c whereSource

Methods

shld :: a -> b -> c -> CodeGen e s ()Source

class Mul a whereSource

Methods

mul :: a -> CodeGen e s ()Source

Instances

class Div a whereSource

Methods

div :: a -> CodeGen e s ()Source

Instances

class Idiv a whereSource

Methods

idiv :: a -> CodeGen e s ()Source

Instances

class Mov a b whereSource

Methods

mov :: a -> b -> CodeGen e s ()Source

Instances

Mov Ind Word8 
Mov Ind Word16 
Mov Ind Word32 
Mov Ind Label 
Mov Ind Reg32 
Mov Ind Reg16 
Mov Ind Reg8 
Mov Addr Word8 
Mov Addr Word16 
Mov Addr Word32 
Mov Addr Label 
Mov Addr Reg32 
Mov Addr Reg16 
Mov Addr Reg8 
Mov Reg32 Word32 
Mov Reg32 Label 
Mov Reg32 Ind 
Mov Reg32 Addr 
Mov Reg32 Reg32 
Mov Reg16 Ind 
Mov Reg16 Addr 
Mov Reg16 Reg16 
Mov Reg8 Ind 
Mov Reg8 Addr 
Mov Reg8 Reg8 
Mov Reg32 (Disp, Reg32) 
Mov Reg16 (Disp, Reg32) 
Mov Reg8 (Disp, Reg32) 
Mov Reg32 (Disp, Reg32, Scale) 
Mov Reg32 (Reg32, Reg32, Scale) 
Mov Reg16 (Disp, Reg32, Scale) 
Mov Reg16 (Reg32, Reg32, Scale) 
Mov Reg8 (Disp, Reg32, Scale) 
Mov Reg8 (Reg32, Reg32, Scale) 
Mov Reg32 (Disp, Reg32, Reg32, Scale) 
Mov Reg16 (Disp, Reg32, Reg32, Scale) 
Mov Reg8 (Disp, Reg32, Reg32, Scale) 
Mov (Disp, Reg32) Word8 
Mov (Disp, Reg32) Word16 
Mov (Disp, Reg32) Word32 
Mov (Disp, Reg32) Label 
Mov (Disp, Reg32) Reg32 
Mov (Disp, Reg32) Reg16 
Mov (Disp, Reg32) Reg8 
Mov (Disp, Reg32, Scale) Word8 
Mov (Disp, Reg32, Scale) Word16 
Mov (Disp, Reg32, Scale) Word32 
Mov (Disp, Reg32, Scale) Label 
Mov (Disp, Reg32, Scale) Reg32 
Mov (Disp, Reg32, Scale) Reg16 
Mov (Disp, Reg32, Scale) Reg8 
Mov (Reg32, Reg32, Scale) Word8 
Mov (Reg32, Reg32, Scale) Word16 
Mov (Reg32, Reg32, Scale) Word32 
Mov (Reg32, Reg32, Scale) Label 
Mov (Reg32, Reg32, Scale) Reg32 
Mov (Reg32, Reg32, Scale) Reg16 
Mov (Reg32, Reg32, Scale) Reg8 
Mov (Disp, Reg32, Reg32, Scale) Word8 
Mov (Disp, Reg32, Reg32, Scale) Word16 
Mov (Disp, Reg32, Reg32, Scale) Word32 
Mov (Disp, Reg32, Reg32, Scale) Label 
Mov (Disp, Reg32, Reg32, Scale) Reg32 
Mov (Disp, Reg32, Reg32, Scale) Reg16 
Mov (Disp, Reg32, Reg32, Scale) Reg8 

class Lea a b whereSource

Methods

lea :: a -> b -> CodeGen e s ()Source

class Pop a whereSource

Methods

pop :: a -> CodeGen e s ()Source

Instances

class Jmp a whereSource

Methods

jmp :: a -> CodeGen e s ()Source

class Ja a whereSource

Methods

ja :: a -> CodeGen e s ()Source

Instances

class Jae a whereSource

Methods

jae :: a -> CodeGen e s ()Source

Instances

class Jb a whereSource

Methods

jb :: a -> CodeGen e s ()Source

Instances

class Jbe a whereSource

Methods

jbe :: a -> CodeGen e s ()Source

Instances

class Jc a whereSource

Methods

jc :: a -> CodeGen e s ()Source

Instances

class Je a whereSource

Methods

je :: a -> CodeGen e s ()Source

Instances

class Jna a whereSource

Methods

jna :: a -> CodeGen e s ()Source

Instances

class Jnae a whereSource

Methods

jnae :: a -> CodeGen e s ()Source

class Jnb a whereSource

Methods

jnb :: a -> CodeGen e s ()Source

Instances

class Jnbe a whereSource

Methods

jnbe :: a -> CodeGen e s ()Source

class Jnc a whereSource

Methods

jnc :: a -> CodeGen e s ()Source

Instances

class Jne a whereSource

Methods

jne :: a -> CodeGen e s ()Source

Instances

class Jnp a whereSource

Methods

jnp :: a -> CodeGen e s ()Source

Instances

class Jnz a whereSource

Methods

jnz :: a -> CodeGen e s ()Source

Instances

class Jp a whereSource

Methods

jp :: a -> CodeGen e s ()Source

Instances

class Jpe a whereSource

Methods

jpe :: a -> CodeGen e s ()Source

Instances

class Jpo a whereSource

Methods

jpo :: a -> CodeGen e s ()Source

Instances

class Jz a whereSource

Methods

jz :: a -> CodeGen e s ()Source

Instances

class Jg a whereSource

Methods

jg :: a -> CodeGen e s ()Source

Instances

class Jge a whereSource

Methods

jge :: a -> CodeGen e s ()Source

Instances

class Jl a whereSource

Methods

jl :: a -> CodeGen e s ()Source

Instances

class Jle a whereSource

Methods

jle :: a -> CodeGen e s ()Source

Instances

class Jng a whereSource

Methods

jng :: a -> CodeGen e s ()Source

Instances

class Jnge a whereSource

Methods

jnge :: a -> CodeGen e s ()Source

class Jnl a whereSource

Methods

jnl :: a -> CodeGen e s ()Source

Instances

class Jnle a whereSource

Methods

jnle :: a -> CodeGen e s ()Source

class Jno a whereSource

Methods

jno :: a -> CodeGen e s ()Source

Instances

class Jns a whereSource

Methods

jns :: a -> CodeGen e s ()Source

Instances

class Jo a whereSource

Methods

jo :: a -> CodeGen e s ()Source

Instances

class Js a whereSource

Methods

js :: a -> CodeGen e s ()Source

Instances

class Seta a whereSource

Methods

seta :: a -> CodeGen e s ()Source

Instances

class Setae a whereSource

Methods

setae :: a -> CodeGen e s ()Source

class Setb a whereSource

Methods

setb :: a -> CodeGen e s ()Source

Instances

class Setbe a whereSource

Methods

setbe :: a -> CodeGen e s ()Source

class Setc a whereSource

Methods

setc :: a -> CodeGen e s ()Source

Instances

class Sete a whereSource

Methods

sete :: a -> CodeGen e s ()Source

Instances

class Setna a whereSource

Methods

setna :: a -> CodeGen e s ()Source

class Setnae a whereSource

Methods

setnae :: a -> CodeGen e s ()Source

class Setnb a whereSource

Methods

setnb :: a -> CodeGen e s ()Source

class Setnbe a whereSource

Methods

setnbe :: a -> CodeGen e s ()Source

class Setnc a whereSource

Methods

setnc :: a -> CodeGen e s ()Source

class Setne a whereSource

Methods

setne :: a -> CodeGen e s ()Source

class Setnp a whereSource

Methods

setnp :: a -> CodeGen e s ()Source

class Setnz a whereSource

Methods

setnz :: a -> CodeGen e s ()Source

class Setp a whereSource

Methods

setp :: a -> CodeGen e s ()Source

Instances

class Setpe a whereSource

Methods

setpe :: a -> CodeGen e s ()Source

class Setpo a whereSource

Methods

setpo :: a -> CodeGen e s ()Source

class Setg a whereSource

Methods

setg :: a -> CodeGen e s ()Source

Instances

class Setge a whereSource

Methods

setge :: a -> CodeGen e s ()Source

class Setl a whereSource

Methods

setl :: a -> CodeGen e s ()Source

Instances

class Setle a whereSource

Methods

setle :: a -> CodeGen e s ()Source

class Setng a whereSource

Methods

setng :: a -> CodeGen e s ()Source

class Setnge a whereSource

Methods

setnge :: a -> CodeGen e s ()Source

class Setnl a whereSource

Methods

setnl :: a -> CodeGen e s ()Source

class Setnle a whereSource

Methods

setnle :: a -> CodeGen e s ()Source

class Setno a whereSource

Methods

setno :: a -> CodeGen e s ()Source

class Setns a whereSource

Methods

setns :: a -> CodeGen e s ()Source

class Seto a whereSource

Methods

seto :: a -> CodeGen e s ()Source

Instances

class Sets a whereSource

Methods

sets :: a -> CodeGen e s ()Source

Instances

class Setz a whereSource

Methods

setz :: a -> CodeGen e s ()Source

Instances

class Call a whereSource

Methods

call :: a -> CodeGen e s ()Source

class Cmova a b whereSource

Methods

cmova :: a -> b -> CodeGen e s ()Source

class Cmovae a b whereSource

Methods

cmovae :: a -> b -> CodeGen e s ()Source

class Cmovb a b whereSource

Methods

cmovb :: a -> b -> CodeGen e s ()Source

class Cmovbe a b whereSource

Methods

cmovbe :: a -> b -> CodeGen e s ()Source

class Cmovc a b whereSource

Methods

cmovc :: a -> b -> CodeGen e s ()Source

class Cmove a b whereSource

Methods

cmove :: a -> b -> CodeGen e s ()Source

class Cmovna a b whereSource

Methods

cmovna :: a -> b -> CodeGen e s ()Source

class Cmovnae a b whereSource

Methods

cmovnae :: a -> b -> CodeGen e s ()Source

class Cmovnb a b whereSource

Methods

cmovnb :: a -> b -> CodeGen e s ()Source

class Cmovnbe a b whereSource

Methods

cmovnbe :: a -> b -> CodeGen e s ()Source

class Cmovnc a b whereSource

Methods

cmovnc :: a -> b -> CodeGen e s ()Source

class Cmovne a b whereSource

Methods

cmovne :: a -> b -> CodeGen e s ()Source

class Cmovnp a b whereSource

Methods

cmovnp :: a -> b -> CodeGen e s ()Source

class Cmovnz a b whereSource

Methods

cmovnz :: a -> b -> CodeGen e s ()Source

class Cmovp a b whereSource

Methods

cmovp :: a -> b -> CodeGen e s ()Source

class Cmovpe a b whereSource

Methods

cmovpe :: a -> b -> CodeGen e s ()Source

class Cmovpo a b whereSource

Methods

cmovpo :: a -> b -> CodeGen e s ()Source

class Cmovz a b whereSource

Methods

cmovz :: a -> b -> CodeGen e s ()Source

class Cmovg a b whereSource

Methods

cmovg :: a -> b -> CodeGen e s ()Source

class Cmovge a b whereSource

Methods

cmovge :: a -> b -> CodeGen e s ()Source

class Cmovl a b whereSource

Methods

cmovl :: a -> b -> CodeGen e s ()Source

class Cmovle a b whereSource

Methods

cmovle :: a -> b -> CodeGen e s ()Source

class Cmovng a b whereSource

Methods

cmovng :: a -> b -> CodeGen e s ()Source

class Cmovnge a b whereSource

Methods

cmovnge :: a -> b -> CodeGen e s ()Source

class Cmovnl a b whereSource

Methods

cmovnl :: a -> b -> CodeGen e s ()Source

class Cmovnle a b whereSource

Methods

cmovnle :: a -> b -> CodeGen e s ()Source

class Cmovno a b whereSource

Methods

cmovno :: a -> b -> CodeGen e s ()Source

class Cmovns a b whereSource

Methods

cmovns :: a -> b -> CodeGen e s ()Source

class Cmovo a b whereSource

Methods

cmovo :: a -> b -> CodeGen e s ()Source

class Cmovs a b whereSource

Methods

cmovs :: a -> b -> CodeGen e s ()Source

class Fadd a b whereSource

Methods

fadd :: a -> b -> CodeGen e s ()Source

class Fsub a b whereSource

Methods

fsub :: a -> b -> CodeGen e s ()Source

class Fsubr a b whereSource

Methods

fsubr :: a -> b -> CodeGen e s ()Source

class Fmul a b whereSource

Methods

fmul :: a -> b -> CodeGen e s ()Source

class Fdiv a b whereSource

Methods

fdiv :: a -> b -> CodeGen e s ()Source

class Fdivr a b whereSource

Methods

fdivr :: a -> b -> CodeGen e s ()Source

class Fcom a b whereSource

Methods

fcom :: a -> b -> CodeGen e s ()Source

class Fcomp a b whereSource

Methods

fcomp :: a -> b -> CodeGen e s ()Source

class Fld a b whereSource

Methods

fld :: a -> b -> CodeGen e s ()Source

class Fld80 a b whereSource

Methods

fld80 :: a -> b -> CodeGen e s ()Source

class Fst a whereSource

Methods

fst :: a -> CodeGen e s ()Source

Instances

class Fstp a whereSource

Methods

fstp :: a -> CodeGen e s ()Source

Instances

class Fst80 a whereSource

Methods

fst80 :: a -> CodeGen e s ()Source

Instances

class Fnstcw a whereSource

Methods

fnstcw :: a -> CodeGen e s ()Source

class Fldcw a whereSource

Methods

fldcw :: a -> CodeGen e s ()Source

Instances

class Fild a whereSource

Methods

fild :: a -> CodeGen e s ()Source

Instances

class Fist a whereSource

Methods

fist :: a -> CodeGen e s ()Source

Instances

class Fistp a whereSource

Methods

fistp :: a -> CodeGen e s ()Source

Instances

class Sqrtsd a b whereSource

Methods

sqrtsd :: a -> b -> CodeGen e s ()Source

class Sqrtss a b whereSource

Methods

sqrtss :: a -> b -> CodeGen e s ()Source

class Sqrtpd a b whereSource

Methods

sqrtpd :: a -> b -> CodeGen e s ()Source

class Sqrtps a b whereSource

Methods

sqrtps :: a -> b -> CodeGen e s ()Source

class Addsd a b whereSource

Methods

addsd :: a -> b -> CodeGen e s ()Source

class Addss a b whereSource

Methods

addss :: a -> b -> CodeGen e s ()Source

class Addpd a b whereSource

Methods

addpd :: a -> b -> CodeGen e s ()Source

class Addps a b whereSource

Methods

addps :: a -> b -> CodeGen e s ()Source

class Subsd a b whereSource

Methods

subsd :: a -> b -> CodeGen e s ()Source

class Subss a b whereSource

Methods

subss :: a -> b -> CodeGen e s ()Source

class Subpd a b whereSource

Methods

subpd :: a -> b -> CodeGen e s ()Source

class Subps a b whereSource

Methods

subps :: a -> b -> CodeGen e s ()Source

class Mulsd a b whereSource

Methods

mulsd :: a -> b -> CodeGen e s ()Source

class Mulss a b whereSource

Methods

mulss :: a -> b -> CodeGen e s ()Source

class Mulpd a b whereSource

Methods

mulpd :: a -> b -> CodeGen e s ()Source

class Mulps a b whereSource

Methods

mulps :: a -> b -> CodeGen e s ()Source

class Divsd a b whereSource

Methods

divsd :: a -> b -> CodeGen e s ()Source

class Divss a b whereSource

Methods

divss :: a -> b -> CodeGen e s ()Source

class Divpd a b whereSource

Methods

divpd :: a -> b -> CodeGen e s ()Source

class Divps a b whereSource

Methods

divps :: a -> b -> CodeGen e s ()Source

class Minsd a b whereSource

Methods

minsd :: a -> b -> CodeGen e s ()Source

class Minss a b whereSource

Methods

minss :: a -> b -> CodeGen e s ()Source

class Minpd a b whereSource

Methods

minpd :: a -> b -> CodeGen e s ()Source

class Minps a b whereSource

Methods

minps :: a -> b -> CodeGen e s ()Source

class Maxsd a b whereSource

Methods

maxsd :: a -> b -> CodeGen e s ()Source

class Maxss a b whereSource

Methods

maxss :: a -> b -> CodeGen e s ()Source

class Maxpd a b whereSource

Methods

maxpd :: a -> b -> CodeGen e s ()Source

class Maxps a b whereSource

Methods

maxps :: a -> b -> CodeGen e s ()Source

class Comisd a b whereSource

Methods

comisd :: a -> b -> CodeGen e s ()Source

class Comiss a b whereSource

Methods

comiss :: a -> b -> CodeGen e s ()Source

class Prefetch0 a whereSource

Methods

prefetch0 :: a -> CodeGen e s ()Source

class Prefetch1 a whereSource

Methods

prefetch1 :: a -> CodeGen e s ()Source

class Prefetch2 a whereSource

Methods

prefetch2 :: a -> CodeGen e s ()Source