Chromium Code Reviews| Index: src/x64/assembler-x64.h |
| diff --git a/src/x64/assembler-x64.h b/src/x64/assembler-x64.h |
| index 07afc129dc82c76b76a5eadb2c6bd3425eb0289e..b329a2d3000180e046c189ca99a1431025e1a996 100644 |
| --- a/src/x64/assembler-x64.h |
| +++ b/src/x64/assembler-x64.h |
| @@ -378,6 +378,11 @@ inline Condition ReverseCondition(Condition cc) { |
| class Immediate BASE_EMBEDDED { |
| public: |
| explicit Immediate(int32_t value) : value_(value) {} |
| +#if V8_USE_31_BITS_SMI_VALUE |
| + explicit Immediate(Smi* value) { |
|
danno
2013/07/29 13:02:23
Don't add a Smi* constructor here. The wrapper fun
haitao.feng
2013/07/30 08:56:43
Done.
|
| + value_ = static_cast<int32_t>(reinterpret_cast<intptr_t>(value)); |
| + } |
| +#endif |
| private: |
| int32_t value_; |
| @@ -988,6 +993,12 @@ class Assembler : public AssemblerBase { |
| shift(dst, imm8, 0x0); |
| } |
| +#if V8_USE_31_BITS_SMI_VALUE |
|
danno
2013/07/29 13:02:23
Is there some way to not including this conditiona
haitao.feng
2013/07/30 08:56:43
Done.
|
| + void roll(Register dst, Immediate imm8) { |
| + shift_32(dst, imm8, 0x0); |
| + } |
| +#endif |
| + |
| void rcr(Register dst, Immediate imm8) { |
| shift(dst, imm8, 0x3); |
| } |
| @@ -1378,6 +1389,9 @@ class Assembler : public AssemblerBase { |
| void movmskpd(Register dst, XMMRegister src); |
| void movmskps(Register dst, XMMRegister src); |
| +#if V8_USE_31_BITS_SMI_VALUE |
| + void pcmpeqd(XMMRegister dst, XMMRegister src); |
|
danno
2013/07/29 13:02:23
Why can't this always be part of the code (no cond
haitao.feng
2013/07/30 08:56:43
Done.
|
| +#endif |
| // The first argument is the reg field, the second argument is the r/m field. |
| void emit_sse_operand(XMMRegister dst, XMMRegister src); |