x86: fix movw instruction in #789

This commit is contained in:
Nguyen Anh Quynh 2016-11-08 10:56:18 +08:00
parent c4137655e4
commit 9ed7f53376
3 changed files with 9 additions and 6 deletions

View File

@ -728,7 +728,7 @@ static void printMemReference(MCInst *MI, unsigned Op, SStream *O)
} }
} }
} else { } else {
SStream_concat0(O, "0"); //SStream_concat0(O, "0");
} }
} }

View File

@ -14168,12 +14168,15 @@ static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
uint64_t Bits2 = OpInfo2[opcode]; uint64_t Bits2 = OpInfo2[opcode];
uint64_t Bits = (Bits2 << 32) | Bits1; uint64_t Bits = (Bits2 << 32) | Bits1;
// assert(Bits != 0 && "Cannot print this instruction."); // assert(Bits != 0 && "Cannot print this instruction.");
if (!X86_lockrep(MI, O)) if (!X86_lockrep(MI, O)) {
#ifndef CAPSTONE_DIET #ifndef CAPSTONE_DIET
SStream_concat0(O, AsmStrs+(Bits & 16383)-1); // HACK TODO
#else if (opcode == X86_MOV32sm) {
; SStream_concat0(O, "movw\t");
} else
SStream_concat0(O, AsmStrs+(Bits & 16383)-1);
#endif #endif
}
// Fragment 0 encoded into 7 bits for 79 unique commands. // Fragment 0 encoded into 7 bits for 79 unique commands.

View File

@ -24,7 +24,7 @@ else
endif endif
clean: clean:
${RM} -rf *.o cstool ${RM} -rf *.o $(TARGET)
%.o: %.c %.o: %.c
ifeq ($(V),0) ifeq ($(V),0)