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

Side by Side Diff: src/ic.cc

Issue 429543004: Only generate a single normal IC per kind per slow-mode map. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Port comment Created 6 years, 4 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
« no previous file with comments | « src/ia32/stub-cache-ia32.cc ('k') | src/stub-cache.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "src/v8.h" 5 #include "src/v8.h"
6 6
7 #include "src/accessors.h" 7 #include "src/accessors.h"
8 #include "src/api.h" 8 #include "src/api.h"
9 #include "src/arguments.h" 9 #include "src/arguments.h"
10 #include "src/codegen.h" 10 #include "src/codegen.h"
(...skipping 706 matching lines...) Expand 10 before | Expand all | Expand 10 after
717 717
718 template 718 template
719 Type* IC::MapToType<Type>(Handle<Map> map, Zone* zone); 719 Type* IC::MapToType<Type>(Handle<Map> map, Zone* zone);
720 720
721 721
722 template 722 template
723 Handle<HeapType> IC::MapToType<HeapType>(Handle<Map> map, Isolate* region); 723 Handle<HeapType> IC::MapToType<HeapType>(Handle<Map> map, Isolate* region);
724 724
725 725
726 void IC::UpdateMonomorphicIC(Handle<Code> handler, Handle<String> name) { 726 void IC::UpdateMonomorphicIC(Handle<Code> handler, Handle<String> name) {
727 if (!handler->is_handler()) return set_target(*handler); 727 ASSERT(handler->is_handler());
728 Handle<Code> ic = PropertyICCompiler::ComputeMonomorphic( 728 Handle<Code> ic = PropertyICCompiler::ComputeMonomorphic(
729 kind(), name, receiver_type(), handler, extra_ic_state()); 729 kind(), name, receiver_type(), handler, extra_ic_state());
730 set_target(*ic); 730 set_target(*ic);
731 } 731 }
732 732
733 733
734 void IC::CopyICToMegamorphicCache(Handle<String> name) { 734 void IC::CopyICToMegamorphicCache(Handle<String> name) {
735 TypeHandleList types; 735 TypeHandleList types;
736 CodeHandleList handlers; 736 CodeHandleList handlers;
737 TargetTypes(&types); 737 TargetTypes(&types);
(...skipping 2310 matching lines...) Expand 10 before | Expand all | Expand 10 after
3048 #undef ADDR 3048 #undef ADDR
3049 }; 3049 };
3050 3050
3051 3051
3052 Address IC::AddressFromUtilityId(IC::UtilityId id) { 3052 Address IC::AddressFromUtilityId(IC::UtilityId id) {
3053 return IC_utilities[id]; 3053 return IC_utilities[id];
3054 } 3054 }
3055 3055
3056 3056
3057 } } // namespace v8::internal 3057 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/ia32/stub-cache-ia32.cc ('k') | src/stub-cache.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698