OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/builtins/builtins-utils.h" | 5 #include "src/builtins/builtins-utils.h" |
6 #include "src/builtins/builtins.h" | 6 #include "src/builtins/builtins.h" |
7 #include "src/code-stub-assembler.h" | 7 #include "src/code-stub-assembler.h" |
8 #include "src/ic/handler-compiler.h" | 8 #include "src/ic/handler-compiler.h" |
9 #include "src/ic/ic.h" | 9 #include "src/ic/ic.h" |
10 #include "src/ic/keyed-store-generic.h" | 10 #include "src/ic/keyed-store-generic.h" |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 void Builtins::Generate_KeyedStoreIC_Megamorphic( | 63 void Builtins::Generate_KeyedStoreIC_Megamorphic( |
64 compiler::CodeAssemblerState* state) { | 64 compiler::CodeAssemblerState* state) { |
65 KeyedStoreGenericGenerator::Generate(state, SLOPPY); | 65 KeyedStoreGenericGenerator::Generate(state, SLOPPY); |
66 } | 66 } |
67 | 67 |
68 void Builtins::Generate_KeyedStoreIC_Megamorphic_Strict( | 68 void Builtins::Generate_KeyedStoreIC_Megamorphic_Strict( |
69 compiler::CodeAssemblerState* state) { | 69 compiler::CodeAssemblerState* state) { |
70 KeyedStoreGenericGenerator::Generate(state, STRICT); | 70 KeyedStoreGenericGenerator::Generate(state, STRICT); |
71 } | 71 } |
72 | 72 |
| 73 void Builtins::Generate_StoreIC_Uninitialized( |
| 74 compiler::CodeAssemblerState* state) { |
| 75 StoreICUninitializedGenerator::Generate(state, SLOPPY); |
| 76 } |
| 77 |
| 78 void Builtins::Generate_StoreICStrict_Uninitialized( |
| 79 compiler::CodeAssemblerState* state) { |
| 80 StoreICUninitializedGenerator::Generate(state, STRICT); |
| 81 } |
| 82 |
73 TF_BUILTIN(KeyedStoreIC_Miss, CodeStubAssembler) { | 83 TF_BUILTIN(KeyedStoreIC_Miss, CodeStubAssembler) { |
74 typedef StoreWithVectorDescriptor Descriptor; | 84 typedef StoreWithVectorDescriptor Descriptor; |
75 | 85 |
76 Node* receiver = Parameter(Descriptor::kReceiver); | 86 Node* receiver = Parameter(Descriptor::kReceiver); |
77 Node* name = Parameter(Descriptor::kName); | 87 Node* name = Parameter(Descriptor::kName); |
78 Node* value = Parameter(Descriptor::kValue); | 88 Node* value = Parameter(Descriptor::kValue); |
79 Node* slot = Parameter(Descriptor::kSlot); | 89 Node* slot = Parameter(Descriptor::kSlot); |
80 Node* vector = Parameter(Descriptor::kVector); | 90 Node* vector = Parameter(Descriptor::kVector); |
81 Node* context = Parameter(Descriptor::kContext); | 91 Node* context = Parameter(Descriptor::kContext); |
82 | 92 |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
190 TailCallRuntime(Runtime::kStoreIC_Miss, context, value, slot, vector, | 200 TailCallRuntime(Runtime::kStoreIC_Miss, context, value, slot, vector, |
191 receiver, name); | 201 receiver, name); |
192 } | 202 } |
193 | 203 |
194 void Builtins::Generate_StoreIC_Setter_ForDeopt(MacroAssembler* masm) { | 204 void Builtins::Generate_StoreIC_Setter_ForDeopt(MacroAssembler* masm) { |
195 NamedStoreHandlerCompiler::GenerateStoreViaSetterForDeopt(masm); | 205 NamedStoreHandlerCompiler::GenerateStoreViaSetterForDeopt(masm); |
196 } | 206 } |
197 | 207 |
198 } // namespace internal | 208 } // namespace internal |
199 } // namespace v8 | 209 } // namespace v8 |
OLD | NEW |