instr->str_op_length = 0;
}
-
instr->num_operands = xed_decoded_inst_noperands(&xed_instr);
if (instr->num_operands > 3) {
- PrintDebug("Special Case Not Handled\n");
+ PrintDebug("Special Case Not Handled (more than 3 operands) (iform=%s)\n", xed_iform_enum_t2str(iform)
return -1;
// special case
} else if (instr->num_operands == 3) {
if ((!xed_operand_is_register(op_enum)) ||
(!is_flags_reg(xed_decoded_inst_get_reg(&xed_instr, op_enum)))) {
// special case
- PrintError("Special Case not handled\n");
+ PrintError("Special Case not handled (iform=%s)\n", xed_iform_enum_t2str(iform));
return -1;
}
}
-
-
//PrintDebug("Number of operands: %d\n", instr->num_operands);
//PrintDebug("INSTR length: %d\n", instr->instr_length);
// Write
case XED_IFORM_MOV_MEMv_GPRv:
case XED_IFORM_MOV_MEMb_GPR8:
+ case XED_IFORM_MOV_MEMv_OrAX:
case XED_IFORM_MOV_MEMb_AL:
case XED_IFORM_MOV_MEMv_IMM:
case XED_IFORM_MOV_MEMb_IMM:
// Read
case XED_IFORM_MOV_GPRv_MEMv:
case XED_IFORM_MOV_GPR8_MEMb:
+ case XED_IFORM_MOV_OrAX_MEMv:
case XED_IFORM_MOV_AL_MEMb:
return V3_OP_MOV;