OLD | NEW |
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/crankshaft/hydrogen.h" | 5 #include "src/crankshaft/hydrogen.h" |
6 | 6 |
7 #include <sstream> | 7 #include <sstream> |
8 | 8 |
9 #include "src/allocation-site-scopes.h" | 9 #include "src/allocation-site-scopes.h" |
10 #include "src/ast/ast-numbering.h" | 10 #include "src/ast/ast-numbering.h" |
(...skipping 6389 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6400 DCHECK(field_type_.IsHeapObject()); | 6400 DCHECK(field_type_.IsHeapObject()); |
6401 | 6401 |
6402 // Add dependency on the map that introduced the field. | 6402 // Add dependency on the map that introduced the field. |
6403 top_info()->dependencies()->AssumeFieldType(GetFieldOwnerFromMap(map)); | 6403 top_info()->dependencies()->AssumeFieldType(GetFieldOwnerFromMap(map)); |
6404 return true; | 6404 return true; |
6405 } | 6405 } |
6406 | 6406 |
6407 | 6407 |
6408 bool HOptimizedGraphBuilder::PropertyAccessInfo::LookupInPrototypes() { | 6408 bool HOptimizedGraphBuilder::PropertyAccessInfo::LookupInPrototypes() { |
6409 Handle<Map> map = this->map(); | 6409 Handle<Map> map = this->map(); |
| 6410 if (name_->IsPrivate()) { |
| 6411 NotFound(); |
| 6412 return !map->has_hidden_prototype(); |
| 6413 } |
6410 | 6414 |
6411 while (map->prototype()->IsJSObject()) { | 6415 while (map->prototype()->IsJSObject()) { |
6412 holder_ = handle(JSObject::cast(map->prototype())); | 6416 holder_ = handle(JSObject::cast(map->prototype())); |
6413 if (holder_->map()->is_deprecated()) { | 6417 if (holder_->map()->is_deprecated()) { |
6414 JSObject::TryMigrateInstance(holder_); | 6418 JSObject::TryMigrateInstance(holder_); |
6415 } | 6419 } |
6416 map = Handle<Map>(holder_->map()); | 6420 map = Handle<Map>(holder_->map()); |
6417 if (!CanInlinePropertyAccess(map)) { | 6421 if (!CanInlinePropertyAccess(map)) { |
6418 NotFound(); | 6422 NotFound(); |
6419 return false; | 6423 return false; |
(...skipping 7218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
13638 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); | 13642 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); |
13639 } | 13643 } |
13640 | 13644 |
13641 #ifdef DEBUG | 13645 #ifdef DEBUG |
13642 graph_->Verify(false); // No full verify. | 13646 graph_->Verify(false); // No full verify. |
13643 #endif | 13647 #endif |
13644 } | 13648 } |
13645 | 13649 |
13646 } // namespace internal | 13650 } // namespace internal |
13647 } // namespace v8 | 13651 } // namespace v8 |
OLD | NEW |