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 649 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
660 void RecordCodeEntrySlot(Address slot, Code* target); | 660 void RecordCodeEntrySlot(Address slot, Code* target); |
661 void RecordCodeTargetPatch(Address pc, Code* target); | 661 void RecordCodeTargetPatch(Address pc, Code* target); |
662 | 662 |
663 INLINE(void RecordSlot( | 663 INLINE(void RecordSlot( |
664 Object** anchor_slot, Object** slot, Object* object, | 664 Object** anchor_slot, Object** slot, Object* object, |
665 SlotsBuffer::AdditionMode mode = SlotsBuffer::FAIL_ON_OVERFLOW)); | 665 SlotsBuffer::AdditionMode mode = SlotsBuffer::FAIL_ON_OVERFLOW)); |
666 | 666 |
667 void MigrateObject(HeapObject* dst, HeapObject* src, int size, | 667 void MigrateObject(HeapObject* dst, HeapObject* src, int size, |
668 AllocationSpace to_old_space); | 668 AllocationSpace to_old_space); |
669 | 669 |
| 670 void MigrateObjectTagged(HeapObject* dst, HeapObject* src, int size); |
| 671 void MigrateObjectMixed(HeapObject* dst, HeapObject* src, int size); |
| 672 void MigrateObjectRaw(HeapObject* dst, HeapObject* src, int size); |
| 673 |
670 bool TryPromoteObject(HeapObject* object, int object_size); | 674 bool TryPromoteObject(HeapObject* object, int object_size); |
671 | 675 |
672 void InvalidateCode(Code* code); | 676 void InvalidateCode(Code* code); |
673 | 677 |
674 void ClearMarkbits(); | 678 void ClearMarkbits(); |
675 | 679 |
676 bool abort_incremental_marking() const { return abort_incremental_marking_; } | 680 bool abort_incremental_marking() const { return abort_incremental_marking_; } |
677 | 681 |
678 bool finalize_incremental_marking() const { | 682 bool finalize_incremental_marking() const { |
679 return finalize_incremental_marking_; | 683 return finalize_incremental_marking_; |
(...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1021 private: | 1025 private: |
1022 MarkCompactCollector* collector_; | 1026 MarkCompactCollector* collector_; |
1023 }; | 1027 }; |
1024 | 1028 |
1025 | 1029 |
1026 const char* AllocationSpaceName(AllocationSpace space); | 1030 const char* AllocationSpaceName(AllocationSpace space); |
1027 } | 1031 } |
1028 } // namespace v8::internal | 1032 } // namespace v8::internal |
1029 | 1033 |
1030 #endif // V8_HEAP_MARK_COMPACT_H_ | 1034 #endif // V8_HEAP_MARK_COMPACT_H_ |
OLD | NEW |