| 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 #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 #include <memory> | 9 #include <memory> |
| 10 | 10 |
| (...skipping 2816 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2827 inline Object** RawFieldOfElementAt(int index); | 2827 inline Object** RawFieldOfElementAt(int index); |
| 2828 | 2828 |
| 2829 DECLARE_CAST(FixedArray) | 2829 DECLARE_CAST(FixedArray) |
| 2830 | 2830 |
| 2831 // Maximal allowed size, in bytes, of a single FixedArray. | 2831 // Maximal allowed size, in bytes, of a single FixedArray. |
| 2832 // Prevents overflowing size computations, as well as extreme memory | 2832 // Prevents overflowing size computations, as well as extreme memory |
| 2833 // consumption. | 2833 // consumption. |
| 2834 static const int kMaxSize = 128 * MB * kPointerSize; | 2834 static const int kMaxSize = 128 * MB * kPointerSize; |
| 2835 // Maximally allowed length of a FixedArray. | 2835 // Maximally allowed length of a FixedArray. |
| 2836 static const int kMaxLength = (kMaxSize - kHeaderSize) / kPointerSize; | 2836 static const int kMaxLength = (kMaxSize - kHeaderSize) / kPointerSize; |
| 2837 // Maximally allowed length for regular (non large object space) object. |
| 2838 STATIC_ASSERT(kMaxRegularHeapObjectSize < kMaxSize); |
| 2839 static const int kMaxRegularLength = |
| 2840 (kMaxRegularHeapObjectSize - kHeaderSize) / kPointerSize; |
| 2837 | 2841 |
| 2838 // Dispatched behavior. | 2842 // Dispatched behavior. |
| 2839 DECLARE_PRINTER(FixedArray) | 2843 DECLARE_PRINTER(FixedArray) |
| 2840 DECLARE_VERIFIER(FixedArray) | 2844 DECLARE_VERIFIER(FixedArray) |
| 2841 #ifdef DEBUG | 2845 #ifdef DEBUG |
| 2842 // Checks if two FixedArrays have identical contents. | 2846 // Checks if two FixedArrays have identical contents. |
| 2843 bool IsEqualTo(FixedArray* other); | 2847 bool IsEqualTo(FixedArray* other); |
| 2844 #endif | 2848 #endif |
| 2845 | 2849 |
| 2846 typedef FlexibleBodyDescriptor<kHeaderSize> BodyDescriptor; | 2850 typedef FlexibleBodyDescriptor<kHeaderSize> BodyDescriptor; |
| (...skipping 1981 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4828 | 4832 |
| 4829 // Returns a non-deprecated version of the input. This method may deprecate | 4833 // Returns a non-deprecated version of the input. This method may deprecate |
| 4830 // existing maps along the way if encodings conflict. Not for use while | 4834 // existing maps along the way if encodings conflict. Not for use while |
| 4831 // gathering type feedback. Use TryUpdate in those cases instead. | 4835 // gathering type feedback. Use TryUpdate in those cases instead. |
| 4832 static Handle<Map> Update(Handle<Map> map); | 4836 static Handle<Map> Update(Handle<Map> map); |
| 4833 | 4837 |
| 4834 static inline Handle<Map> CopyInitialMap(Handle<Map> map); | 4838 static inline Handle<Map> CopyInitialMap(Handle<Map> map); |
| 4835 static Handle<Map> CopyInitialMap(Handle<Map> map, int instance_size, | 4839 static Handle<Map> CopyInitialMap(Handle<Map> map, int instance_size, |
| 4836 int in_object_properties, | 4840 int in_object_properties, |
| 4837 int unused_property_fields); | 4841 int unused_property_fields); |
| 4842 static Handle<Map> CopyInitialMapNormalized( |
| 4843 Handle<Map> map, |
| 4844 PropertyNormalizationMode mode = CLEAR_INOBJECT_PROPERTIES); |
| 4838 static Handle<Map> CopyDropDescriptors(Handle<Map> map); | 4845 static Handle<Map> CopyDropDescriptors(Handle<Map> map); |
| 4839 static Handle<Map> CopyInsertDescriptor(Handle<Map> map, | 4846 static Handle<Map> CopyInsertDescriptor(Handle<Map> map, |
| 4840 Descriptor* descriptor, | 4847 Descriptor* descriptor, |
| 4841 TransitionFlag flag); | 4848 TransitionFlag flag); |
| 4842 | 4849 |
| 4843 static Handle<Object> WrapFieldType(Handle<FieldType> type); | 4850 static Handle<Object> WrapFieldType(Handle<FieldType> type); |
| 4844 static FieldType* UnwrapFieldType(Object* wrapped_type); | 4851 static FieldType* UnwrapFieldType(Object* wrapped_type); |
| 4845 | 4852 |
| 4846 MUST_USE_RESULT static MaybeHandle<Map> CopyWithField( | 4853 MUST_USE_RESULT static MaybeHandle<Map> CopyWithField( |
| 4847 Handle<Map> map, Handle<Name> name, Handle<FieldType> type, | 4854 Handle<Map> map, Handle<Name> name, Handle<FieldType> type, |
| (...skipping 5429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10277 } | 10284 } |
| 10278 }; | 10285 }; |
| 10279 | 10286 |
| 10280 | 10287 |
| 10281 } // NOLINT, false-positive due to second-order macros. | 10288 } // NOLINT, false-positive due to second-order macros. |
| 10282 } // NOLINT, false-positive due to second-order macros. | 10289 } // NOLINT, false-positive due to second-order macros. |
| 10283 | 10290 |
| 10284 #include "src/objects/object-macros-undef.h" | 10291 #include "src/objects/object-macros-undef.h" |
| 10285 | 10292 |
| 10286 #endif // V8_OBJECTS_H_ | 10293 #endif // V8_OBJECTS_H_ |
| OLD | NEW |