| Index: src/code-stubs.h
|
| diff --git a/src/code-stubs.h b/src/code-stubs.h
|
| index 1a80a5b7bc764d581a7dbd8f2a23915a6e45ecdb..f9bb8309274bbe73bbc06a4dcad7b7ee1b49a6bc 100644
|
| --- a/src/code-stubs.h
|
| +++ b/src/code-stubs.h
|
| @@ -115,6 +115,9 @@ namespace internal {
|
| V(Multiply) \
|
| V(Divide) \
|
| V(Modulus) \
|
| + V(ShiftRight) \
|
| + V(ShiftRightLogical) \
|
| + V(ShiftLeft) \
|
| V(BitwiseAnd) \
|
| V(BitwiseOr) \
|
| V(BitwiseXor) \
|
| @@ -713,6 +716,31 @@ class ModulusStub final : public TurboFanCodeStub {
|
| DEFINE_TURBOFAN_CODE_STUB(Modulus, TurboFanCodeStub);
|
| };
|
|
|
| +class ShiftRightStub final : public TurboFanCodeStub {
|
| + public:
|
| + explicit ShiftRightStub(Isolate* isolate) : TurboFanCodeStub(isolate) {}
|
| +
|
| + DEFINE_CALL_INTERFACE_DESCRIPTOR(BinaryOp);
|
| + DEFINE_TURBOFAN_CODE_STUB(ShiftRight, TurboFanCodeStub);
|
| +};
|
| +
|
| +class ShiftRightLogicalStub final : public TurboFanCodeStub {
|
| + public:
|
| + explicit ShiftRightLogicalStub(Isolate* isolate)
|
| + : TurboFanCodeStub(isolate) {}
|
| +
|
| + DEFINE_CALL_INTERFACE_DESCRIPTOR(BinaryOp);
|
| + DEFINE_TURBOFAN_CODE_STUB(ShiftRightLogical, TurboFanCodeStub);
|
| +};
|
| +
|
| +class ShiftLeftStub final : public TurboFanCodeStub {
|
| + public:
|
| + explicit ShiftLeftStub(Isolate* isolate) : TurboFanCodeStub(isolate) {}
|
| +
|
| + DEFINE_CALL_INTERFACE_DESCRIPTOR(BinaryOp);
|
| + DEFINE_TURBOFAN_CODE_STUB(ShiftLeft, TurboFanCodeStub);
|
| +};
|
| +
|
| class BitwiseAndStub final : public TurboFanCodeStub {
|
| public:
|
| explicit BitwiseAndStub(Isolate* isolate) : TurboFanCodeStub(isolate) {}
|
| @@ -2512,7 +2540,7 @@ class ScriptContextFieldStub : public HandlerStub {
|
|
|
| private:
|
| static const int kContextIndexBits = 9;
|
| - static const int kSlotIndexBits = 13;
|
| + static const int kSlotIndexBits = 12;
|
| class ContextIndexBits : public BitField<int, 0, kContextIndexBits> {};
|
| class SlotIndexBits
|
| : public BitField<int, kContextIndexBits, kSlotIndexBits> {};
|
|
|