Index: src/ia32/disasm-ia32.cc |
diff --git a/src/ia32/disasm-ia32.cc b/src/ia32/disasm-ia32.cc |
index a0a4e1ceeb21d1fe3dd7a65777d2ee9b79dc24d6..32cc0d386575dd6a50eb5fd3861065cd47041291 100644 |
--- a/src/ia32/disasm-ia32.cc |
+++ b/src/ia32/disasm-ia32.cc |
@@ -1929,6 +1929,18 @@ int DisassemblerIA32::InstructionDecode(v8::internal::Vector<char> out_buffer, |
NameOfXMMRegister(regop), |
NameOfXMMRegister(rm)); |
data++; |
+ } else if (*data == 0xFA) { |
+ data++; |
+ int mod, regop, rm; |
+ get_modrm(*data, &mod, ®op, &rm); |
+ AppendToBuffer("psubd %s,", NameOfXMMRegister(regop)); |
+ data += PrintRightXMMOperand(data); |
+ } else if (*data == 0xFE) { |
+ data++; |
+ int mod, regop, rm; |
+ get_modrm(*data, &mod, ®op, &rm); |
+ AppendToBuffer("paddd %s,", NameOfXMMRegister(regop)); |
+ data += PrintRightXMMOperand(data); |
} else if (*data == 0xB1) { |
data++; |
data += PrintOperands("cmpxchg_w", OPER_REG_OP_ORDER, data); |