Index: src/ia32/disasm-ia32.cc |
diff --git a/src/ia32/disasm-ia32.cc b/src/ia32/disasm-ia32.cc |
index 64305ef69e9b82e84f13ed4268067f099d34b30e..f4956223c57a446b3ba0a5b94bb09b37a4a17f2a 100644 |
--- a/src/ia32/disasm-ia32.cc |
+++ b/src/ia32/disasm-ia32.cc |
@@ -1156,6 +1156,15 @@ int DisassemblerIA32::InstructionDecode(v8::internal::Vector<char> out_buffer, |
NameOfXMMRegister(regop), |
NameOfXMMRegister(rm)); |
data++; |
+ } else if (*data == 0x73) { |
+ data++; |
+ int mod, regop, rm; |
+ get_modrm(*data, &mod, ®op, &rm); |
+ int8_t imm8 = *reinterpret_cast<int8_t*>(data + 1); |
Erik Corry
2010/09/20 11:56:50
Why not just:
int imm8 = data[1];
?
Vitaly Repeshko
2010/09/21 12:54:49
Almost done. I left static_cast there to avoid uns
|
+ AppendToBuffer("psllq %s,%d", |
+ NameOfXMMRegister(rm), |
+ static_cast<int>(imm8)); |
+ data += 2;; |
} else { |
UnimplementedInstruction(); |
} |