diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2009-10-04 21:31:35 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2009-10-04 21:31:35 (GMT) |
commit | 34612ad3304e9064f38c3adce728f2a71352c981 (patch) | |
tree | 4fde28976b0c6d8700f9242b549192fe622e30cb /src/arch/x86/instruction.h | |
parent | 5d33469143778e8ab22b362b7a647f53cd6fc840 (diff) |
Supported extra x86 opcodes. Fixed a bug with two-byte opcodes.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@126 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/arch/x86/instruction.h')
-rw-r--r-- | src/arch/x86/instruction.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/arch/x86/instruction.h b/src/arch/x86/instruction.h index c190136..ad50834 100644 --- a/src/arch/x86/instruction.h +++ b/src/arch/x86/instruction.h @@ -42,11 +42,23 @@ typedef enum _X86Opcodes XOP_ADD_AL_IMM8, /* add (0x04) */ XOP_ADD_E_AX_IMM1632, /* sub ([0x66] 0x05) */ + XOP_OR_RM8_R8, /* or (0x08) */ + XOP_OR_RM1632_R1632, /* or ([0x66] 0x09) */ XOP_OR_R8_RM8, /* or (0x0a) */ + XOP_OR_R1632_RM1632, /* or ([0x66] 0x0b) */ XOP_OR_AL_IMM8, /* or (0x0c) */ + XOP_JE_REL1632, /* je ([0x66] 0x0f 0x84) */ + XOP_JNE_REL1632, /* jne ([0x66] 0x0f 0x85) */ + + XOP_JA_REL1632, /* jne ([0x66] 0x0f 0x87) */ + + XOP_JGE_REL1632, /* jge ([0x66] 0x0f 0x8d) */ XOP_JLE_REL1632, /* jle ([0x66] 0x0f 0x8e) */ + XOP_SETE_RM8, /* sete ([0x66] 0x0f 0x94) */ + XOP_SETNE_RM8, /* setne ([0x66] 0x0f 0x95) */ + XOP_MOVZX_R1632_RM8, /* movzx ([0x66] 0x0f 0xb6) */ XOP_MOVSX_R1632_RM8, /* movsx ([0x66] 0x0f 0xbe) */ @@ -240,6 +252,10 @@ typedef enum _X86Opcodes XOP_HLT, /* hlt (0xf4) */ + XOP_TEST_RM8_IMM8, /* test (0xf6 0) */ + XOP_TEST_RM8_IMM8_BIS, /* test (0xf6 1) */ + XOP_NOT_RM8, /* not (0xf6 2) */ + XOP_TEST_RM1632_IMM1632, /* test ([0x66] 0xf7 0) */ XOP_TEST_RM1632_IMM1632_BIS, /* test ([0x66] 0xf7 1) */ XOP_NOT_RM1632, /* not ([0x66] 0xf7 2) */ |