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 347 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
358 | 358 |
359 | 359 |
360 // static | 360 // static |
361 Callable CodeFactory::ArgumentAdaptor(Isolate* isolate) { | 361 Callable CodeFactory::ArgumentAdaptor(Isolate* isolate) { |
362 return Callable(isolate->builtins()->ArgumentsAdaptorTrampoline(), | 362 return Callable(isolate->builtins()->ArgumentsAdaptorTrampoline(), |
363 ArgumentAdaptorDescriptor(isolate)); | 363 ArgumentAdaptorDescriptor(isolate)); |
364 } | 364 } |
365 | 365 |
366 | 366 |
367 // static | 367 // static |
368 Callable CodeFactory::Call(Isolate* isolate, ConvertReceiverMode mode) { | 368 Callable CodeFactory::Call(Isolate* isolate, ConvertReceiverMode mode, |
369 return Callable(isolate->builtins()->Call(mode), | 369 TailCallMode tail_call_mode) { |
| 370 return Callable(isolate->builtins()->Call(mode, tail_call_mode), |
370 CallTrampolineDescriptor(isolate)); | 371 CallTrampolineDescriptor(isolate)); |
371 } | 372 } |
372 | 373 |
373 | 374 |
374 // static | 375 // static |
375 Callable CodeFactory::CallFunction(Isolate* isolate, ConvertReceiverMode mode) { | 376 Callable CodeFactory::CallFunction(Isolate* isolate, ConvertReceiverMode mode) { |
376 return Callable(isolate->builtins()->CallFunction(mode), | 377 return Callable(isolate->builtins()->CallFunction(mode), |
377 CallTrampolineDescriptor(isolate)); | 378 CallTrampolineDescriptor(isolate)); |
378 } | 379 } |
379 | 380 |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
411 // static | 412 // static |
412 Callable CodeFactory::InterpreterCEntry(Isolate* isolate, int result_size) { | 413 Callable CodeFactory::InterpreterCEntry(Isolate* isolate, int result_size) { |
413 // Note: If we ever use fpregs in the interpreter then we will need to | 414 // Note: If we ever use fpregs in the interpreter then we will need to |
414 // save fpregs too. | 415 // save fpregs too. |
415 CEntryStub stub(isolate, result_size, kDontSaveFPRegs, kArgvInRegister); | 416 CEntryStub stub(isolate, result_size, kDontSaveFPRegs, kArgvInRegister); |
416 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); | 417 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); |
417 } | 418 } |
418 | 419 |
419 } // namespace internal | 420 } // namespace internal |
420 } // namespace v8 | 421 } // namespace v8 |
OLD | NEW |