| Index: src/x64/assembler-x64.cc
|
| diff --git a/src/x64/assembler-x64.cc b/src/x64/assembler-x64.cc
|
| index dcb9fa562159b8e33f2cfff8b7ffcf205c57b77e..a7fd88076b89a6da3a0da01502e0001cac94f337 100644
|
| --- a/src/x64/assembler-x64.cc
|
| +++ b/src/x64/assembler-x64.cc
|
| @@ -1357,6 +1357,15 @@ void Assembler::movb(const Operand& dst, Register src) {
|
| }
|
|
|
|
|
| +void Assembler::movb(const Operand& dst, Immediate imm) {
|
| + EnsureSpace ensure_space(this);
|
| + emit_optional_rex_32(dst);
|
| + emit(0xC6);
|
| + emit_operand(0x0, dst);
|
| + emit(static_cast<byte>(imm.value_));
|
| +}
|
| +
|
| +
|
| void Assembler::movw(const Operand& dst, Register src) {
|
| EnsureSpace ensure_space(this);
|
| emit(0x66);
|
| @@ -1366,6 +1375,17 @@ void Assembler::movw(const Operand& dst, Register src) {
|
| }
|
|
|
|
|
| +void Assembler::movw(const Operand& dst, Immediate imm) {
|
| + EnsureSpace ensure_space(this);
|
| + emit(0x66);
|
| + emit_optional_rex_32(dst);
|
| + emit(0xC7);
|
| + emit_operand(0x0, dst);
|
| + emit(static_cast<byte>(imm.value_ & 0xff));
|
| + emit(static_cast<byte>(imm.value_ >> 8));
|
| +}
|
| +
|
| +
|
| void Assembler::movl(Register dst, const Operand& src) {
|
| EnsureSpace ensure_space(this);
|
| emit_optional_rex_32(dst, src);
|
| @@ -2487,6 +2507,24 @@ void Assembler::andps(XMMRegister dst, XMMRegister src) {
|
| }
|
|
|
|
|
| +void Assembler::orps(XMMRegister dst, XMMRegister src) {
|
| + EnsureSpace ensure_space(this);
|
| + emit_optional_rex_32(dst, src);
|
| + emit(0x0F);
|
| + emit(0x56);
|
| + emit_sse_operand(dst, src);
|
| +}
|
| +
|
| +
|
| +void Assembler::xorps(XMMRegister dst, XMMRegister src) {
|
| + EnsureSpace ensure_space(this);
|
| + emit_optional_rex_32(dst, src);
|
| + emit(0x0F);
|
| + emit(0x57);
|
| + emit_sse_operand(dst, src);
|
| +}
|
| +
|
| +
|
| // SSE 2 operations.
|
|
|
| void Assembler::movd(XMMRegister dst, Register src) {
|
| @@ -2918,15 +2956,6 @@ void Assembler::xorpd(XMMRegister dst, XMMRegister src) {
|
| }
|
|
|
|
|
| -void Assembler::xorps(XMMRegister dst, XMMRegister src) {
|
| - EnsureSpace ensure_space(this);
|
| - emit_optional_rex_32(dst, src);
|
| - emit(0x0F);
|
| - emit(0x57);
|
| - emit_sse_operand(dst, src);
|
| -}
|
| -
|
| -
|
| void Assembler::sqrtsd(XMMRegister dst, XMMRegister src) {
|
| EnsureSpace ensure_space(this);
|
| emit(0xF2);
|
|
|