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 790 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
801 void ClearNonLiveReferences(); | 801 void ClearNonLiveReferences(); |
802 void ClearNonLivePrototypeTransitions(Map* map); | 802 void ClearNonLivePrototypeTransitions(Map* map); |
803 void ClearNonLiveMapTransitions(Map* map, MarkBit map_mark); | 803 void ClearNonLiveMapTransitions(Map* map, MarkBit map_mark); |
804 void ClearMapTransitions(Map* map); | 804 void ClearMapTransitions(Map* map); |
805 bool ClearMapBackPointer(Map* map); | 805 bool ClearMapBackPointer(Map* map); |
806 void TrimDescriptorArray(Map* map, DescriptorArray* descriptors, | 806 void TrimDescriptorArray(Map* map, DescriptorArray* descriptors, |
807 int number_of_own_descriptors); | 807 int number_of_own_descriptors); |
808 void TrimEnumCache(Map* map, DescriptorArray* descriptors); | 808 void TrimEnumCache(Map* map, DescriptorArray* descriptors); |
809 | 809 |
810 void ClearDependentCode(DependentCode* dependent_code); | 810 void ClearDependentCode(DependentCode* dependent_code); |
811 void ClearDependentICList(Object* head); | |
812 void ClearNonLiveDependentCode(DependentCode* dependent_code); | 811 void ClearNonLiveDependentCode(DependentCode* dependent_code); |
813 int ClearNonLiveDependentCodeInGroup(DependentCode* dependent_code, int group, | 812 int ClearNonLiveDependentCodeInGroup(DependentCode* dependent_code, int group, |
814 int start, int end, int new_start); | 813 int start, int end, int new_start); |
815 | 814 |
816 // Mark all values associated with reachable keys in weak collections | 815 // Mark all values associated with reachable keys in weak collections |
817 // encountered so far. This might push new object or even new weak maps onto | 816 // encountered so far. This might push new object or even new weak maps onto |
818 // the marking stack. | 817 // the marking stack. |
819 void ProcessWeakCollections(); | 818 void ProcessWeakCollections(); |
820 | 819 |
821 // After all reachable objects have been marked those weak map entries | 820 // After all reachable objects have been marked those weak map entries |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
953 private: | 952 private: |
954 MarkCompactCollector* collector_; | 953 MarkCompactCollector* collector_; |
955 }; | 954 }; |
956 | 955 |
957 | 956 |
958 const char* AllocationSpaceName(AllocationSpace space); | 957 const char* AllocationSpaceName(AllocationSpace space); |
959 } | 958 } |
960 } // namespace v8::internal | 959 } // namespace v8::internal |
961 | 960 |
962 #endif // V8_HEAP_MARK_COMPACT_H_ | 961 #endif // V8_HEAP_MARK_COMPACT_H_ |
OLD | NEW |