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

Side by Side Diff: src/objects-inl.h

Issue 2405213002: V8 support for cached accessors. (Closed)
Patch Set: Centralized lookup in LookupIterator::TryLookupCacheProperty. Also rebase. Created 4 years, 2 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
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 // Review notes: 5 // Review notes:
6 // 6 //
7 // - The use of macros in these inline functions may seem superfluous 7 // - The use of macros in these inline functions may seem superfluous
8 // but it is absolutely needed to make sure gcc generates optimal 8 // but it is absolutely needed to make sure gcc generates optimal
9 // code. gcc is not happy when attempting to inline too deep. 9 // code. gcc is not happy when attempting to inline too deep.
10 // 10 //
(...skipping 5845 matching lines...) Expand 10 before | Expand all | Expand 10 after
5856 kInstanceTemplateOffset) 5856 kInstanceTemplateOffset)
5857 ACCESSORS(FunctionTemplateInfo, class_name, Object, kClassNameOffset) 5857 ACCESSORS(FunctionTemplateInfo, class_name, Object, kClassNameOffset)
5858 ACCESSORS(FunctionTemplateInfo, signature, Object, kSignatureOffset) 5858 ACCESSORS(FunctionTemplateInfo, signature, Object, kSignatureOffset)
5859 ACCESSORS(FunctionTemplateInfo, instance_call_handler, Object, 5859 ACCESSORS(FunctionTemplateInfo, instance_call_handler, Object,
5860 kInstanceCallHandlerOffset) 5860 kInstanceCallHandlerOffset)
5861 ACCESSORS(FunctionTemplateInfo, access_check_info, Object, 5861 ACCESSORS(FunctionTemplateInfo, access_check_info, Object,
5862 kAccessCheckInfoOffset) 5862 kAccessCheckInfoOffset)
5863 ACCESSORS(FunctionTemplateInfo, shared_function_info, Object, 5863 ACCESSORS(FunctionTemplateInfo, shared_function_info, Object,
5864 kSharedFunctionInfoOffset) 5864 kSharedFunctionInfoOffset)
5865 5865
5866 ACCESSORS(FunctionTemplateInfo, cache_property, Object, kCachePropertyOffset)
Toon Verwaest 2016/10/21 08:22:14 cached_property or property_cache? What about cach
vogelheim 2016/11/03 16:12:24 I picked cached_property_name. :) Every other fun
5867
5866 SMI_ACCESSORS(FunctionTemplateInfo, flag, kFlagOffset) 5868 SMI_ACCESSORS(FunctionTemplateInfo, flag, kFlagOffset)
5867 5869
5868 ACCESSORS(ObjectTemplateInfo, constructor, Object, kConstructorOffset) 5870 ACCESSORS(ObjectTemplateInfo, constructor, Object, kConstructorOffset)
5869 ACCESSORS(ObjectTemplateInfo, data, Object, kDataOffset) 5871 ACCESSORS(ObjectTemplateInfo, data, Object, kDataOffset)
5870 5872
5871 int ObjectTemplateInfo::internal_field_count() const { 5873 int ObjectTemplateInfo::internal_field_count() const {
5872 Object* value = data(); 5874 Object* value = data();
5873 DCHECK(value->IsSmi()); 5875 DCHECK(value->IsSmi());
5874 return InternalFieldCount::decode(Smi::cast(value)->value()); 5876 return InternalFieldCount::decode(Smi::cast(value)->value());
5875 } 5877 }
(...skipping 2538 matching lines...) Expand 10 before | Expand all | Expand 10 after
8414 #undef WRITE_INT64_FIELD 8416 #undef WRITE_INT64_FIELD
8415 #undef READ_BYTE_FIELD 8417 #undef READ_BYTE_FIELD
8416 #undef WRITE_BYTE_FIELD 8418 #undef WRITE_BYTE_FIELD
8417 #undef NOBARRIER_READ_BYTE_FIELD 8419 #undef NOBARRIER_READ_BYTE_FIELD
8418 #undef NOBARRIER_WRITE_BYTE_FIELD 8420 #undef NOBARRIER_WRITE_BYTE_FIELD
8419 8421
8420 } // namespace internal 8422 } // namespace internal
8421 } // namespace v8 8423 } // namespace v8
8422 8424
8423 #endif // V8_OBJECTS_INL_H_ 8425 #endif // V8_OBJECTS_INL_H_
OLDNEW
« src/objects.cc ('K') | « src/objects-debug.cc ('k') | src/objects-printer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698