Index: src/code-stubs.cc |
diff --git a/src/code-stubs.cc b/src/code-stubs.cc |
index 27852d5eec16dd8953bfd93d29879b96c30c9bbc..b8f95d12adcb7c6787c5fb74f1fb4d01b09a59e8 100644 |
--- a/src/code-stubs.cc |
+++ b/src/code-stubs.cc |
@@ -561,6 +561,37 @@ void StoreICStub::GenerateAssembly(CodeStubAssembler* assembler) const { |
assembler->StoreIC(&p); |
} |
+void KeyedStoreICTrampolineTFStub::GenerateAssembly( |
+ CodeStubAssembler* assembler) const { |
+ typedef compiler::Node Node; |
+ |
+ Node* receiver = assembler->Parameter(Descriptor::kReceiver); |
+ Node* name = assembler->Parameter(Descriptor::kName); |
+ Node* value = assembler->Parameter(Descriptor::kValue); |
+ Node* slot = assembler->Parameter(Descriptor::kSlot); |
+ Node* context = assembler->Parameter(Descriptor::kContext); |
+ Node* vector = assembler->LoadTypeFeedbackVectorForStub(); |
+ |
+ CodeStubAssembler::StoreICParameters p(context, receiver, name, value, slot, |
+ vector); |
+ assembler->KeyedStoreIC(&p, StoreICState::GetLanguageMode(GetExtraICState())); |
+} |
+ |
+void KeyedStoreICTFStub::GenerateAssembly(CodeStubAssembler* assembler) const { |
+ typedef compiler::Node Node; |
+ |
+ Node* receiver = assembler->Parameter(Descriptor::kReceiver); |
+ Node* name = assembler->Parameter(Descriptor::kName); |
+ Node* value = assembler->Parameter(Descriptor::kValue); |
+ Node* slot = assembler->Parameter(Descriptor::kSlot); |
+ Node* vector = assembler->Parameter(Descriptor::kVector); |
+ Node* context = assembler->Parameter(Descriptor::kContext); |
+ |
+ CodeStubAssembler::StoreICParameters p(context, receiver, name, value, slot, |
+ vector); |
+ assembler->KeyedStoreIC(&p, StoreICState::GetLanguageMode(GetExtraICState())); |
+} |
+ |
void StoreMapStub::GenerateAssembly(CodeStubAssembler* assembler) const { |
typedef compiler::Node Node; |