| 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_HEAP_HEAP_H_ | 5 #ifndef V8_HEAP_HEAP_H_ |
| 6 #define V8_HEAP_HEAP_H_ | 6 #define V8_HEAP_HEAP_H_ |
| 7 | 7 |
| 8 #include <cmath> | 8 #include <cmath> |
| 9 #include <map> | 9 #include <map> |
| 10 | 10 |
| (...skipping 728 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 739 void RepairFreeListsAfterDeserialization(); | 739 void RepairFreeListsAfterDeserialization(); |
| 740 | 740 |
| 741 // Move len elements within a given array from src_index index to dst_index | 741 // Move len elements within a given array from src_index index to dst_index |
| 742 // index. | 742 // index. |
| 743 void MoveElements(FixedArray* array, int dst_index, int src_index, int len); | 743 void MoveElements(FixedArray* array, int dst_index, int src_index, int len); |
| 744 | 744 |
| 745 // Initialize a filler object to keep the ability to iterate over the heap | 745 // Initialize a filler object to keep the ability to iterate over the heap |
| 746 // when introducing gaps within pages. If slots could have been recorded in | 746 // when introducing gaps within pages. If slots could have been recorded in |
| 747 // the freed area, then pass ClearRecordedSlots::kYes as the mode. Otherwise, | 747 // the freed area, then pass ClearRecordedSlots::kYes as the mode. Otherwise, |
| 748 // pass ClearRecordedSlots::kNo. | 748 // pass ClearRecordedSlots::kNo. |
| 749 V8_EXPORT_PRIVATE HeapObject* CreateFillerObjectAt(Address addr, int size, | 749 HeapObject* CreateFillerObjectAt(Address addr, int size, |
| 750 ClearRecordedSlots mode); | 750 ClearRecordedSlots mode); |
| 751 | 751 |
| 752 bool CanMoveObjectStart(HeapObject* object); | 752 bool CanMoveObjectStart(HeapObject* object); |
| 753 | 753 |
| 754 static bool IsImmovable(HeapObject* object); | 754 static bool IsImmovable(HeapObject* object); |
| 755 | 755 |
| 756 // Maintain consistency of live bytes during incremental marking. | 756 // Maintain consistency of live bytes during incremental marking. |
| 757 void AdjustLiveBytes(HeapObject* object, int by); | 757 void AdjustLiveBytes(HeapObject* object, int by); |
| 758 | 758 |
| 759 // Trim the given array from the left. Note that this relocates the object | 759 // Trim the given array from the left. Note that this relocates the object |
| 760 // start and hence is only valid if there is only a single reference to it. | 760 // start and hence is only valid if there is only a single reference to it. |
| (...skipping 1860 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2621 friend class LargeObjectSpace; | 2621 friend class LargeObjectSpace; |
| 2622 friend class NewSpace; | 2622 friend class NewSpace; |
| 2623 friend class PagedSpace; | 2623 friend class PagedSpace; |
| 2624 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); | 2624 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); |
| 2625 }; | 2625 }; |
| 2626 | 2626 |
| 2627 } // namespace internal | 2627 } // namespace internal |
| 2628 } // namespace v8 | 2628 } // namespace v8 |
| 2629 | 2629 |
| 2630 #endif // V8_HEAP_HEAP_H_ | 2630 #endif // V8_HEAP_HEAP_H_ |
| OLD | NEW |