| Index: src/code-stubs.h
|
| diff --git a/src/code-stubs.h b/src/code-stubs.h
|
| index 17f25975c91bbedd73fc3db96b7776a15fbd42b4..9dc67b5a4be85cffc8e96c555ba19c7e71c0648f 100644
|
| --- a/src/code-stubs.h
|
| +++ b/src/code-stubs.h
|
| @@ -2775,38 +2775,38 @@ class LoadFastElementStub : public HandlerStub {
|
| DEFINE_HANDLER_CODE_STUB(LoadFastElement, HandlerStub);
|
| };
|
|
|
| -
|
| -class StoreFastElementStub : public HydrogenCodeStub {
|
| +class StoreFastElementStub : public TurboFanCodeStub {
|
| public:
|
| StoreFastElementStub(Isolate* isolate, bool is_js_array,
|
| ElementsKind elements_kind, KeyedAccessStoreMode mode)
|
| - : HydrogenCodeStub(isolate) {
|
| - set_sub_minor_key(CommonStoreModeBits::encode(mode) |
|
| - ElementsKindBits::encode(elements_kind) |
|
| - IsJSArrayBits::encode(is_js_array));
|
| + : TurboFanCodeStub(isolate) {
|
| + minor_key_ = CommonStoreModeBits::encode(mode) |
|
| + ElementsKindBits::encode(elements_kind) |
|
| + IsJSArrayBits::encode(is_js_array);
|
| }
|
|
|
| static void GenerateAheadOfTime(Isolate* isolate);
|
|
|
| - bool is_js_array() const { return IsJSArrayBits::decode(sub_minor_key()); }
|
| + bool is_js_array() const { return IsJSArrayBits::decode(minor_key_); }
|
|
|
| ElementsKind elements_kind() const {
|
| - return ElementsKindBits::decode(sub_minor_key());
|
| + return ElementsKindBits::decode(minor_key_);
|
| }
|
|
|
| KeyedAccessStoreMode store_mode() const {
|
| - return CommonStoreModeBits::decode(sub_minor_key());
|
| + return CommonStoreModeBits::decode(minor_key_);
|
| }
|
|
|
| Code::Kind GetCodeKind() const override { return Code::HANDLER; }
|
| ExtraICState GetExtraICState() const override { return Code::KEYED_STORE_IC; }
|
|
|
| private:
|
| - class ElementsKindBits : public BitField<ElementsKind, 3, 8> {};
|
| - class IsJSArrayBits : public BitField<bool, 11, 1> {};
|
| + class ElementsKindBits
|
| + : public BitField<ElementsKind, CommonStoreModeBits::kNext, 8> {};
|
| + class IsJSArrayBits : public BitField<bool, ElementsKindBits::kNext, 1> {};
|
|
|
| DEFINE_CALL_INTERFACE_DESCRIPTOR(StoreWithVector);
|
| - DEFINE_HYDROGEN_CODE_STUB(StoreFastElement, HydrogenCodeStub);
|
| + DEFINE_TURBOFAN_CODE_STUB(StoreFastElement, TurboFanCodeStub);
|
| };
|
|
|
|
|
| @@ -3005,7 +3005,8 @@ class StoreElementStub : public PlatformCodeStub {
|
| return ElementsKindBits::decode(minor_key_);
|
| }
|
|
|
| - class ElementsKindBits : public BitField<ElementsKind, 3, 8> {};
|
| + class ElementsKindBits
|
| + : public BitField<ElementsKind, CommonStoreModeBits::kNext, 8> {};
|
|
|
| DEFINE_PLATFORM_CODE_STUB(StoreElement, PlatformCodeStub);
|
| };
|
| @@ -3105,7 +3106,8 @@ class ElementsTransitionAndStoreStub : public HydrogenCodeStub {
|
| ExtraICState GetExtraICState() const override { return Code::KEYED_STORE_IC; }
|
|
|
| private:
|
| - class FromBits : public BitField<ElementsKind, 3, 8> {};
|
| + class FromBits
|
| + : public BitField<ElementsKind, CommonStoreModeBits::kNext, 8> {};
|
| class ToBits : public BitField<ElementsKind, 11, 8> {};
|
| class IsJSArrayBits : public BitField<bool, 19, 1> {};
|
|
|
|
|