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 486 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
497 class EvacuateRecordOnlyVisitor; | 497 class EvacuateRecordOnlyVisitor; |
498 class EvacuateVisitorBase; | 498 class EvacuateVisitorBase; |
499 class HeapObjectVisitor; | 499 class HeapObjectVisitor; |
500 class ObjectStatsVisitor; | 500 class ObjectStatsVisitor; |
501 | 501 |
502 explicit MarkCompactCollector(Heap* heap); | 502 explicit MarkCompactCollector(Heap* heap); |
503 | 503 |
504 bool WillBeDeoptimized(Code* code); | 504 bool WillBeDeoptimized(Code* code); |
505 void ClearInvalidRememberedSetSlots(); | 505 void ClearInvalidRememberedSetSlots(); |
506 | 506 |
507 void ComputeEvacuationHeuristics(int area_size, | 507 void ComputeEvacuationHeuristics(size_t area_size, |
508 int* target_fragmentation_percent, | 508 int* target_fragmentation_percent, |
509 int* max_evacuated_bytes); | 509 size_t* max_evacuated_bytes); |
510 | 510 |
511 void VisitAllObjects(HeapObjectVisitor* visitor); | 511 void VisitAllObjects(HeapObjectVisitor* visitor); |
512 | 512 |
513 void RecordObjectStats(); | 513 void RecordObjectStats(); |
514 | 514 |
515 // Finishes GC, performs heap verification if enabled. | 515 // Finishes GC, performs heap verification if enabled. |
516 void Finish(); | 516 void Finish(); |
517 | 517 |
518 // ----------------------------------------------------------------------- | 518 // ----------------------------------------------------------------------- |
519 // Phase 1: Marking live objects. | 519 // Phase 1: Marking live objects. |
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
753 | 753 |
754 private: | 754 private: |
755 MarkCompactCollector* collector_; | 755 MarkCompactCollector* collector_; |
756 }; | 756 }; |
757 | 757 |
758 V8_EXPORT_PRIVATE const char* AllocationSpaceName(AllocationSpace space); | 758 V8_EXPORT_PRIVATE const char* AllocationSpaceName(AllocationSpace space); |
759 } // namespace internal | 759 } // namespace internal |
760 } // namespace v8 | 760 } // namespace v8 |
761 | 761 |
762 #endif // V8_HEAP_MARK_COMPACT_H_ | 762 #endif // V8_HEAP_MARK_COMPACT_H_ |
OLD | NEW |