x86: fix the pause instruction reported by @maijin in issue #298

This commit is contained in:
Nguyen Anh Quynh 2015-04-02 12:32:33 +08:00
parent d505d6d461
commit 6a4d27706a
1 changed files with 4 additions and 6 deletions

View File

@ -1124,17 +1124,15 @@ static int getID(struct InternalInstruction *insn)
return -1;
}
} else {
if (insn->mode != MODE_16BIT && isPrefixAtLocation(insn, 0x66))
if (insn->mode != MODE_16BIT && isPrefixAtLocation(insn, 0x66)) {
attrMask |= ATTR_OPSIZE;
else if (isPrefixAtLocation(insn, 0x67))
} else if (isPrefixAtLocation(insn, 0x67))
attrMask |= ATTR_ADSIZE;
if (isPrefixAtLocation(insn, 0xf3)) {
if (insn->twoByteEscape == 0x0f) // 0x66, 0x0f, ... like CRC32 case
attrMask |= ATTR_XS;
attrMask |= ATTR_XS;
} else if (isPrefixAtLocation(insn, 0xf2)) {
if (insn->twoByteEscape == 0x0f) // 0x66, 0x0f, ... like CRC32 case
attrMask |= ATTR_XD;
attrMask |= ATTR_XD;
}
}