Index: src/ia32/assembler-ia32.cc |
diff --git a/src/ia32/assembler-ia32.cc b/src/ia32/assembler-ia32.cc |
index 2ac3088020bbd5d76577813dfa7c84f644b46ee3..d8cd8e3045966142a040e8e545eabb1a3af52bc5 100644 |
--- a/src/ia32/assembler-ia32.cc |
+++ b/src/ia32/assembler-ia32.cc |
@@ -1075,12 +1075,20 @@ void Assembler::sbb(Register dst, const Operand& src) { |
emit_operand(dst, src); |
} |
+void Assembler::shld(Register dst, Register src, uint8_t shift) { |
+ DCHECK(is_uint5(shift)); |
+ EnsureSpace ensure_space(this); |
+ EMIT(0x0F); |
+ EMIT(0xA4); |
+ emit_operand(src, Operand(dst)); |
+ EMIT(shift); |
+} |
-void Assembler::shld(Register dst, const Operand& src) { |
+void Assembler::shld_cl(Register dst, Register src) { |
EnsureSpace ensure_space(this); |
EMIT(0x0F); |
EMIT(0xA5); |
- emit_operand(dst, src); |
+ emit_operand(src, Operand(dst)); |
} |