Reviewers: William Hesse,
Description:
Fix broken cases in x64 disassembler.
[email protected]
Please review this at http://codereview.chromium.org/6893094/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/x64/disasm-x64.cc
Index: src/x64/disasm-x64.cc
diff --git a/src/x64/disasm-x64.cc b/src/x64/disasm-x64.cc
index
82bc6ef93b932933c0219a5ae5aab277dc4210f8..7bb2e61c329fd907b34707e1e8a5e0b189d4eb51
100644
--- a/src/x64/disasm-x64.cc
+++ b/src/x64/disasm-x64.cc
@@ -1186,18 +1186,18 @@ int DisassemblerX64::TwoByteOpcodeInstruction(byte*
data) {
} // else no immediate displacement.
AppendToBuffer("nop");
- } else if (opcode == 28) {
+ } else if (opcode == 0x28) {
// movaps xmm, xmm/m128
int mod, regop, rm;
get_modrm(*current, &mod, ®op, &rm);
AppendToBuffer("movaps %s, ", NameOfXMMRegister(regop));
current += PrintRightXMMOperand(current);
- } else if (opcode == 29) {
+ } else if (opcode == 0x29) {
// movaps xmm/m128, xmm
int mod, regop, rm;
get_modrm(*current, &mod, ®op, &rm);
- AppendToBuffer("movaps");
+ AppendToBuffer("movaps ");
current += PrintRightXMMOperand(current);
AppendToBuffer(", %s", NameOfXMMRegister(regop));
@@ -1212,8 +1212,8 @@ int DisassemblerX64::TwoByteOpcodeInstruction(byte*
data) {
byte_size_operand_ = idesc.byte_size_operation;
current += PrintOperands(idesc.mnem, idesc.op_order_, current);
- } else if (opcode == 57) {
- // xoprps xmm, xmm/m128
+ } else if (opcode == 0x57) {
+ // xorps xmm, xmm/m128
int mod, regop, rm;
get_modrm(*current, &mod, ®op, &rm);
AppendToBuffer("xorps %s, ", NameOfXMMRegister(regop));
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev