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 537 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
548 ConstructTrampolineDescriptor(isolate)); | 548 ConstructTrampolineDescriptor(isolate)); |
549 } | 549 } |
550 | 550 |
551 | 551 |
552 // static | 552 // static |
553 Callable CodeFactory::ConstructFunction(Isolate* isolate) { | 553 Callable CodeFactory::ConstructFunction(Isolate* isolate) { |
554 return Callable(isolate->builtins()->ConstructFunction(), | 554 return Callable(isolate->builtins()->ConstructFunction(), |
555 ConstructTrampolineDescriptor(isolate)); | 555 ConstructTrampolineDescriptor(isolate)); |
556 } | 556 } |
557 | 557 |
| 558 // static |
| 559 Callable CodeFactory::HasProperty(Isolate* isolate) { |
| 560 HasPropertyStub stub(isolate); |
| 561 return Callable(stub.GetCode(), stub.GetCallInterfaceDescriptor()); |
| 562 } |
558 | 563 |
559 // static | 564 // static |
560 Callable CodeFactory::InterpreterPushArgsAndCall(Isolate* isolate, | 565 Callable CodeFactory::InterpreterPushArgsAndCall(Isolate* isolate, |
561 TailCallMode tail_call_mode) { | 566 TailCallMode tail_call_mode) { |
562 return Callable( | 567 return Callable( |
563 isolate->builtins()->InterpreterPushArgsAndCall(tail_call_mode), | 568 isolate->builtins()->InterpreterPushArgsAndCall(tail_call_mode), |
564 InterpreterPushArgsAndCallDescriptor(isolate)); | 569 InterpreterPushArgsAndCallDescriptor(isolate)); |
565 } | 570 } |
566 | 571 |
567 | 572 |
568 // static | 573 // static |
569 Callable CodeFactory::InterpreterPushArgsAndConstruct(Isolate* isolate) { | 574 Callable CodeFactory::InterpreterPushArgsAndConstruct(Isolate* isolate) { |
570 return Callable(isolate->builtins()->InterpreterPushArgsAndConstruct(), | 575 return Callable(isolate->builtins()->InterpreterPushArgsAndConstruct(), |
571 InterpreterPushArgsAndConstructDescriptor(isolate)); | 576 InterpreterPushArgsAndConstructDescriptor(isolate)); |
572 } | 577 } |
573 | 578 |
574 | 579 |
575 // static | 580 // static |
576 Callable CodeFactory::InterpreterCEntry(Isolate* isolate, int result_size) { | 581 Callable CodeFactory::InterpreterCEntry(Isolate* isolate, int result_size) { |
577 // Note: If we ever use fpregs in the interpreter then we will need to | 582 // Note: If we ever use fpregs in the interpreter then we will need to |
578 // save fpregs too. | 583 // save fpregs too. |
579 CEntryStub stub(isolate, result_size, kDontSaveFPRegs, kArgvInRegister); | 584 CEntryStub stub(isolate, result_size, kDontSaveFPRegs, kArgvInRegister); |
580 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); | 585 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); |
581 } | 586 } |
582 | 587 |
583 } // namespace internal | 588 } // namespace internal |
584 } // namespace v8 | 589 } // namespace v8 |
OLD | NEW |