Index: src/x64/disasm-x64.cc |
diff --git a/src/x64/disasm-x64.cc b/src/x64/disasm-x64.cc |
index 94a5ee713ebc40923688ea20e254999b3a1e70a6..cad4a461c3b409937e745fc24b7cb35df0a63102 100644 |
--- a/src/x64/disasm-x64.cc |
+++ b/src/x64/disasm-x64.cc |
@@ -1852,13 +1852,8 @@ int DisassemblerX64::TwoByteOpcodeInstruction(byte* data) { |
} else { |
AppendToBuffer(",%s,cl", NameOfCPURegister(regop)); |
} |
- } else if (opcode == 0xBC) { |
- AppendToBuffer("%s%c ", mnemonic, operand_size_code()); |
- int mod, regop, rm; |
- get_modrm(*current, &mod, ®op, &rm); |
- AppendToBuffer("%s,", NameOfCPURegister(regop)); |
- current += PrintRightOperand(current); |
- } else if (opcode == 0xBD) { |
+ } else if (opcode == 0xB8 || opcode == 0xBC || opcode == 0xBD) { |
+ // POPCNT, CTZ, CLZ. |
AppendToBuffer("%s%c ", mnemonic, operand_size_code()); |
int mod, regop, rm; |
get_modrm(*current, &mod, ®op, &rm); |