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 #include "v8.h" | 5 #include "v8.h" |
6 | 6 |
7 #include "bootstrapper.h" | 7 #include "bootstrapper.h" |
8 #include "code-stubs.h" | 8 #include "code-stubs.h" |
9 #include "cpu-profiler.h" | 9 #include "cpu-profiler.h" |
10 #include "stub-cache.h" | 10 #include "stub-cache.h" |
11 #include "factory.h" | 11 #include "factory.h" |
12 #include "gdb-jit.h" | 12 #include "gdb-jit.h" |
13 #include "macro-assembler.h" | 13 #include "macro-assembler.h" |
14 | 14 |
15 namespace v8 { | 15 namespace v8 { |
16 namespace internal { | 16 namespace internal { |
17 | 17 |
18 | 18 |
19 CodeStubInterfaceDescriptor::CodeStubInterfaceDescriptor() | 19 CodeStubInterfaceDescriptor::CodeStubInterfaceDescriptor() |
20 : register_param_count_(-1), | 20 : register_param_count_(-1), |
21 stack_parameter_count_(no_reg), | 21 stack_parameter_count_(no_reg), |
22 hint_stack_parameter_count_(-1), | 22 hint_stack_parameter_count_(-1), |
23 function_mode_(NOT_JS_FUNCTION_STUB_MODE), | 23 function_mode_(NOT_JS_FUNCTION_STUB_MODE), |
24 register_params_(NULL), | 24 register_params_(NULL), |
| 25 register_param_representations_(NULL), |
25 deoptimization_handler_(NULL), | 26 deoptimization_handler_(NULL), |
26 handler_arguments_mode_(DONT_PASS_ARGUMENTS), | 27 handler_arguments_mode_(DONT_PASS_ARGUMENTS), |
27 miss_handler_(), | 28 miss_handler_(), |
28 has_miss_handler_(false) { } | 29 has_miss_handler_(false) { } |
29 | 30 |
30 | 31 |
31 bool CodeStub::FindCodeInCache(Code** code_out) { | 32 bool CodeStub::FindCodeInCache(Code** code_out) { |
32 UnseededNumberDictionary* stubs = isolate()->heap()->code_stubs(); | 33 UnseededNumberDictionary* stubs = isolate()->heap()->code_stubs(); |
33 int index = stubs->FindEntry(GetKey()); | 34 int index = stubs->FindEntry(GetKey()); |
34 if (index != UnseededNumberDictionary::kNotFound) { | 35 if (index != UnseededNumberDictionary::kNotFound) { |
(...skipping 691 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
726 | 727 |
727 | 728 |
728 void FastNewContextStub::InstallDescriptors(Isolate* isolate) { | 729 void FastNewContextStub::InstallDescriptors(Isolate* isolate) { |
729 FastNewContextStub stub(isolate, FastNewContextStub::kMaximumSlots); | 730 FastNewContextStub stub(isolate, FastNewContextStub::kMaximumSlots); |
730 InstallDescriptor(isolate, &stub); | 731 InstallDescriptor(isolate, &stub); |
731 } | 732 } |
732 | 733 |
733 | 734 |
734 // static | 735 // static |
735 void FastCloneShallowArrayStub::InstallDescriptors(Isolate* isolate) { | 736 void FastCloneShallowArrayStub::InstallDescriptors(Isolate* isolate) { |
736 FastCloneShallowArrayStub stub(isolate, | 737 FastCloneShallowArrayStub stub(isolate, DONT_TRACK_ALLOCATION_SITE); |
737 FastCloneShallowArrayStub::CLONE_ELEMENTS, | |
738 DONT_TRACK_ALLOCATION_SITE, 0); | |
739 InstallDescriptor(isolate, &stub); | 738 InstallDescriptor(isolate, &stub); |
740 } | 739 } |
741 | 740 |
742 | 741 |
743 // static | 742 // static |
744 void BinaryOpICStub::InstallDescriptors(Isolate* isolate) { | 743 void BinaryOpICStub::InstallDescriptors(Isolate* isolate) { |
745 BinaryOpICStub stub(isolate, Token::ADD, NO_OVERWRITE); | 744 BinaryOpICStub stub(isolate, Token::ADD, NO_OVERWRITE); |
746 InstallDescriptor(isolate, &stub); | 745 InstallDescriptor(isolate, &stub); |
747 } | 746 } |
748 | 747 |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
799 InstallDescriptor(isolate, &stub3); | 798 InstallDescriptor(isolate, &stub3); |
800 } | 799 } |
801 | 800 |
802 InternalArrayConstructorStub::InternalArrayConstructorStub( | 801 InternalArrayConstructorStub::InternalArrayConstructorStub( |
803 Isolate* isolate) : PlatformCodeStub(isolate) { | 802 Isolate* isolate) : PlatformCodeStub(isolate) { |
804 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); | 803 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); |
805 } | 804 } |
806 | 805 |
807 | 806 |
808 } } // namespace v8::internal | 807 } } // namespace v8::internal |
OLD | NEW |