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 598 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
609 AllocationSpace to_old_space); | 609 AllocationSpace to_old_space); |
610 | 610 |
611 bool TryPromoteObject(HeapObject* object, int object_size); | 611 bool TryPromoteObject(HeapObject* object, int object_size); |
612 | 612 |
613 void InvalidateCode(Code* code); | 613 void InvalidateCode(Code* code); |
614 | 614 |
615 void ClearMarkbits(); | 615 void ClearMarkbits(); |
616 | 616 |
617 bool abort_incremental_marking() const { return abort_incremental_marking_; } | 617 bool abort_incremental_marking() const { return abort_incremental_marking_; } |
618 | 618 |
| 619 bool reduce_memory_footprint() const { return reduce_memory_footprint_; } |
| 620 |
619 bool is_compacting() const { return compacting_; } | 621 bool is_compacting() const { return compacting_; } |
620 | 622 |
621 MarkingParity marking_parity() { return marking_parity_; } | 623 MarkingParity marking_parity() { return marking_parity_; } |
622 | 624 |
623 // Concurrent and parallel sweeping support. If required_freed_bytes was set | 625 // Concurrent and parallel sweeping support. If required_freed_bytes was set |
624 // to a value larger than 0, then sweeping returns after a block of at least | 626 // to a value larger than 0, then sweeping returns after a block of at least |
625 // required_freed_bytes was freed. If required_freed_bytes was set to zero | 627 // required_freed_bytes was freed. If required_freed_bytes was set to zero |
626 // then the whole given space is swept. It returns the size of the maximum | 628 // then the whole given space is swept. It returns the size of the maximum |
627 // continuous freed memory chunk. | 629 // continuous freed memory chunk. |
628 int SweepInParallel(PagedSpace* space, int required_freed_bytes); | 630 int SweepInParallel(PagedSpace* space, int required_freed_bytes); |
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
946 private: | 948 private: |
947 MarkCompactCollector* collector_; | 949 MarkCompactCollector* collector_; |
948 }; | 950 }; |
949 | 951 |
950 | 952 |
951 const char* AllocationSpaceName(AllocationSpace space); | 953 const char* AllocationSpaceName(AllocationSpace space); |
952 } | 954 } |
953 } // namespace v8::internal | 955 } // namespace v8::internal |
954 | 956 |
955 #endif // V8_HEAP_MARK_COMPACT_H_ | 957 #endif // V8_HEAP_MARK_COMPACT_H_ |
OLD | NEW |