| Index: src/ia32/assembler-ia32.cc
|
| diff --git a/src/ia32/assembler-ia32.cc b/src/ia32/assembler-ia32.cc
|
| index d8cd8e3045966142a040e8e545eabb1a3af52bc5..88f6f9669de729b592a13ac63acacb39cac6219b 100644
|
| --- a/src/ia32/assembler-ia32.cc
|
| +++ b/src/ia32/assembler-ia32.cc
|
| @@ -1068,7 +1068,6 @@ void Assembler::sar_cl(const Operand& dst) {
|
| emit_operand(edi, dst);
|
| }
|
|
|
| -
|
| void Assembler::sbb(Register dst, const Operand& src) {
|
| EnsureSpace ensure_space(this);
|
| EMIT(0x1B);
|
| @@ -1112,15 +1111,6 @@ void Assembler::shl_cl(const Operand& dst) {
|
| emit_operand(esp, dst);
|
| }
|
|
|
| -
|
| -void Assembler::shrd(Register dst, const Operand& src) {
|
| - EnsureSpace ensure_space(this);
|
| - EMIT(0x0F);
|
| - EMIT(0xAD);
|
| - emit_operand(dst, src);
|
| -}
|
| -
|
| -
|
| void Assembler::shr(const Operand& dst, uint8_t imm8) {
|
| EnsureSpace ensure_space(this);
|
| DCHECK(is_uint5(imm8)); // illegal shift count
|
| @@ -1141,6 +1131,21 @@ void Assembler::shr_cl(const Operand& dst) {
|
| emit_operand(ebp, dst);
|
| }
|
|
|
| +void Assembler::shrd(Register dst, Register src, uint8_t shift) {
|
| + DCHECK(is_uint5(shift));
|
| + EnsureSpace ensure_space(this);
|
| + EMIT(0x0F);
|
| + EMIT(0xAC);
|
| + emit_operand(dst, Operand(src));
|
| + EMIT(shift);
|
| +}
|
| +
|
| +void Assembler::shrd_cl(const Operand& dst, Register src) {
|
| + EnsureSpace ensure_space(this);
|
| + EMIT(0x0F);
|
| + EMIT(0xAD);
|
| + emit_operand(src, dst);
|
| +}
|
|
|
| void Assembler::sub(const Operand& dst, const Immediate& x) {
|
| EnsureSpace ensure_space(this);
|
|
|