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 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
353 | 353 |
354 // static | 354 // static |
355 Callable CodeFactory::InterpreterPushArgsAndConstruct(Isolate* isolate) { | 355 Callable CodeFactory::InterpreterPushArgsAndConstruct(Isolate* isolate) { |
356 return Callable(isolate->builtins()->InterpreterPushArgsAndConstruct(), | 356 return Callable(isolate->builtins()->InterpreterPushArgsAndConstruct(), |
357 InterpreterPushArgsAndConstructDescriptor(isolate)); | 357 InterpreterPushArgsAndConstructDescriptor(isolate)); |
358 } | 358 } |
359 | 359 |
360 | 360 |
361 // static | 361 // static |
362 Callable CodeFactory::InterpreterCEntry(Isolate* isolate) { | 362 Callable CodeFactory::InterpreterCEntry(Isolate* isolate) { |
363 // TODO(rmcilroy): Deal with runtime functions that return two values. | |
364 // Note: If we ever use fpregs in the interpreter then we will need to | 363 // Note: If we ever use fpregs in the interpreter then we will need to |
365 // save fpregs too. | 364 // save fpregs too. |
366 CEntryStub stub(isolate, 1, kDontSaveFPRegs, kArgvInRegister); | 365 CEntryStub stub(isolate, 1, kDontSaveFPRegs, kArgvInRegister); |
367 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); | 366 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); |
368 } | 367 } |
369 | 368 |
| 369 |
| 370 // static |
| 371 Callable CodeFactory::InterpreterCEntryPair(Isolate* isolate) { |
| 372 // Note: If we ever use fpregs in the interpreter then we will need to |
| 373 // save fpregs too. |
| 374 CEntryStub stub(isolate, 2, kDontSaveFPRegs, kArgvInRegister); |
| 375 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); |
| 376 } |
| 377 |
370 } // namespace internal | 378 } // namespace internal |
371 } // namespace v8 | 379 } // namespace v8 |
OLD | NEW |