diff options
Diffstat (limited to 'deps/v8/src/builtins/builtins-handler.cc')
-rw-r--r-- | deps/v8/src/builtins/builtins-handler.cc | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/deps/v8/src/builtins/builtins-handler.cc b/deps/v8/src/builtins/builtins-handler.cc index 8b3df7927f..ebbc9784a1 100644 --- a/deps/v8/src/builtins/builtins-handler.cc +++ b/deps/v8/src/builtins/builtins-handler.cc @@ -14,6 +14,21 @@ void Builtins::Generate_KeyedLoadIC_Megamorphic(MacroAssembler* masm) { KeyedLoadIC::GenerateMegamorphic(masm); } +void Builtins::Generate_KeyedLoadIC_Megamorphic_TF( + CodeStubAssembler* assembler) { + typedef compiler::Node Node; + typedef LoadWithVectorDescriptor Descriptor; + + Node* receiver = assembler->Parameter(Descriptor::kReceiver); + Node* name = assembler->Parameter(Descriptor::kName); + Node* slot = assembler->Parameter(Descriptor::kSlot); + Node* vector = assembler->Parameter(Descriptor::kVector); + Node* context = assembler->Parameter(Descriptor::kContext); + + CodeStubAssembler::LoadICParameters p(context, receiver, name, slot, vector); + assembler->KeyedLoadICGeneric(&p); +} + void Builtins::Generate_KeyedLoadIC_Miss(MacroAssembler* masm) { KeyedLoadIC::GenerateMiss(masm); } @@ -34,7 +49,7 @@ void Builtins::Generate_KeyedStoreIC_Miss(MacroAssembler* masm) { } void Builtins::Generate_KeyedStoreIC_Slow(MacroAssembler* masm) { - ElementHandlerCompiler::GenerateStoreSlow(masm); + KeyedStoreIC::GenerateSlow(masm); } void Builtins::Generate_LoadGlobalIC_Miss(CodeStubAssembler* assembler) { @@ -105,8 +120,8 @@ void Builtins::Generate_StoreIC_Miss(CodeStubAssembler* assembler) { Node* vector = assembler->Parameter(Descriptor::kVector); Node* context = assembler->Parameter(Descriptor::kContext); - assembler->TailCallRuntime(Runtime::kStoreIC_Miss, context, receiver, name, - value, slot, vector); + assembler->TailCallRuntime(Runtime::kStoreIC_Miss, context, value, slot, + vector, receiver, name); } void Builtins::Generate_StoreIC_Normal(MacroAssembler* masm) { |