OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #include "src/code-factory.h" | 5 #include "src/code-factory.h" |
6 | 6 |
7 #include "src/bootstrapper.h" | 7 #include "src/bootstrapper.h" |
8 #include "src/ic/ic.h" | 8 #include "src/ic/ic.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
345 ConstructTrampolineDescriptor(isolate)); | 345 ConstructTrampolineDescriptor(isolate)); |
346 } | 346 } |
347 | 347 |
348 | 348 |
349 // static | 349 // static |
350 Callable CodeFactory::ConstructFunction(Isolate* isolate) { | 350 Callable CodeFactory::ConstructFunction(Isolate* isolate) { |
351 return Callable(isolate->builtins()->ConstructFunction(), | 351 return Callable(isolate->builtins()->ConstructFunction(), |
352 ConstructTrampolineDescriptor(isolate)); | 352 ConstructTrampolineDescriptor(isolate)); |
353 } | 353 } |
354 | 354 |
355 // static | |
356 Callable CodeFactory::InterpreterPushArgsAndCallIC( | |
357 Isolate* isolate, TailCallMode tail_call_mode) { | |
358 return Callable( | |
359 isolate->builtins()->InterpreterPushArgsAndCallIC(tail_call_mode), | |
360 InterpreterPushArgsAndCallICDescriptor(isolate)); | |
361 } | |
362 | 355 |
363 // static | 356 // static |
364 Callable CodeFactory::InterpreterPushArgsAndCall(Isolate* isolate, | 357 Callable CodeFactory::InterpreterPushArgsAndCall(Isolate* isolate, |
365 TailCallMode tail_call_mode) { | 358 TailCallMode tail_call_mode) { |
366 return Callable( | 359 return Callable( |
367 isolate->builtins()->InterpreterPushArgsAndCall(tail_call_mode), | 360 isolate->builtins()->InterpreterPushArgsAndCall(tail_call_mode), |
368 InterpreterPushArgsAndCallDescriptor(isolate)); | 361 InterpreterPushArgsAndCallDescriptor(isolate)); |
369 } | 362 } |
370 | 363 |
| 364 |
371 // static | 365 // static |
372 Callable CodeFactory::InterpreterPushArgsAndConstruct(Isolate* isolate) { | 366 Callable CodeFactory::InterpreterPushArgsAndConstruct(Isolate* isolate) { |
373 return Callable(isolate->builtins()->InterpreterPushArgsAndConstruct(), | 367 return Callable(isolate->builtins()->InterpreterPushArgsAndConstruct(), |
374 InterpreterPushArgsAndConstructDescriptor(isolate)); | 368 InterpreterPushArgsAndConstructDescriptor(isolate)); |
375 } | 369 } |
376 | 370 |
377 | 371 |
378 // static | 372 // static |
379 Callable CodeFactory::InterpreterCEntry(Isolate* isolate, int result_size) { | 373 Callable CodeFactory::InterpreterCEntry(Isolate* isolate, int result_size) { |
380 // Note: If we ever use fpregs in the interpreter then we will need to | 374 // Note: If we ever use fpregs in the interpreter then we will need to |
381 // save fpregs too. | 375 // save fpregs too. |
382 CEntryStub stub(isolate, result_size, kDontSaveFPRegs, kArgvInRegister); | 376 CEntryStub stub(isolate, result_size, kDontSaveFPRegs, kArgvInRegister); |
383 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); | 377 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); |
384 } | 378 } |
385 | 379 |
386 } // namespace internal | 380 } // namespace internal |
387 } // namespace v8 | 381 } // namespace v8 |
OLD | NEW |