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 #ifndef V8_SRC_IC_ACCESSOR_ASSEMBLER_H_ | 5 #ifndef V8_SRC_IC_ACCESSOR_ASSEMBLER_H_ |
6 #define V8_SRC_IC_ACCESSOR_ASSEMBLER_H_ | 6 #define V8_SRC_IC_ACCESSOR_ASSEMBLER_H_ |
7 | 7 |
8 #include "src/code-stub-assembler.h" | 8 #include "src/code-stub-assembler.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
186 const LoadICParameters* p, Label* slow, | 186 const LoadICParameters* p, Label* slow, |
187 UseStubCache use_stub_cache = kUseStubCache); | 187 UseStubCache use_stub_cache = kUseStubCache); |
188 | 188 |
189 // Low-level helpers. | 189 // Low-level helpers. |
190 | 190 |
191 Node* PrepareValueForStore(Node* handler_word, Node* holder, | 191 Node* PrepareValueForStore(Node* handler_word, Node* holder, |
192 Representation representation, Node* transition, | 192 Representation representation, Node* transition, |
193 Node* value, Label* bailout); | 193 Node* value, Label* bailout); |
194 | 194 |
195 // Extends properties backing store by JSObject::kFieldsAdded elements. | 195 // Extends properties backing store by JSObject::kFieldsAdded elements. |
196 void ExtendPropertiesBackingStore(Node* object); | 196 void ExtendPropertiesBackingStore(Node* object, Node* handler_word); |
197 | 197 |
198 void StoreNamedField(Node* handler_word, Node* object, bool is_inobject, | 198 void StoreNamedField(Node* handler_word, Node* object, bool is_inobject, |
199 Representation representation, Node* value, | 199 Representation representation, Node* value, |
200 bool transition_to_field, Label* bailout); | 200 bool transition_to_field, Label* bailout); |
201 | 201 |
202 void EmitFastElementsBoundsCheck(Node* object, Node* elements, | 202 void EmitFastElementsBoundsCheck(Node* object, Node* elements, |
203 Node* intptr_index, | 203 Node* intptr_index, |
204 Node* is_jsarray_condition, Label* miss); | 204 Node* is_jsarray_condition, Label* miss); |
205 void EmitElementLoad(Node* object, Node* elements, Node* elements_kind, | 205 void EmitElementLoad(Node* object, Node* elements, Node* elements_kind, |
206 Node* key, Node* is_jsarray_condition, Label* if_hole, | 206 Node* key, Node* is_jsarray_condition, Label* if_hole, |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
290 | 290 |
291 CodeAssemblerLabel* const out_; | 291 CodeAssemblerLabel* const out_; |
292 CodeAssemblerVariable* const var_result_; | 292 CodeAssemblerVariable* const var_result_; |
293 CodeStubAssembler* const asm_; | 293 CodeStubAssembler* const asm_; |
294 }; | 294 }; |
295 | 295 |
296 } // namespace internal | 296 } // namespace internal |
297 } // namespace v8 | 297 } // namespace v8 |
298 | 298 |
299 #endif // V8_SRC_IC_ACCESSOR_ASSEMBLER_H_ | 299 #endif // V8_SRC_IC_ACCESSOR_ASSEMBLER_H_ |
OLD | NEW |