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/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/accessors.h" | 7 #include "src/accessors.h" |
8 #include "src/allocation-site-scopes.h" | 8 #include "src/allocation-site-scopes.h" |
9 #include "src/api.h" | 9 #include "src/api.h" |
10 #include "src/arguments.h" | 10 #include "src/arguments.h" |
(...skipping 6766 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6777 | 6777 |
6778 int descriptor_number = result.GetDescriptorIndex(); | 6778 int descriptor_number = result.GetDescriptorIndex(); |
6779 | 6779 |
6780 object->map()->LookupTransition(*object, *name, &result); | 6780 object->map()->LookupTransition(*object, *name, &result); |
6781 | 6781 |
6782 if (result.IsFound()) { | 6782 if (result.IsFound()) { |
6783 Handle<Map> target(result.GetTransitionTarget()); | 6783 Handle<Map> target(result.GetTransitionTarget()); |
6784 ASSERT(target->NumberOfOwnDescriptors() == | 6784 ASSERT(target->NumberOfOwnDescriptors() == |
6785 object->map()->NumberOfOwnDescriptors()); | 6785 object->map()->NumberOfOwnDescriptors()); |
6786 // This works since descriptors are sorted in order of addition. | 6786 // This works since descriptors are sorted in order of addition. |
6787 ASSERT(object->map()->instance_descriptors()-> | 6787 ASSERT(Name::Equals(handle(object->map()->instance_descriptors()-> |
6788 GetKey(descriptor_number) == *name); | 6788 GetKey(descriptor_number)), name)); |
6789 return TryAccessorTransition(object, target, descriptor_number, | 6789 return TryAccessorTransition(object, target, descriptor_number, |
6790 component, accessor, attributes); | 6790 component, accessor, attributes); |
6791 } | 6791 } |
6792 } else { | 6792 } else { |
6793 // If not, lookup a transition. | 6793 // If not, lookup a transition. |
6794 object->map()->LookupTransition(*object, *name, &result); | 6794 object->map()->LookupTransition(*object, *name, &result); |
6795 | 6795 |
6796 // If there is a transition, try to follow it. | 6796 // If there is a transition, try to follow it. |
6797 if (result.IsFound()) { | 6797 if (result.IsFound()) { |
6798 Handle<Map> target(result.GetTransitionTarget()); | 6798 Handle<Map> target(result.GetTransitionTarget()); |
(...skipping 10201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
17000 #define ERROR_MESSAGES_TEXTS(C, T) T, | 17000 #define ERROR_MESSAGES_TEXTS(C, T) T, |
17001 static const char* error_messages_[] = { | 17001 static const char* error_messages_[] = { |
17002 ERROR_MESSAGES_LIST(ERROR_MESSAGES_TEXTS) | 17002 ERROR_MESSAGES_LIST(ERROR_MESSAGES_TEXTS) |
17003 }; | 17003 }; |
17004 #undef ERROR_MESSAGES_TEXTS | 17004 #undef ERROR_MESSAGES_TEXTS |
17005 return error_messages_[reason]; | 17005 return error_messages_[reason]; |
17006 } | 17006 } |
17007 | 17007 |
17008 | 17008 |
17009 } } // namespace v8::internal | 17009 } } // namespace v8::internal |
OLD | NEW |