| 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 "src/base/bits.h" | 8 #include "src/base/bits.h" | 
| 9 #include "src/heap/spaces.h" | 9 #include "src/heap/spaces.h" | 
| 10 | 10 | 
| (...skipping 666 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 677   // The linked list of all encountered weak maps is destroyed. | 677   // The linked list of all encountered weak maps is destroyed. | 
| 678   void ClearWeakCollections(); | 678   void ClearWeakCollections(); | 
| 679 | 679 | 
| 680   // We have to remove all encountered weak maps from the list of weak | 680   // We have to remove all encountered weak maps from the list of weak | 
| 681   // collections when incremental marking is aborted. | 681   // collections when incremental marking is aborted. | 
| 682   void AbortWeakCollections(); | 682   void AbortWeakCollections(); | 
| 683 | 683 | 
| 684   void ProcessAndClearWeakCells(); | 684   void ProcessAndClearWeakCells(); | 
| 685   void AbortWeakCells(); | 685   void AbortWeakCells(); | 
| 686 | 686 | 
| 687   void ProcessAndClearTransitionArrays(); |  | 
| 688   void AbortTransitionArrays(); |  | 
| 689 |  | 
| 690   // After all reachable objects have been marked, those entries within | 687   // After all reachable objects have been marked, those entries within | 
| 691   // optimized code maps that became unreachable are removed, potentially | 688   // optimized code maps that became unreachable are removed, potentially | 
| 692   // trimming or clearing out the entire optimized code map. | 689   // trimming or clearing out the entire optimized code map. | 
| 693   void ProcessAndClearOptimizedCodeMaps(); | 690   void ProcessAndClearOptimizedCodeMaps(); | 
| 694 | 691 | 
| 695   // Process non-live references in maps and optimized code. | 692   // Process non-live references in maps and optimized code. | 
| 696   void ProcessWeakReferences(); | 693   void ProcessWeakReferences(); | 
| 697 | 694 | 
| 698   // ----------------------------------------------------------------------- | 695   // ----------------------------------------------------------------------- | 
| 699   // Phase 2: Sweeping to clear mark bits and free non-live objects for | 696   // Phase 2: Sweeping to clear mark bits and free non-live objects for | 
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 868  private: | 865  private: | 
| 869   MarkCompactCollector* collector_; | 866   MarkCompactCollector* collector_; | 
| 870 }; | 867 }; | 
| 871 | 868 | 
| 872 | 869 | 
| 873 const char* AllocationSpaceName(AllocationSpace space); | 870 const char* AllocationSpaceName(AllocationSpace space); | 
| 874 }  // namespace internal | 871 }  // namespace internal | 
| 875 }  // namespace v8 | 872 }  // namespace v8 | 
| 876 | 873 | 
| 877 #endif  // V8_HEAP_MARK_COMPACT_H_ | 874 #endif  // V8_HEAP_MARK_COMPACT_H_ | 
| OLD | NEW | 
|---|