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_MARK_COMPACT_H_ | 5 #ifndef V8_HEAP_MARK_COMPACT_H_ |
6 #define V8_HEAP_MARK_COMPACT_H_ | 6 #define V8_HEAP_MARK_COMPACT_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 | 9 |
10 #include "src/base/bits.h" | 10 #include "src/base/bits.h" |
(...skipping 775 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
786 | 786 |
787 // Starts sweeping of spaces by contributing on the main thread and setting | 787 // Starts sweeping of spaces by contributing on the main thread and setting |
788 // up other pages for sweeping. Does not start sweeper tasks. | 788 // up other pages for sweeping. Does not start sweeper tasks. |
789 void StartSweepSpaces(); | 789 void StartSweepSpaces(); |
790 void StartSweepSpace(PagedSpace* space); | 790 void StartSweepSpace(PagedSpace* space); |
791 | 791 |
792 void EvacuatePrologue(); | 792 void EvacuatePrologue(); |
793 void EvacuateEpilogue(); | 793 void EvacuateEpilogue(); |
794 void EvacuatePagesInParallel(); | 794 void EvacuatePagesInParallel(); |
795 | 795 |
796 // The number of parallel compaction tasks, including the main thread. | |
797 int NumberOfParallelCompactionTasks(int pages, intptr_t live_bytes); | |
798 | |
799 void EvacuateNewSpaceAndCandidates(); | 796 void EvacuateNewSpaceAndCandidates(); |
800 | 797 |
801 void UpdatePointersAfterEvacuation(); | 798 void UpdatePointersAfterEvacuation(); |
802 | 799 |
803 void ReleaseEvacuationCandidates(); | 800 void ReleaseEvacuationCandidates(); |
804 | 801 |
805 | 802 |
806 #ifdef DEBUG | 803 #ifdef DEBUG |
807 friend class MarkObjectVisitor; | 804 friend class MarkObjectVisitor; |
808 static void VisitObject(HeapObject* obj); | 805 static void VisitObject(HeapObject* obj); |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
870 | 867 |
871 private: | 868 private: |
872 MarkCompactCollector* collector_; | 869 MarkCompactCollector* collector_; |
873 }; | 870 }; |
874 | 871 |
875 V8_EXPORT_PRIVATE const char* AllocationSpaceName(AllocationSpace space); | 872 V8_EXPORT_PRIVATE const char* AllocationSpaceName(AllocationSpace space); |
876 } // namespace internal | 873 } // namespace internal |
877 } // namespace v8 | 874 } // namespace v8 |
878 | 875 |
879 #endif // V8_HEAP_MARK_COMPACT_H_ | 876 #endif // V8_HEAP_MARK_COMPACT_H_ |
OLD | NEW |