|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object scale.backend.x86.Opcodes
public final class Opcodes
The Intel X86 opcodes.
$Id$
Copyright 2008 by James H. Burrill
All Rights Reserved.
Field Summary | |
---|---|
static int |
AAA
|
static int |
AAD
|
static int |
AAM
|
static int |
AAS
|
static int |
ADC
|
static int |
ADD
|
static int |
AND
|
static int |
ARPL
|
static int |
BOUND
|
static int |
BSF
|
static int |
BSR
|
static int |
BSWAP
|
static int |
BT
|
static int |
BTC
|
static int |
BTR
|
static int |
BTS
|
static int |
CALL
|
static int |
CBW
|
static int |
CDQ
|
static int |
CLC
|
static int |
CLD
|
static int |
CLI
|
static int |
CLTS
|
static int |
CMC
|
static int |
CMOVA
|
static int |
CMOVAE
|
static int |
CMOVB
|
static int |
CMOVBE
|
static int |
CMOVC
|
static int |
CMOVE
|
static int |
CMOVG
|
static int |
CMOVGE
|
static int |
CMOVL
|
static int |
CMOVLE
|
static int |
CMOVNA
|
static int |
CMOVNAE
|
static int |
CMOVNB
|
static int |
CMOVNBE
|
static int |
CMOVNC
|
static int |
CMOVNE
|
static int |
CMOVNG
|
static int |
CMOVNGE
|
static int |
CMOVNL
|
static int |
CMOVNLE
|
static int |
CMOVNO
|
static int |
CMOVNP
|
static int |
CMOVNS
|
static int |
CMOVNZ
|
static int |
CMOVO
|
static int |
CMOVP
|
static int |
CMOVPE
|
static int |
CMOVPO
|
static int |
CMOVS
|
static int |
CMOVZ
|
static int |
CMP
|
static int |
CMPSB
|
static int |
CMPSD
|
static int |
CMPSW
|
static int |
CMPXCHG
|
static int |
CMPXCHG8B
|
static int |
CPUID
|
static int |
CWD
|
static int |
CWDE
|
static int |
DAA
|
static int |
DAS
|
static int |
DEC
|
static int |
DIV
|
static int |
EMMS
|
static int |
ENTER
|
static int |
F_ARTH
|
static int |
F_BRANCH
Branch instruction flag. |
static int |
F_CALL
|
static int |
F_D
Valid form has a descriptor operand. |
static int |
F_NONE
Valid form has no operands. |
static int |
F_R
Valid form has one register operand. |
static int |
F_RD
Valid form has a register operand and a descriptor operand. |
static int |
F_REV
Operands are reversed flag. |
static int |
F_RR
Valid form has two register operands. |
static int |
F_RRD
Valid form has two register operands and a descriptor operand. |
static int |
F_RRR
Valid form has three register operands. |
static int |
F_RRRD
Valid form has three register operands and a descriptor operand. |
static int |
F_SHFT
|
static int |
F2XM1
|
static int |
FABS
|
static int |
FADD
|
static int |
FADDP
|
static int |
FBLD
|
static int |
FBSTP
|
static int |
FCHS
|
static int |
FCLEX
|
static int |
FCMOVB
|
static int |
FCMOVBE
|
static int |
FCMOVE
|
static int |
FCMOVNB
|
static int |
FCMOVNBE
|
static int |
FCMOVNE
|
static int |
FCMOVNU
|
static int |
FCMOVU
|
static int |
FCOM
|
static int |
FCOMI
|
static int |
FCOMIP
|
static int |
FCOMP
|
static int |
FCOMPP
|
static int |
FCOS
|
static int |
FDECSTP
|
static int |
FDIV
|
static int |
FDIVP
|
static int |
FDIVR
|
static int |
FDIVRP
|
static int |
FFREE
|
static int |
FIADD
|
static int |
FICOM
|
static int |
FICOMP
|
static int |
FIDIV
|
static int |
FIDIVR
|
static int |
FILD
|
static int |
FIMUL
|
static int |
FINCSTP
|
static int |
FINIT
|
static int |
FIST
|
static int |
FISTP
|
static int |
FISUB
|
static int |
FISUBR
|
static int |
FLD
|
static int |
FLD1
|
static int |
FLDCW
|
static int |
FLDENV
|
static int |
FLDL2E
|
static int |
FLDL2T
|
static int |
FLDLG2
|
static int |
FLDLN2
|
static int |
FLDPI
|
static int |
FLDZ
|
static int |
FMUL
|
static int |
FMULP
|
static int |
FNCLEX
|
static int |
FNINIT
|
static int |
FNOP
|
static int |
FNSAVE
|
static int |
FNSTCW
|
static int |
FNSTENV
|
static int |
FNSTSW
|
static int |
FPATAN
|
static int |
FPREM
|
static int |
FPREMI
|
static int |
FPTAN
|
static int |
FRNDINT
|
static int |
FRSTOR
|
static int |
FSAVE
|
static int |
FSCALE
|
static int |
FSIN
|
static int |
FSINCOS
|
static int |
FSQRT
|
static int |
FST
|
static int |
FSTCW
|
static int |
FSTENV
|
static int |
FSTP
|
static int |
FSTSW
|
static int |
FSUB
|
static int |
FSUBP
|
static int |
FSUBR
|
static int |
FSUBRP
|
static int |
FTST
|
static int |
FUCOM
|
static int |
FUCOMI
|
static int |
FUCOMIP
|
static int |
FUCOMP
|
static int |
FUCOMPP
|
static int |
FWAIT
|
static int |
FXAM
|
static int |
FXCH
|
static int |
FXTRACT
|
static int |
FYL2X
|
static int |
FYL2XP1
|
static int |
HLT
|
static int |
IDIV
|
static int |
IMUL
|
static int |
IN
|
static int |
INC
|
static int |
INSB
|
static int |
INSD
|
static int |
INSW
|
static int |
INT
|
static int |
INTO
|
static int |
INVD
|
static int |
INVLPG
|
static int |
IRET
|
static int |
JA
|
static int |
JAE
|
static int |
JB
|
static int |
JBE
|
static int |
JC
|
static int |
JCXZ
|
static int |
JE
|
static int |
JECXZ
|
static int |
JG
|
static int |
JGE
|
static int |
JL
|
static int |
JLE
|
static int |
JMP
|
static int |
JNA
|
static int |
JNAE
|
static int |
JNB
|
static int |
JNBE
|
static int |
JNC
|
static int |
JNE
|
static int |
JNG
|
static int |
JNGE
|
static int |
JNL
|
static int |
JNLE
|
static int |
JNO
|
static int |
JNP
|
static int |
JNS
|
static int |
JNZ
|
static int |
JO
|
static int |
JP
|
static int |
JPE
|
static int |
JPO
|
static int |
JS
|
static int |
JZ
|
static int |
LAHF
|
static int |
LAR
|
static int |
LDCR
|
static int |
LDDR
|
static int |
LDS
|
static int |
LEA
|
static int |
LEAVE
|
static int |
LES
|
static int |
LFS
|
static int |
LGDT
|
static int |
LGS
|
static int |
LIDT
|
static int |
LLDT
|
static int |
LMSW
|
static int |
LOCK
|
static int |
LODSB
|
static int |
LODSD
|
static int |
LODSW
|
static int |
LOOP
|
static int |
LOOPE
|
static int |
LOOPNE
|
static int |
LOOPNZ
|
static int |
LOOPZ
|
static int |
LSL
|
static int |
LSS
|
static int |
LTR
|
static int |
M_EIGHT
Scaling factor - 8. |
static int |
M_FOUR
Scaling factor - 4. |
static int |
M_MASK
Mask for the scaling factor used in some addressing modes.. |
static int |
M_ONE
Scaling factor - 1. |
static int |
M_SHIFT
Shift for the scaling factor used in some addressing modes.. |
static int |
M_TWO
Scaling factor - 2. |
static int |
MOV
|
static int |
MOVD
|
static int |
MOVQ
|
static int |
MOVSB
|
static int |
MOVSD
|
static int |
MOVSW
|
static int |
MOVSX
|
static int |
MOVZX
|
static int |
MUL
|
static int |
NEG
|
static int |
NOP
|
static int |
NOT
|
static int |
O_MASK
Mask for the instruction opcode. |
static int |
O_SHIFT
Mask for the instruction opcode. |
static java.lang.String[] |
opnames
|
static int |
OR
|
static int |
OUT
|
static int |
OUTSB
|
static int |
OUTSD
|
static int |
OUTSW
|
static int |
PACKSSDW
|
static int |
PACKSSWB
|
static int |
PACKUSWB
|
static int |
PADDB
|
static int |
PADDD
|
static int |
PADDSB
|
static int |
PADDSW
|
static int |
PADDUSB
|
static int |
PADDUSW
|
static int |
PADDW
|
static int |
PAND
|
static int |
PANDN
|
static int |
PCMPEQB
|
static int |
PCMPEQD
|
static int |
PCMPEQW
|
static int |
PCMPGTB
|
static int |
PCMPGTD
|
static int |
PCMPGTW
|
static int |
PMADDWD
|
static int |
PMULHW
|
static int |
PMULLW
|
static int |
POP
|
static int |
POPA
|
static int |
POPAD
|
static int |
POPF
|
static int |
POPFD
|
static int |
POR
|
static int |
PSLLD
|
static int |
PSLLQ
|
static int |
PSLLW
|
static int |
PSRAD
|
static int |
PSRAW
|
static int |
PSRLD
|
static int |
PSRLQ
|
static int |
PSRLW
|
static int |
PSUBB
|
static int |
PSUBD
|
static int |
PSUBSB
|
static int |
PSUBSW
|
static int |
PSUBUSB
|
static int |
PSUBUSW
|
static int |
PSUBW
|
static int |
PUNPCKHBW
|
static int |
PUNPCKHDQ
|
static int |
PUNPCKHWD
|
static int |
PUNPCKLBW
|
static int |
PUNPCKLDQ
|
static int |
PUNPCKLWD
|
static int |
PUSH
|
static int |
PUSHA
|
static int |
PUSHAD
|
static int |
PUSHF
|
static int |
PUSHFD
|
static int |
PXOR
|
static int |
RCL
|
static int |
RCR
|
static int |
RDMSR
|
static int |
RDPMC
|
static int |
RDTSC
|
static int |
REP
|
static int |
REPE
|
static int |
REPNE
|
static int |
REPNZ
|
static int |
REPZ
|
static int |
RET
|
static int |
ROL
|
static int |
ROR
|
static int |
RSM
|
static int |
S_BYTE
Operand size - byte. |
static int |
S_INT
Operand size - int. |
static int |
S_LONG
Operand size - LONG. |
static int |
S_MASK
Mask for the operand size. |
static int |
S_SHIFT
Shift for the operand size. |
static int |
S_SHORT
Operand size - short. |
static int |
SAHF
|
static int |
SAL
|
static int |
SAR
|
static int |
SBB
|
static int |
SCASB
|
static int |
SCASD
|
static int |
SCASW
|
static int |
SETA
|
static int |
SETAE
|
static int |
SETB
|
static int |
SETBE
|
static int |
SETC
|
static int |
SETE
|
static int |
SETG
|
static int |
SETGE
|
static int |
SETL
|
static int |
SETLE
|
static int |
SETNA
|
static int |
SETNAE
|
static int |
SETNB
|
static int |
SETNBE
|
static int |
SETNC
|
static int |
SETNE
|
static int |
SETNG
|
static int |
SETNGE
|
static int |
SETNL
|
static int |
SETNLE
|
static int |
SETNO
|
static int |
SETNP
|
static int |
SETNS
|
static int |
SETNZ
|
static int |
SETO
|
static int |
SETP
|
static int |
SETPE
|
static int |
SETPO
|
static int |
SETS
|
static int |
SETZ
|
static int |
SGDT
|
static int |
SHL
|
static int |
SHLD
|
static int |
SHR
|
static int |
SHRD
|
static int |
SIDT
|
static int |
SLDT
|
static int |
SMSW
|
static int |
STC
|
static int |
STCR
|
static int |
STD
|
static int |
STDR
|
static int |
STI
|
static int |
STOSB
|
static int |
STOSD
|
static int |
STOSW
|
static int |
STR
|
static int |
SUB
|
static int |
TEST
|
static int |
UB2
|
static int |
UN00
|
static int |
UN01
|
static int |
UN02
|
static int |
UN03
|
static int |
UN04
|
static int |
UN05
|
static int |
UN06
|
static int |
UN07
|
static int |
UN08
|
static int |
UN09
|
static int |
UN10
|
static int |
UN11
|
static int |
UN12
|
static int |
UN13
|
static int |
UN14
|
static int |
UN15
|
static int |
UN16
|
static int |
UN17
|
static int |
UN18
|
static int |
UN19
|
static int |
UN20
|
static int |
VERR
|
static int |
VERW
|
static int |
WAIT
|
static int |
WBINVD
|
static int |
WRMSR
|
static int |
XADD
|
static int |
XCHG
|
static int |
XLAT
|
static int |
XLATB
|
static int |
XOR
|
Constructor Summary | |
---|---|
Opcodes()
|
Method Summary | |
---|---|
static java.lang.String |
getOp(int opcode)
Return the symbolic string for the instruction. |
static java.lang.String |
getOp(X86Branch inst)
Return the symbolic string for the instruction. |
static java.lang.String |
getOp(X86Instruction inst)
Return the symbolic string for the instruction. |
static int |
getOperandSize(int opcode)
Return 1, 2, 4, or 8 depending on the size of the operand, in bytes, specified for the instruction. |
static char |
getOperandSizeLabel(int opcode)
Return 'b', 'w', 'l', or 'x' depending on the size of the operand specified for the instruction. |
static int |
getScale(int opcode)
Return 1, 2, 4, or 8 depending on the scale factor specified for the instruction. |
static int |
setOperandSize(int opcode,
int size)
Set the operand size specified for the instruction. |
static int |
setScale(int opcode,
int scale)
Set the scale factor specified for the instruction. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int O_MASK
public static final int O_SHIFT
public static final int S_MASK
public static final int S_SHIFT
public static final int S_BYTE
public static final int S_SHORT
public static final int S_INT
public static final int S_LONG
public static final int M_MASK
public static final int M_SHIFT
public static final int M_ONE
public static final int M_TWO
public static final int M_FOUR
public static final int M_EIGHT
public static final int F_NONE
public static final int F_R
public static final int F_RR
public static final int F_RRR
public static final int F_D
public static final int F_RD
public static final int F_RRD
public static final int F_RRRD
public static final int F_BRANCH
public static final int F_REV
public static final int F_SHFT
public static final int F_ARTH
public static final int F_CALL
public static final int MOV
public static final int CMOVE
public static final int CMOVZ
public static final int CMOVNE
public static final int CMOVNZ
public static final int CMOVA
public static final int CMOVNBE
public static final int CMOVAE
public static final int CMOVNB
public static final int CMOVB
public static final int CMOVNAE
public static final int CMOVBE
public static final int CMOVNA
public static final int CMOVG
public static final int CMOVNLE
public static final int CMOVGE
public static final int CMOVNL
public static final int CMOVL
public static final int CMOVNGE
public static final int CMOVLE
public static final int CMOVNG
public static final int CMOVC
public static final int CMOVNC
public static final int CMOVO
public static final int CMOVNO
public static final int CMOVS
public static final int CMOVNS
public static final int CMOVP
public static final int CMOVPE
public static final int CMOVNP
public static final int CMOVPO
public static final int XCHG
public static final int BSWAP
public static final int XADD
public static final int CMPXCHG
public static final int CMPXCHG8B
public static final int PUSH
public static final int POP
public static final int PUSHA
public static final int PUSHAD
public static final int POPA
public static final int POPAD
public static final int IN
public static final int OUT
public static final int CWD
public static final int CDQ
public static final int CBW
public static final int CWDE
public static final int MOVSX
public static final int MOVZX
public static final int ADD
public static final int ADC
public static final int SUB
public static final int SBB
public static final int IMUL
public static final int MUL
public static final int IDIV
public static final int DIV
public static final int INC
public static final int DEC
public static final int NEG
public static final int CMP
public static final int DAA
public static final int DAS
public static final int AAA
public static final int AAS
public static final int AAM
public static final int AAD
public static final int AND
public static final int OR
public static final int XOR
public static final int NOT
public static final int SAR
public static final int SHR
public static final int SAL
public static final int SHL
public static final int SHRD
public static final int SHLD
public static final int ROR
public static final int ROL
public static final int RCR
public static final int RCL
public static final int BT
public static final int BTS
public static final int BTR
public static final int BTC
public static final int BSF
public static final int BSR
public static final int SETE
public static final int SETZ
public static final int SETNE
public static final int SETNZ
public static final int SETA
public static final int SETNBE
public static final int SETAE
public static final int SETNB
public static final int SETNC
public static final int SETB
public static final int SETNAE
public static final int SETC
public static final int SETBE
public static final int SETNA
public static final int SETG
public static final int SETNLE
public static final int SETGE
public static final int SETNL
public static final int SETL
public static final int SETNGE
public static final int SETLE
public static final int SETNG
public static final int SETS
public static final int SETNS
public static final int SETO
public static final int SETNO
public static final int SETPE
public static final int SETP
public static final int SETPO
public static final int SETNP
public static final int TEST
public static final int JMP
public static final int JE
public static final int JZ
public static final int JNE
public static final int JNZ
public static final int JA
public static final int JNBE
public static final int JAE
public static final int JNB
public static final int JB
public static final int JNAE
public static final int JBE
public static final int JNA
public static final int JG
public static final int JNLE
public static final int JGE
public static final int JNL
public static final int JL
public static final int JNGE
public static final int JLE
public static final int JNG
public static final int JC
public static final int JNC
public static final int JO
public static final int JNO
public static final int JS
public static final int JNS
public static final int JPO
public static final int JNP
public static final int JPE
public static final int JP
public static final int JCXZ
public static final int JECXZ
public static final int LOOP
public static final int LOOPZ
public static final int LOOPE
public static final int LOOPNZ
public static final int LOOPNE
public static final int CALL
public static final int RET
public static final int IRET
public static final int INT
public static final int INTO
public static final int BOUND
public static final int ENTER
public static final int LEAVE
public static final int UN00
public static final int MOVSB
public static final int UN01
public static final int MOVSW
public static final int UN02
public static final int MOVSD
public static final int UN03
public static final int CMPSB
public static final int UN04
public static final int CMPSW
public static final int UN05
public static final int CMPSD
public static final int UN06
public static final int SCASB
public static final int UN07
public static final int SCASW
public static final int UN08
public static final int SCASD
public static final int UN09
public static final int LODSB
public static final int UN10
public static final int LODSW
public static final int UN11
public static final int LODSD
public static final int UN12
public static final int STOSB
public static final int UN13
public static final int STOSW
public static final int UN14
public static final int STOSD
public static final int REP
public static final int REPE
public static final int REPZ
public static final int REPNE
public static final int REPNZ
public static final int UN15
public static final int INSB
public static final int UN16
public static final int INSW
public static final int UN17
public static final int INSD
public static final int UN18
public static final int OUTSB
public static final int UN19
public static final int OUTSW
public static final int UN20
public static final int OUTSD
public static final int STC
public static final int CLC
public static final int CMC
public static final int CLD
public static final int STD
public static final int LAHF
public static final int SAHF
public static final int PUSHF
public static final int PUSHFD
public static final int POPF
public static final int POPFD
public static final int STI
public static final int CLI
public static final int LDS
public static final int LES
public static final int LFS
public static final int LGS
public static final int LSS
public static final int LEA
public static final int NOP
public static final int UB2
public static final int XLAT
public static final int XLATB
public static final int CPUID
public static final int MOVD
public static final int MOVQ
public static final int PACKSSWB
public static final int PACKSSDW
public static final int PACKUSWB
public static final int PUNPCKHBW
public static final int PUNPCKHWD
public static final int PUNPCKHDQ
public static final int PUNPCKLBW
public static final int PUNPCKLWD
public static final int PUNPCKLDQ
public static final int PADDB
public static final int PADDW
public static final int PADDD
public static final int PADDSB
public static final int PADDSW
public static final int PADDUSB
public static final int PADDUSW
public static final int PSUBB
public static final int PSUBW
public static final int PSUBD
public static final int PSUBSB
public static final int PSUBSW
public static final int PSUBUSB
public static final int PSUBUSW
public static final int PMULHW
public static final int PMULLW
public static final int PMADDWD
public static final int PCMPEQB
public static final int PCMPEQW
public static final int PCMPEQD
public static final int PCMPGTB
public static final int PCMPGTW
public static final int PCMPGTD
public static final int PAND
public static final int PANDN
public static final int POR
public static final int PXOR
public static final int PSLLW
public static final int PSLLD
public static final int PSLLQ
public static final int PSRLW
public static final int PSRLD
public static final int PSRLQ
public static final int PSRAW
public static final int PSRAD
public static final int EMMS
public static final int FLD
public static final int FST
public static final int FSTP
public static final int FILD
public static final int FIST
public static final int FISTP
public static final int FBLD
public static final int FBSTP
public static final int FXCH
public static final int FCMOVE
public static final int FCMOVNE
public static final int FCMOVB
public static final int FCMOVBE
public static final int FCMOVNB
public static final int FCMOVNBE
public static final int FCMOVU
public static final int FCMOVNU
public static final int FADD
public static final int FADDP
public static final int FIADD
public static final int FSUB
public static final int FSUBP
public static final int FISUB
public static final int FSUBR
public static final int FSUBRP
public static final int FISUBR
public static final int FMUL
public static final int FMULP
public static final int FIMUL
public static final int FDIV
public static final int FDIVP
public static final int FIDIV
public static final int FDIVR
public static final int FDIVRP
public static final int FIDIVR
public static final int FPREM
public static final int FPREMI
public static final int FABS
public static final int FCHS
public static final int FRNDINT
public static final int FSCALE
public static final int FSQRT
public static final int FXTRACT
public static final int FCOM
public static final int FCOMP
public static final int FCOMPP
public static final int FUCOM
public static final int FUCOMP
public static final int FUCOMPP
public static final int FICOM
public static final int FICOMP
public static final int FCOMI
public static final int FUCOMI
public static final int FCOMIP
public static final int FUCOMIP
public static final int FTST
public static final int FXAM
public static final int FSIN
public static final int FCOS
public static final int FSINCOS
public static final int FPTAN
public static final int FPATAN
public static final int F2XM1
public static final int FYL2X
public static final int FYL2XP1
public static final int FLD1
public static final int FLDZ
public static final int FLDPI
public static final int FLDL2E
public static final int FLDLN2
public static final int FLDL2T
public static final int FLDLG2
public static final int FINCSTP
public static final int FDECSTP
public static final int FFREE
public static final int FINIT
public static final int FNINIT
public static final int FCLEX
public static final int FNCLEX
public static final int FSTCW
public static final int FNSTCW
public static final int FLDCW
public static final int FSTENV
public static final int FNSTENV
public static final int FLDENV
public static final int FSAVE
public static final int FNSAVE
public static final int FRSTOR
public static final int FSTSW
public static final int FNSTSW
public static final int WAIT
public static final int FWAIT
public static final int FNOP
public static final int LGDT
public static final int SGDT
public static final int LLDT
public static final int SLDT
public static final int LTR
public static final int STR
public static final int LIDT
public static final int SIDT
public static final int LMSW
public static final int SMSW
public static final int CLTS
public static final int ARPL
public static final int LAR
public static final int LSL
public static final int VERR
public static final int VERW
public static final int INVD
public static final int WBINVD
public static final int INVLPG
public static final int LOCK
public static final int HLT
public static final int RSM
public static final int RDMSR
public static final int WRMSR
public static final int RDPMC
public static final int RDTSC
public static final int LDDR
public static final int STDR
public static final int LDCR
public static final int STCR
public static final java.lang.String[] opnames
Constructor Detail |
---|
public Opcodes()
Method Detail |
---|
public static java.lang.String getOp(X86Instruction inst)
public static java.lang.String getOp(X86Branch inst)
public static java.lang.String getOp(int opcode)
public static int getScale(int opcode)
public static int setScale(int opcode, int scale)
public static int getOperandSize(int opcode)
public static char getOperandSizeLabel(int opcode)
public static int setOperandSize(int opcode, int size)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |