diff --git a/src/arch/i386.ins b/src/arch/i386.ins index c27a0e8..d059dde 100644 --- a/src/arch/i386.ins +++ b/src/arch/i386.ins @@ -588,6 +588,16 @@ { "fwait", 0x9b, OP1F, AOT_NONE, AOT_NONE, AOT_NONE }, /* NOP 0x90 1 */ { "nop", 0x90, OP1F, AOT_NONE, AOT_NONE, AOT_NONE }, +/* NOT 0xf6 /2 1 r/m8 */ +{ "notb", 0xf6, OP1F, OP_RM8_D0+2,AOT_NONE, AOT_NONE }, +{ "notb", 0xf6, OP1F, OP_RM8_D8+2,AOT_NONE, AOT_NONE }, +{ "notb", 0xf6, OP1F, OP_RM8_DW+2,AOT_NONE, AOT_NONE }, +{ "not", 0xf6, OP1F, OP_RM8_R8+2,AOT_NONE, AOT_NONE }, +/* NOT 0xf7 /2 1 r/mW */ +{ "not", 0xf7, OP1F, OP_RMW_D0+2,AOT_NONE, AOT_NONE }, +{ "not", 0xf7, OP1F, OP_RMW_D8+2,AOT_NONE, AOT_NONE }, +{ "not", 0xf7, OP1F, OP_RMW_DW+2,AOT_NONE, AOT_NONE }, +{ "not", 0xf7, OP1F, OP_RMW_RW+2,AOT_NONE, AOT_NONE }, /* OR 0x0c ib 1 al imm8 */ { "or", 0x0c, OP1F, OP_al, OP_S8, AOT_NONE }, /* OR 0x0d iW 1 AX immW */ diff --git a/test/i386.S b/test/i386.S index 33ac3a3..b6cf5d3 100644 --- a/test/i386.S +++ b/test/i386.S @@ -241,6 +241,14 @@ fninit fwait nop /* 90 */ + notb [%eax] + notb [%eax + $0x42] + notb [%eax + $0x11223344] + not %ch + not [%eax] + not [%eax + $0x42] + not [%eax + $0x11223344] + not %eax /* OR */ or [%ecx], %dh or [%ecx+$0x50], %dh