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_CODE_STUB_ASSEMBLER_H_ | 5 #ifndef V8_CODE_STUB_ASSEMBLER_H_ |
6 #define V8_CODE_STUB_ASSEMBLER_H_ | 6 #define V8_CODE_STUB_ASSEMBLER_H_ |
7 | 7 |
8 #include <functional> | 8 #include <functional> |
9 | 9 |
10 #include "src/compiler/code-assembler.h" | 10 #include "src/compiler/code-assembler.h" |
(...skipping 957 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
968 | 968 |
969 // Load type feedback vector from the stub caller's frame. | 969 // Load type feedback vector from the stub caller's frame. |
970 Node* LoadTypeFeedbackVectorForStub(); | 970 Node* LoadTypeFeedbackVectorForStub(); |
971 | 971 |
972 // Update the type feedback vector. | 972 // Update the type feedback vector. |
973 void UpdateFeedback(Node* feedback, Node* type_feedback_vector, | 973 void UpdateFeedback(Node* feedback, Node* type_feedback_vector, |
974 Node* slot_id); | 974 Node* slot_id); |
975 | 975 |
976 Node* LoadReceiverMap(Node* receiver); | 976 Node* LoadReceiverMap(Node* receiver); |
977 | 977 |
978 // Extends properties backing store by JSObject::kFieldsAdded elements. | |
979 void ExtendPropertiesBackingStore(Node* object); | |
980 | |
981 Node* PrepareValueForWrite(Node* value, Representation representation, | |
982 Label* bailout); | |
983 | |
984 void StoreNamedField(Node* object, FieldIndex index, | |
985 Representation representation, Node* value, | |
986 bool transition_to_field); | |
987 | |
988 void StoreNamedField(Node* object, Node* offset, bool is_inobject, | |
989 Representation representation, Node* value, | |
990 bool transition_to_field); | |
991 | |
992 // Emits keyed sloppy arguments load. Returns either the loaded value. | 978 // Emits keyed sloppy arguments load. Returns either the loaded value. |
993 Node* LoadKeyedSloppyArguments(Node* receiver, Node* key, Label* bailout) { | 979 Node* LoadKeyedSloppyArguments(Node* receiver, Node* key, Label* bailout) { |
994 return EmitKeyedSloppyArguments(receiver, key, nullptr, bailout); | 980 return EmitKeyedSloppyArguments(receiver, key, nullptr, bailout); |
995 } | 981 } |
996 | 982 |
997 // Emits keyed sloppy arguments store. | 983 // Emits keyed sloppy arguments store. |
998 void StoreKeyedSloppyArguments(Node* receiver, Node* key, Node* value, | 984 void StoreKeyedSloppyArguments(Node* receiver, Node* key, Node* value, |
999 Label* bailout) { | 985 Label* bailout) { |
1000 DCHECK_NOT_NULL(value); | 986 DCHECK_NOT_NULL(value); |
1001 EmitKeyedSloppyArguments(receiver, key, value, bailout); | 987 EmitKeyedSloppyArguments(receiver, key, value, bailout); |
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1269 } | 1255 } |
1270 #else | 1256 #else |
1271 #define CSA_SLOW_ASSERT(csa, x) ((void)0) | 1257 #define CSA_SLOW_ASSERT(csa, x) ((void)0) |
1272 #endif | 1258 #endif |
1273 | 1259 |
1274 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); | 1260 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); |
1275 | 1261 |
1276 } // namespace internal | 1262 } // namespace internal |
1277 } // namespace v8 | 1263 } // namespace v8 |
1278 #endif // V8_CODE_STUB_ASSEMBLER_H_ | 1264 #endif // V8_CODE_STUB_ASSEMBLER_H_ |
OLD | NEW |