Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(71)

Side by Side Diff: src/code-stubs.cc

Issue 272513004: Reland r20974: Unify and simplify the FastCloneShallowArrayStub (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: This time it will work! Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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
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
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
OLDNEW
« no previous file with comments | « src/code-stubs.h ('k') | src/code-stubs-hydrogen.cc » ('j') | src/hydrogen.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698