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

Side by Side Diff: src/hydrogen.cc

Issue 1038313004: fix special index parsing (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: NaN test Created 5 years, 8 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
« no previous file with comments | « src/conversions.cc ('k') | src/lookup.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 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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/hydrogen.h" 5 #include "src/hydrogen.h"
6 6
7 #include <sstream> 7 #include <sstream>
8 8
9 #include "src/v8.h" 9 #include "src/v8.h"
10 10
(...skipping 6048 matching lines...) Expand 10 before | Expand all | Expand 10 after
6059 LookupDescriptor(*map, *name_); 6059 LookupDescriptor(*map, *name_);
6060 if (IsFound()) return LoadResult(map); 6060 if (IsFound()) return LoadResult(map);
6061 } 6061 }
6062 NotFound(); 6062 NotFound();
6063 return true; 6063 return true;
6064 } 6064 }
6065 6065
6066 6066
6067 bool HOptimizedGraphBuilder::PropertyAccessInfo::IsIntegerIndexedExotic() { 6067 bool HOptimizedGraphBuilder::PropertyAccessInfo::IsIntegerIndexedExotic() {
6068 InstanceType instance_type = map_->instance_type(); 6068 InstanceType instance_type = map_->instance_type();
6069 return instance_type == JS_TYPED_ARRAY_TYPE && IsNonArrayIndexInteger(*name_); 6069 return instance_type == JS_TYPED_ARRAY_TYPE &&
6070 IsSpecialIndex(isolate()->unicode_cache(), *name_);
6070 } 6071 }
6071 6072
6072 6073
6073 bool HOptimizedGraphBuilder::PropertyAccessInfo::CanAccessMonomorphic() { 6074 bool HOptimizedGraphBuilder::PropertyAccessInfo::CanAccessMonomorphic() {
6074 if (!CanInlinePropertyAccess(map_)) return false; 6075 if (!CanInlinePropertyAccess(map_)) return false;
6075 if (IsJSObjectFieldAccessor()) return IsLoad(); 6076 if (IsJSObjectFieldAccessor()) return IsLoad();
6076 if (map_->function_with_prototype() && !map_->has_non_instance_prototype() && 6077 if (map_->function_with_prototype() && !map_->has_non_instance_prototype() &&
6077 name_.is_identical_to(isolate()->factory()->prototype_string())) { 6078 name_.is_identical_to(isolate()->factory()->prototype_string())) {
6078 return IsLoad(); 6079 return IsLoad();
6079 } 6080 }
(...skipping 7314 matching lines...) Expand 10 before | Expand all | Expand 10 after
13394 if (ShouldProduceTraceOutput()) { 13395 if (ShouldProduceTraceOutput()) {
13395 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); 13396 isolate()->GetHTracer()->TraceHydrogen(name(), graph_);
13396 } 13397 }
13397 13398
13398 #ifdef DEBUG 13399 #ifdef DEBUG
13399 graph_->Verify(false); // No full verify. 13400 graph_->Verify(false); // No full verify.
13400 #endif 13401 #endif
13401 } 13402 }
13402 13403
13403 } } // namespace v8::internal 13404 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/conversions.cc ('k') | src/lookup.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698