| 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 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 268 inline void AddCandidate(JSFunction* function); | 268 inline void AddCandidate(JSFunction* function); |
| 269 | 269 |
| 270 void EvictCandidate(SharedFunctionInfo* shared_info); | 270 void EvictCandidate(SharedFunctionInfo* shared_info); |
| 271 void EvictCandidate(JSFunction* function); | 271 void EvictCandidate(JSFunction* function); |
| 272 | 272 |
| 273 void ProcessCandidates() { | 273 void ProcessCandidates() { |
| 274 ProcessSharedFunctionInfoCandidates(); | 274 ProcessSharedFunctionInfoCandidates(); |
| 275 ProcessJSFunctionCandidates(); | 275 ProcessJSFunctionCandidates(); |
| 276 } | 276 } |
| 277 | 277 |
| 278 void IteratePointersToFromSpace(ObjectVisitor* v); | 278 inline void VisitListHeads(RootVisitor* v); |
| 279 |
| 280 template <typename StaticVisitor> |
| 281 inline void IteratePointersToFromSpace(); |
| 279 | 282 |
| 280 private: | 283 private: |
| 281 void ProcessJSFunctionCandidates(); | 284 void ProcessJSFunctionCandidates(); |
| 282 void ProcessSharedFunctionInfoCandidates(); | 285 void ProcessSharedFunctionInfoCandidates(); |
| 283 | 286 |
| 284 static inline JSFunction** GetNextCandidateSlot(JSFunction* candidate); | 287 static inline JSFunction** GetNextCandidateSlot(JSFunction* candidate); |
| 285 static inline JSFunction* GetNextCandidate(JSFunction* candidate); | 288 static inline JSFunction* GetNextCandidate(JSFunction* candidate); |
| 286 static inline void SetNextCandidate(JSFunction* candidate, | 289 static inline void SetNextCandidate(JSFunction* candidate, |
| 287 JSFunction* next_candidate); | 290 JSFunction* next_candidate); |
| 288 static inline void ClearNextCandidate(JSFunction* candidate, | 291 static inline void ClearNextCandidate(JSFunction* candidate, |
| (...skipping 571 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 860 | 863 |
| 861 private: | 864 private: |
| 862 MarkCompactCollector* collector_; | 865 MarkCompactCollector* collector_; |
| 863 }; | 866 }; |
| 864 | 867 |
| 865 V8_EXPORT_PRIVATE const char* AllocationSpaceName(AllocationSpace space); | 868 V8_EXPORT_PRIVATE const char* AllocationSpaceName(AllocationSpace space); |
| 866 } // namespace internal | 869 } // namespace internal |
| 867 } // namespace v8 | 870 } // namespace v8 |
| 868 | 871 |
| 869 #endif // V8_HEAP_MARK_COMPACT_H_ | 872 #endif // V8_HEAP_MARK_COMPACT_H_ |
| OLD | NEW |