OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_FACTORY_H_ | 5 #ifndef V8_CODE_FACTORY_H_ |
6 #define V8_CODE_FACTORY_H_ | 6 #define V8_CODE_FACTORY_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/assembler.h" | 9 #include "src/assembler.h" |
10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 static Callable AllocateHeapNumber(Isolate* isolate); | 158 static Callable AllocateHeapNumber(Isolate* isolate); |
159 #define SIMD128_ALLOC(TYPE, Type, type, lane_count, lane_type) \ | 159 #define SIMD128_ALLOC(TYPE, Type, type, lane_count, lane_type) \ |
160 static Callable Allocate##Type(Isolate* isolate); | 160 static Callable Allocate##Type(Isolate* isolate); |
161 SIMD128_TYPES(SIMD128_ALLOC) | 161 SIMD128_TYPES(SIMD128_ALLOC) |
162 #undef SIMD128_ALLOC | 162 #undef SIMD128_ALLOC |
163 | 163 |
164 static Callable ArgumentAdaptor(Isolate* isolate); | 164 static Callable ArgumentAdaptor(Isolate* isolate); |
165 static Callable Call(Isolate* isolate, | 165 static Callable Call(Isolate* isolate, |
166 ConvertReceiverMode mode = ConvertReceiverMode::kAny, | 166 ConvertReceiverMode mode = ConvertReceiverMode::kAny, |
167 TailCallMode tail_call_mode = TailCallMode::kDisallow); | 167 TailCallMode tail_call_mode = TailCallMode::kDisallow); |
| 168 static Callable CallWithSpread(Isolate* isolate); |
168 static Callable CallFunction( | 169 static Callable CallFunction( |
169 Isolate* isolate, ConvertReceiverMode mode = ConvertReceiverMode::kAny); | 170 Isolate* isolate, ConvertReceiverMode mode = ConvertReceiverMode::kAny); |
170 static Callable Construct(Isolate* isolate); | 171 static Callable Construct(Isolate* isolate); |
171 static Callable ConstructWithSpread(Isolate* isolate); | 172 static Callable ConstructWithSpread(Isolate* isolate); |
172 static Callable ConstructFunction(Isolate* isolate); | 173 static Callable ConstructFunction(Isolate* isolate); |
173 static Callable CreateIterResultObject(Isolate* isolate); | 174 static Callable CreateIterResultObject(Isolate* isolate); |
174 static Callable HasProperty(Isolate* isolate); | 175 static Callable HasProperty(Isolate* isolate); |
175 static Callable ForInFilter(Isolate* isolate); | 176 static Callable ForInFilter(Isolate* isolate); |
176 | 177 |
177 static Callable InterpreterPushArgsAndCall( | 178 static Callable InterpreterPushArgsAndCall(Isolate* isolate, |
178 Isolate* isolate, TailCallMode tail_call_mode, | 179 TailCallMode tail_call_mode, |
179 CallableType function_type = CallableType::kAny); | 180 InterpreterPushArgsMode mode); |
180 static Callable InterpreterPushArgsAndConstruct(Isolate* isolate, | 181 static Callable InterpreterPushArgsAndConstruct(Isolate* isolate, |
181 PushArgsConstructMode mode); | 182 InterpreterPushArgsMode mode); |
182 static Callable InterpreterPushArgsAndConstructArray(Isolate* isolate); | 183 static Callable InterpreterPushArgsAndConstructArray(Isolate* isolate); |
183 static Callable InterpreterCEntry(Isolate* isolate, int result_size = 1); | 184 static Callable InterpreterCEntry(Isolate* isolate, int result_size = 1); |
184 static Callable InterpreterOnStackReplacement(Isolate* isolate); | 185 static Callable InterpreterOnStackReplacement(Isolate* isolate); |
185 | 186 |
186 static Callable ArrayPush(Isolate* isolate); | 187 static Callable ArrayPush(Isolate* isolate); |
187 static Callable FunctionPrototypeBind(Isolate* isolate); | 188 static Callable FunctionPrototypeBind(Isolate* isolate); |
188 static Callable PromiseHandleReject(Isolate* isolate); | 189 static Callable PromiseHandleReject(Isolate* isolate); |
189 }; | 190 }; |
190 | 191 |
191 } // namespace internal | 192 } // namespace internal |
192 } // namespace v8 | 193 } // namespace v8 |
193 | 194 |
194 #endif // V8_CODE_FACTORY_H_ | 195 #endif // V8_CODE_FACTORY_H_ |
OLD | NEW |