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 1076 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1087 Node* GetProperty(Node* context, Node* receiver, Node* const name) { | 1087 Node* GetProperty(Node* context, Node* receiver, Node* const name) { |
1088 return CallStub(CodeFactory::GetProperty(isolate()), context, receiver, | 1088 return CallStub(CodeFactory::GetProperty(isolate()), context, receiver, |
1089 name); | 1089 name); |
1090 } | 1090 } |
1091 | 1091 |
1092 template <class... TArgs> | 1092 template <class... TArgs> |
1093 Node* CallBuiltin(Builtins::Name id, Node* context, TArgs... args) { | 1093 Node* CallBuiltin(Builtins::Name id, Node* context, TArgs... args) { |
1094 return CallStub(Builtins::CallableFor(isolate(), id), context, args...); | 1094 return CallStub(Builtins::CallableFor(isolate(), id), context, args...); |
1095 } | 1095 } |
1096 | 1096 |
| 1097 template <class... TArgs> |
| 1098 Node* TailCallBuiltin(Builtins::Name id, Node* context, TArgs... args) { |
| 1099 return TailCallStub(Builtins::CallableFor(isolate(), id), context, args...); |
| 1100 } |
| 1101 |
1097 void LoadPropertyFromFastObject(Node* object, Node* map, Node* descriptors, | 1102 void LoadPropertyFromFastObject(Node* object, Node* map, Node* descriptors, |
1098 Node* name_index, Variable* var_details, | 1103 Node* name_index, Variable* var_details, |
1099 Variable* var_value); | 1104 Variable* var_value); |
1100 | 1105 |
1101 void LoadPropertyFromNameDictionary(Node* dictionary, Node* entry, | 1106 void LoadPropertyFromNameDictionary(Node* dictionary, Node* entry, |
1102 Variable* var_details, | 1107 Variable* var_details, |
1103 Variable* var_value); | 1108 Variable* var_value); |
1104 | 1109 |
1105 void LoadPropertyFromGlobalDictionary(Node* dictionary, Node* entry, | 1110 void LoadPropertyFromGlobalDictionary(Node* dictionary, Node* entry, |
1106 Variable* var_details, | 1111 Variable* var_details, |
(...skipping 436 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1543 } | 1548 } |
1544 #else | 1549 #else |
1545 #define CSA_SLOW_ASSERT(csa, x) ((void)0) | 1550 #define CSA_SLOW_ASSERT(csa, x) ((void)0) |
1546 #endif | 1551 #endif |
1547 | 1552 |
1548 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); | 1553 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); |
1549 | 1554 |
1550 } // namespace internal | 1555 } // namespace internal |
1551 } // namespace v8 | 1556 } // namespace v8 |
1552 #endif // V8_CODE_STUB_ASSEMBLER_H_ | 1557 #endif // V8_CODE_STUB_ASSEMBLER_H_ |
OLD | NEW |