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 2646 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2657 // [length]: length of the array. | 2657 // [length]: length of the array. |
2658 inline int length() const; | 2658 inline int length() const; |
2659 inline void set_length(int value); | 2659 inline void set_length(int value); |
2660 | 2660 |
2661 // Get and set the length using acquire loads and release stores. | 2661 // Get and set the length using acquire loads and release stores. |
2662 inline int synchronized_length() const; | 2662 inline int synchronized_length() const; |
2663 inline void synchronized_set_length(int value); | 2663 inline void synchronized_set_length(int value); |
2664 | 2664 |
2665 DECLARE_CAST(FixedArrayBase) | 2665 DECLARE_CAST(FixedArrayBase) |
2666 | 2666 |
| 2667 static int GetMaxLengthForNewSpaceAllocation(ElementsKind kind); |
| 2668 |
2667 // Layout description. | 2669 // Layout description. |
2668 // Length is smi tagged when it is stored. | 2670 // Length is smi tagged when it is stored. |
2669 static const int kLengthOffset = HeapObject::kHeaderSize; | 2671 static const int kLengthOffset = HeapObject::kHeaderSize; |
2670 static const int kHeaderSize = kLengthOffset + kPointerSize; | 2672 static const int kHeaderSize = kLengthOffset + kPointerSize; |
2671 }; | 2673 }; |
2672 | 2674 |
2673 | 2675 |
2674 class FixedDoubleArray; | 2676 class FixedDoubleArray; |
2675 class IncrementalMarking; | 2677 class IncrementalMarking; |
2676 | 2678 |
(...skipping 8410 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11087 } | 11089 } |
11088 return value; | 11090 return value; |
11089 } | 11091 } |
11090 }; | 11092 }; |
11091 | 11093 |
11092 | 11094 |
11093 } // NOLINT, false-positive due to second-order macros. | 11095 } // NOLINT, false-positive due to second-order macros. |
11094 } // NOLINT, false-positive due to second-order macros. | 11096 } // NOLINT, false-positive due to second-order macros. |
11095 | 11097 |
11096 #endif // V8_OBJECTS_H_ | 11098 #endif // V8_OBJECTS_H_ |
OLD | NEW |