Index: src/code-stubs.h |
diff --git a/src/code-stubs.h b/src/code-stubs.h |
index 9ea0b19cbee5b7b74df95aa1920cf3195d87c37d..c334ed7670b520372a88fc6e8a287d9bd8ea0cc7 100644 |
--- a/src/code-stubs.h |
+++ b/src/code-stubs.h |
@@ -43,7 +43,6 @@ class ObjectLiteral; |
V(StoreBufferOverflow) \ |
V(StoreElement) \ |
V(SubString) \ |
- V(StoreIC) \ |
V(KeyedStoreIC) \ |
V(KeyedLoadIC) \ |
V(LoadGlobalIC) \ |
@@ -62,7 +61,6 @@ class ObjectLiteral; |
V(CallICTrampoline) \ |
V(KeyedLoadICTrampoline) \ |
V(KeyedStoreICTrampoline) \ |
- V(StoreICTrampoline) \ |
/* --- HydrogenCodeStubs --- */ \ |
V(StringAdd) \ |
/* These builtins w/ JS linkage are */ \ |
@@ -2103,13 +2101,15 @@ class KeyedLoadICTrampolineTFStub : public LoadICTrampolineStub { |
DEFINE_CODE_STUB(KeyedLoadICTrampolineTF, LoadICTrampolineStub); |
}; |
-class StoreICTrampolineStub : public PlatformCodeStub { |
+class StoreICTrampolineTFStub : public TurboFanCodeStub { |
public: |
- StoreICTrampolineStub(Isolate* isolate, const StoreICState& state) |
- : PlatformCodeStub(isolate) { |
+ StoreICTrampolineTFStub(Isolate* isolate, const StoreICState& state) |
+ : TurboFanCodeStub(isolate) { |
minor_key_ = state.GetExtraICState(); |
} |
+ void GenerateAssembly(CodeStubAssembler* assembler) const override; |
+ |
Code::Kind GetCodeKind() const override { return Code::STORE_IC; } |
ExtraICState GetExtraICState() const final { |
@@ -2119,21 +2119,19 @@ class StoreICTrampolineStub : public PlatformCodeStub { |
protected: |
StoreICState state() const { return StoreICState(GetExtraICState()); } |
- private: |
DEFINE_CALL_INTERFACE_DESCRIPTOR(Store); |
- DEFINE_PLATFORM_CODE_STUB(StoreICTrampoline, PlatformCodeStub); |
+ DEFINE_CODE_STUB(StoreICTrampolineTF, TurboFanCodeStub); |
}; |
-class StoreICTrampolineTFStub : public TurboFanCodeStub { |
+class KeyedStoreICTrampolineStub : public PlatformCodeStub { |
public: |
- StoreICTrampolineTFStub(Isolate* isolate, const StoreICState& state) |
- : TurboFanCodeStub(isolate) { |
+ KeyedStoreICTrampolineStub(Isolate* isolate, const StoreICState& state) |
+ : PlatformCodeStub(isolate) { |
minor_key_ = state.GetExtraICState(); |
} |
- void GenerateAssembly(CodeStubAssembler* assembler) const override; |
+ Code::Kind GetCodeKind() const override { return Code::KEYED_STORE_IC; } |
- Code::Kind GetCodeKind() const override { return Code::STORE_IC; } |
ExtraICState GetExtraICState() const final { |
return static_cast<ExtraICState>(minor_key_); |
} |
@@ -2141,18 +2139,9 @@ class StoreICTrampolineTFStub : public TurboFanCodeStub { |
protected: |
StoreICState state() const { return StoreICState(GetExtraICState()); } |
+ private: |
DEFINE_CALL_INTERFACE_DESCRIPTOR(Store); |
- DEFINE_CODE_STUB(StoreICTrampolineTF, TurboFanCodeStub); |
-}; |
- |
-class KeyedStoreICTrampolineStub : public StoreICTrampolineStub { |
- public: |
- KeyedStoreICTrampolineStub(Isolate* isolate, const StoreICState& state) |
- : StoreICTrampolineStub(isolate, state) {} |
- |
- Code::Kind GetCodeKind() const override { return Code::KEYED_STORE_IC; } |
- |
- DEFINE_PLATFORM_CODE_STUB(KeyedStoreICTrampoline, StoreICTrampolineStub); |
+ DEFINE_PLATFORM_CODE_STUB(KeyedStoreICTrampoline, PlatformCodeStub); |
}; |
@@ -2235,28 +2224,6 @@ class KeyedLoadICTFStub : public LoadICStub { |
DEFINE_CODE_STUB(KeyedLoadICTF, LoadICStub); |
}; |
-class StoreICStub : public PlatformCodeStub { |
- public: |
- StoreICStub(Isolate* isolate, const StoreICState& state) |
- : PlatformCodeStub(isolate) { |
- minor_key_ = state.GetExtraICState(); |
- } |
- |
- void GenerateForTrampoline(MacroAssembler* masm); |
- |
- Code::Kind GetCodeKind() const final { return Code::STORE_IC; } |
- |
- ExtraICState GetExtraICState() const final { |
- return static_cast<ExtraICState>(minor_key_); |
- } |
- |
- DEFINE_CALL_INTERFACE_DESCRIPTOR(StoreWithVector); |
- DEFINE_PLATFORM_CODE_STUB(StoreIC, PlatformCodeStub); |
- |
- protected: |
- void GenerateImpl(MacroAssembler* masm, bool in_frame); |
-}; |
- |
class StoreICTFStub : public TurboFanCodeStub { |
public: |
StoreICTFStub(Isolate* isolate, const StoreICState& state) |