| Index: runtime/vm/disassembler_ia32.cc
|
| diff --git a/runtime/vm/disassembler_ia32.cc b/runtime/vm/disassembler_ia32.cc
|
| index 5610b5f0acc6f58ae379f9e501a35484267af920..cc08f941989b01302321c93cfebe994a0f831e3e 100644
|
| --- a/runtime/vm/disassembler_ia32.cc
|
| +++ b/runtime/vm/disassembler_ia32.cc
|
| @@ -237,22 +237,8 @@ static const char* F0Mnem(uint8_t f0byte) {
|
| case 0xAD: return "shrd";
|
| case 0xAB: return "bts";
|
| case 0xB1: return "cmpxchg";
|
| - case 0x50: return "movmskps";
|
| - case 0x51: return "sqrtps";
|
| - case 0x52: return "rqstps";
|
| - case 0x53: return "rcpps";
|
| - case 0x54: return "andps";
|
| - case 0x56: return "orps";
|
| case 0x57: return "xorps";
|
| - case 0x58: return "addps";
|
| - case 0x59: return "mulps";
|
| - case 0x5C: return "subps";
|
| - case 0x5D: return "minps";
|
| - case 0x5E: return "divps";
|
| - case 0x5F: return "maxps";
|
| case 0x28: return "movaps";
|
| - case 0x10: return "movups";
|
| - case 0x11: return "movups";
|
| default: return NULL;
|
| }
|
| }
|
| @@ -300,7 +286,6 @@ class X86Decoder : public ValueObject {
|
| void PrintCPURegister(int reg);
|
| void PrintCPUByteRegister(int reg);
|
| void PrintXmmRegister(int reg);
|
| - void PrintXmmComparison(int comparison);
|
| void PrintAddress(uword addr);
|
|
|
| typedef void (X86Decoder::*RegisterNamePrinter)(int reg);
|
| @@ -410,15 +395,6 @@ void X86Decoder::PrintXmmRegister(int reg) {
|
| Print(xmm_regs[reg]);
|
| }
|
|
|
| -void X86Decoder::PrintXmmComparison(int comparison) {
|
| - ASSERT(0 <= comparison);
|
| - ASSERT(comparison < 8);
|
| - static const char* comparisons[8] = {
|
| - "eq", "lt", "le", "unordered", "not eq", "not lt", "not le", "ordered"
|
| - };
|
| - Print(comparisons[comparison]);
|
| -}
|
| -
|
|
|
| static const char* ObjectToCStringNoGC(const Object& obj) {
|
| if (obj.IsSmi() ||
|
| @@ -1361,54 +1337,6 @@ int X86Decoder::InstructionDecode(uword pc) {
|
| PrintXmmRegister(regop);
|
| Print(",");
|
| data += PrintRightXmmOperand(data);
|
| - } else if (f0byte == 0x11) {
|
| - Print("movups ");
|
| - int mod, regop, rm;
|
| - GetModRm(*data, &mod, ®op, &rm);
|
| - data += PrintRightXmmOperand(data);
|
| - Print(",");
|
| - PrintXmmRegister(regop);
|
| - } else if (f0byte == 0x10) {
|
| - int mod, regop, rm;
|
| - GetModRm(*data, &mod, ®op, &rm);
|
| - Print("movups ");
|
| - PrintXmmRegister(regop);
|
| - Print(",");
|
| - data += PrintRightOperand(data);
|
| - } else if (f0byte == 0x51 || f0byte == 0x52 || f0byte == 0x53 ||
|
| - f0byte == 0x54 || f0byte == 0x56 || f0byte == 0x58 ||
|
| - f0byte == 0x59 || f0byte == 0x5C || f0byte == 0x5D ||
|
| - f0byte == 0x5E || f0byte == 0x5F) {
|
| - int mod, regop, rm;
|
| - GetModRm(*data, &mod, ®op, &rm);
|
| - Print(f0mnem);
|
| - Print(" ");
|
| - PrintXmmRegister(regop);
|
| - Print(",");
|
| - data += PrintRightXmmOperand(data);
|
| - } else if (f0byte == 0x50) {
|
| - Print("movmskpd ");
|
| - int mod, regop, rm;
|
| - GetModRm(*data, &mod, ®op, &rm);
|
| - PrintCPURegister(regop);
|
| - Print(",");
|
| - data += PrintRightXmmOperand(data);
|
| - } else if (f0byte == 0xC2 || f0byte == 0xC6) {
|
| - if (f0byte == 0xC2)
|
| - Print("cmpps ");
|
| - else
|
| - Print("shufps ");
|
| - int mod, regop, rm;
|
| - GetModRm(*data, &mod, ®op, &rm);
|
| - Print(" ");
|
| - PrintXmmRegister(regop);
|
| - Print(",");
|
| - data += PrintRightXmmOperand(data);
|
| - int comparison = *data;
|
| - Print(" [");
|
| - PrintHex(comparison);
|
| - Print("]");
|
| - data++;
|
| } else {
|
| UNIMPLEMENTED();
|
| }
|
|
|