Index: src/x64/assembler-x64.cc |
=================================================================== |
--- src/x64/assembler-x64.cc (revision 4167) |
+++ src/x64/assembler-x64.cc (working copy) |
@@ -1030,6 +1030,22 @@ |
} |
+void Assembler::imull(Register dst, Register src, Immediate imm) { |
+ EnsureSpace ensure_space(this); |
+ last_pc_ = pc_; |
+ emit_optional_rex_32(dst, src); |
+ if (is_int8(imm.value_)) { |
+ emit(0x6B); |
+ emit_modrm(dst, src); |
+ emit(imm.value_); |
+ } else { |
+ emit(0x69); |
+ emit_modrm(dst, src); |
+ emitl(imm.value_); |
+ } |
+} |
+ |
+ |
void Assembler::incq(Register dst) { |
EnsureSpace ensure_space(this); |
last_pc_ = pc_; |
@@ -1190,6 +1206,15 @@ |
} |
+void Assembler::leal(Register dst, const Operand& src) { |
+ EnsureSpace ensure_space(this); |
+ last_pc_ = pc_; |
+ emit_optional_rex_32(dst, src); |
+ emit(0x8D); |
+ emit_operand(dst, src); |
+} |
+ |
+ |
void Assembler::load_rax(void* value, RelocInfo::Mode mode) { |
EnsureSpace ensure_space(this); |
last_pc_ = pc_; |
@@ -1219,6 +1244,7 @@ |
emit_operand(dst, src); |
} |
+ |
void Assembler::movb(Register dst, Immediate imm) { |
EnsureSpace ensure_space(this); |
last_pc_ = pc_; |
@@ -1228,6 +1254,7 @@ |
emit(imm.value_); |
} |
+ |
void Assembler::movb(const Operand& dst, Register src) { |
EnsureSpace ensure_space(this); |
last_pc_ = pc_; |
@@ -1236,6 +1263,7 @@ |
emit_operand(src, dst); |
} |
+ |
void Assembler::movw(const Operand& dst, Register src) { |
EnsureSpace ensure_space(this); |
last_pc_ = pc_; |
@@ -1245,6 +1273,7 @@ |
emit_operand(src, dst); |
} |
+ |
void Assembler::movl(Register dst, const Operand& src) { |
EnsureSpace ensure_space(this); |
last_pc_ = pc_; |
@@ -1600,6 +1629,15 @@ |
} |
+void Assembler::notl(Register dst) { |
+ EnsureSpace ensure_space(this); |
+ last_pc_ = pc_; |
+ emit_optional_rex_32(dst); |
+ emit(0xF7); |
+ emit_modrm(0x2, dst); |
+} |
+ |
+ |
void Assembler::nop(int n) { |
// The recommended muti-byte sequences of NOP instructions from the Intel 64 |
// and IA-32 Architectures Software Developer's Manual. |