Index: src/ia32/disasm-ia32.cc |
diff --git a/src/ia32/disasm-ia32.cc b/src/ia32/disasm-ia32.cc |
index 576c7393ccf44e87c8257dec44995a9143c45452..08ffdde5b4e7632e82d5973975c47f8ac40fd25e 100644 |
--- a/src/ia32/disasm-ia32.cc |
+++ b/src/ia32/disasm-ia32.cc |
@@ -1554,6 +1554,20 @@ int DisassemblerIA32::InstructionDecode(v8::internal::Vector<char> out_buffer, |
NameOfXMMRegister(rm), |
static_cast<int>(imm8)); |
data += 2; |
+ } else if (*data == 0x62) { |
+ data++; |
+ int mod, regop, rm; |
+ get_modrm(*data, &mod, ®op, &rm); |
+ AppendToBuffer("punpckldq %s,%s", NameOfXMMRegister(regop), |
+ NameOfXMMRegister(rm)); |
+ data++; |
+ } else if (*data == 0x6A) { |
+ data++; |
+ int mod, regop, rm; |
+ get_modrm(*data, &mod, ®op, &rm); |
+ AppendToBuffer("punpckhdq %s,%s", NameOfXMMRegister(regop), |
+ NameOfXMMRegister(rm)); |
+ data++; |
} else if (*data == 0x76) { |
data++; |
int mod, regop, rm; |