Index: src/x64/disasm-x64.cc |
diff --git a/src/x64/disasm-x64.cc b/src/x64/disasm-x64.cc |
index 5534887f5ac867c05d516afd058b71198356bc5e..75c9bee846f6f0e4a847e3770f6e6d4b0c62ebc7 100644 |
--- a/src/x64/disasm-x64.cc |
+++ b/src/x64/disasm-x64.cc |
@@ -988,6 +988,15 @@ int DisassemblerX64::AVXInstruction(byte* data) { |
int mod, regop, rm, vvvv = vex_vreg(); |
get_modrm(*current, &mod, ®op, &rm); |
switch (opcode) { |
+ case 0x10: |
+ AppendToBuffer("vmovsd %s,", NameOfXMMRegister(regop)); |
+ current += PrintRightXMMOperand(current); |
+ break; |
+ case 0x11: |
+ AppendToBuffer("vmovsd "); |
+ current += PrintRightXMMOperand(current); |
+ AppendToBuffer(",%s", NameOfXMMRegister(regop)); |
+ break; |
case 0x58: |
AppendToBuffer("vaddsd %s,%s,", NameOfXMMRegister(regop), |
NameOfXMMRegister(vvvv)); |
@@ -1154,6 +1163,15 @@ int DisassemblerX64::AVXInstruction(byte* data) { |
int mod, regop, rm, vvvv = vex_vreg(); |
get_modrm(*current, &mod, ®op, &rm); |
switch (opcode) { |
+ case 0x28: |
+ AppendToBuffer("vmovapd %s,", NameOfXMMRegister(regop)); |
+ current += PrintRightXMMOperand(current); |
+ break; |
+ case 0x29: |
+ AppendToBuffer("vmovapd "); |
+ current += PrintRightXMMOperand(current); |
+ AppendToBuffer(",%s", NameOfXMMRegister(regop)); |
+ break; |
case 0x2e: |
AppendToBuffer("vucomisd %s,", NameOfXMMRegister(regop)); |
current += PrintRightXMMOperand(current); |