OLD | NEW |
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 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 5872 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5883 // [constructor]: points back to the function responsible for this map. | 5883 // [constructor]: points back to the function responsible for this map. |
5884 DECL_ACCESSORS(constructor, Object) | 5884 DECL_ACCESSORS(constructor, Object) |
5885 | 5885 |
5886 // [instance descriptors]: describes the object. | 5886 // [instance descriptors]: describes the object. |
5887 DECL_ACCESSORS(instance_descriptors, DescriptorArray) | 5887 DECL_ACCESSORS(instance_descriptors, DescriptorArray) |
5888 | 5888 |
5889 // [layout descriptor]: describes the object layout. | 5889 // [layout descriptor]: describes the object layout. |
5890 DECL_ACCESSORS(layout_descriptor, LayoutDescriptor) | 5890 DECL_ACCESSORS(layout_descriptor, LayoutDescriptor) |
5891 // |layout descriptor| accessor which can be used from GC. | 5891 // |layout descriptor| accessor which can be used from GC. |
5892 inline LayoutDescriptor* layout_descriptor_gc_safe(); | 5892 inline LayoutDescriptor* layout_descriptor_gc_safe(); |
| 5893 inline bool HasFastPointerLayout() const; |
5893 | 5894 |
5894 // |layout descriptor| accessor that is safe to call even when | 5895 // |layout descriptor| accessor that is safe to call even when |
5895 // FLAG_unbox_double_fields is disabled (in this case Map does not contain | 5896 // FLAG_unbox_double_fields is disabled (in this case Map does not contain |
5896 // |layout_descriptor| field at all). | 5897 // |layout_descriptor| field at all). |
5897 inline LayoutDescriptor* GetLayoutDescriptor(); | 5898 inline LayoutDescriptor* GetLayoutDescriptor(); |
5898 | 5899 |
5899 inline void UpdateDescriptors(DescriptorArray* descriptors, | 5900 inline void UpdateDescriptors(DescriptorArray* descriptors, |
5900 LayoutDescriptor* layout_descriptor); | 5901 LayoutDescriptor* layout_descriptor); |
5901 inline void InitializeDescriptors(DescriptorArray* descriptors, | 5902 inline void InitializeDescriptors(DescriptorArray* descriptors, |
5902 LayoutDescriptor* layout_descriptor); | 5903 LayoutDescriptor* layout_descriptor); |
(...skipping 5076 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10979 } else { | 10980 } else { |
10980 value &= ~(1 << bit_position); | 10981 value &= ~(1 << bit_position); |
10981 } | 10982 } |
10982 return value; | 10983 return value; |
10983 } | 10984 } |
10984 }; | 10985 }; |
10985 | 10986 |
10986 } } // namespace v8::internal | 10987 } } // namespace v8::internal |
10987 | 10988 |
10988 #endif // V8_OBJECTS_H_ | 10989 #endif // V8_OBJECTS_H_ |
OLD | NEW |