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 1006 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1017 | 1017 |
1018 // Tries to get {object}'s own {unique_name} property value. If the property | 1018 // Tries to get {object}'s own {unique_name} property value. If the property |
1019 // is an accessor then it also calls a getter. If the property is a double | 1019 // is an accessor then it also calls a getter. If the property is a double |
1020 // field it re-wraps value in an immutable heap number. | 1020 // field it re-wraps value in an immutable heap number. |
1021 void TryGetOwnProperty(Node* context, Node* receiver, Node* object, Node* map, | 1021 void TryGetOwnProperty(Node* context, Node* receiver, Node* object, Node* map, |
1022 Node* instance_type, Node* unique_name, | 1022 Node* instance_type, Node* unique_name, |
1023 Label* if_found, Variable* var_value, | 1023 Label* if_found, Variable* var_value, |
1024 Label* if_not_found, Label* if_bailout); | 1024 Label* if_not_found, Label* if_bailout); |
1025 | 1025 |
1026 Node* GetProperty(Node* context, Node* receiver, Handle<Name> name) { | 1026 Node* GetProperty(Node* context, Node* receiver, Handle<Name> name) { |
| 1027 return GetProperty(context, receiver, HeapConstant(name)); |
| 1028 } |
| 1029 |
| 1030 Node* GetProperty(Node* context, Node* receiver, Node* const name) { |
1027 return CallStub(CodeFactory::GetProperty(isolate()), context, receiver, | 1031 return CallStub(CodeFactory::GetProperty(isolate()), context, receiver, |
1028 HeapConstant(name)); | 1032 name); |
1029 } | 1033 } |
1030 | 1034 |
1031 void LoadPropertyFromFastObject(Node* object, Node* map, Node* descriptors, | 1035 void LoadPropertyFromFastObject(Node* object, Node* map, Node* descriptors, |
1032 Node* name_index, Variable* var_details, | 1036 Node* name_index, Variable* var_details, |
1033 Variable* var_value); | 1037 Variable* var_value); |
1034 | 1038 |
1035 void LoadPropertyFromNameDictionary(Node* dictionary, Node* entry, | 1039 void LoadPropertyFromNameDictionary(Node* dictionary, Node* entry, |
1036 Variable* var_details, | 1040 Variable* var_details, |
1037 Variable* var_value); | 1041 Variable* var_value); |
1038 | 1042 |
(...skipping 389 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1428 } | 1432 } |
1429 #else | 1433 #else |
1430 #define CSA_SLOW_ASSERT(csa, x) ((void)0) | 1434 #define CSA_SLOW_ASSERT(csa, x) ((void)0) |
1431 #endif | 1435 #endif |
1432 | 1436 |
1433 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); | 1437 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); |
1434 | 1438 |
1435 } // namespace internal | 1439 } // namespace internal |
1436 } // namespace v8 | 1440 } // namespace v8 |
1437 #endif // V8_CODE_STUB_ASSEMBLER_H_ | 1441 #endif // V8_CODE_STUB_ASSEMBLER_H_ |
OLD | NEW |