OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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/compiler/js-native-context-specialization.h" | 5 #include "src/compiler/js-native-context-specialization.h" |
6 | 6 |
7 #include "src/accessors.h" | 7 #include "src/accessors.h" |
8 #include "src/code-factory.h" | 8 #include "src/code-factory.h" |
9 #include "src/compilation-dependencies.h" | 9 #include "src/compilation-dependencies.h" |
10 #include "src/compiler/access-builder.h" | 10 #include "src/compiler/access-builder.h" |
(...skipping 1591 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1602 } | 1602 } |
1603 | 1603 |
1604 DCHECK_EQ(MONOMORPHIC, nexus.ic_state()); | 1604 DCHECK_EQ(MONOMORPHIC, nexus.ic_state()); |
1605 | 1605 |
1606 Map* map = nexus.FindFirstMap(); | 1606 Map* map = nexus.FindFirstMap(); |
1607 if (map == nullptr) { | 1607 if (map == nullptr) { |
1608 // Maps are weakly held in the type feedback vector, we may not have one. | 1608 // Maps are weakly held in the type feedback vector, we may not have one. |
1609 return NoChange(); | 1609 return NoChange(); |
1610 } | 1610 } |
1611 | 1611 |
1612 Handle<Map> receiver_map(nexus.FindFirstMap(), isolate()); | 1612 Handle<Map> receiver_map(map, isolate()); |
1613 Handle<Name> cached_name = | 1613 Handle<Name> cached_name = |
1614 handle(Name::cast(nexus.GetFeedbackExtra()), isolate()); | 1614 handle(Name::cast(nexus.GetFeedbackExtra()), isolate()); |
1615 | 1615 |
1616 PropertyAccessInfo access_info; | 1616 PropertyAccessInfo access_info; |
1617 AccessInfoFactory access_info_factory(dependencies(), native_context(), | 1617 AccessInfoFactory access_info_factory(dependencies(), native_context(), |
1618 graph()->zone()); | 1618 graph()->zone()); |
1619 if (!access_info_factory.ComputePropertyAccessInfo( | 1619 if (!access_info_factory.ComputePropertyAccessInfo( |
1620 receiver_map, cached_name, AccessMode::kStoreInLiteral, | 1620 receiver_map, cached_name, AccessMode::kStoreInLiteral, |
1621 &access_info)) { | 1621 &access_info)) { |
1622 return NoChange(); | 1622 return NoChange(); |
(...skipping 633 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2256 return jsgraph()->javascript(); | 2256 return jsgraph()->javascript(); |
2257 } | 2257 } |
2258 | 2258 |
2259 SimplifiedOperatorBuilder* JSNativeContextSpecialization::simplified() const { | 2259 SimplifiedOperatorBuilder* JSNativeContextSpecialization::simplified() const { |
2260 return jsgraph()->simplified(); | 2260 return jsgraph()->simplified(); |
2261 } | 2261 } |
2262 | 2262 |
2263 } // namespace compiler | 2263 } // namespace compiler |
2264 } // namespace internal | 2264 } // namespace internal |
2265 } // namespace v8 | 2265 } // namespace v8 |
OLD | NEW |