| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 266 template <typename T> | 266 template <typename T> |
| 267 static inline bool isHeapObjectAlive(const UntracedMember<T>& member) { | 267 static inline bool isHeapObjectAlive(const UntracedMember<T>& member) { |
| 268 return isHeapObjectAlive(member.get()); | 268 return isHeapObjectAlive(member.get()); |
| 269 } | 269 } |
| 270 | 270 |
| 271 StackFrameDepth& stackFrameDepth() { return m_stackFrameDepth; } | 271 StackFrameDepth& stackFrameDepth() { return m_stackFrameDepth; } |
| 272 | 272 |
| 273 RecursiveMutex& threadAttachMutex() { return m_threadAttachMutex; } | 273 RecursiveMutex& threadAttachMutex() { return m_threadAttachMutex; } |
| 274 const ThreadStateSet& threads() const { return m_threads; } | 274 const ThreadStateSet& threads() const { return m_threads; } |
| 275 ThreadHeapStats& heapStats() { return m_stats; } | 275 ThreadHeapStats& heapStats() { return m_stats; } |
| 276 SafePointBarrier* safePointBarrier() { return m_safePointBarrier.get(); } | |
| 277 CallbackStack* markingStack() const { return m_markingStack.get(); } | 276 CallbackStack* markingStack() const { return m_markingStack.get(); } |
| 278 CallbackStack* postMarkingCallbackStack() const { | 277 CallbackStack* postMarkingCallbackStack() const { |
| 279 return m_postMarkingCallbackStack.get(); | 278 return m_postMarkingCallbackStack.get(); |
| 280 } | 279 } |
| 281 CallbackStack* globalWeakCallbackStack() const { | 280 CallbackStack* globalWeakCallbackStack() const { |
| 282 return m_globalWeakCallbackStack.get(); | 281 return m_globalWeakCallbackStack.get(); |
| 283 } | 282 } |
| 284 CallbackStack* ephemeronStack() const { return m_ephemeronStack.get(); } | 283 CallbackStack* ephemeronStack() const { return m_ephemeronStack.get(); } |
| 285 | 284 |
| 286 void attach(ThreadState*); | 285 void attach(ThreadState*); |
| (...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 453 static bool isNormalArenaIndex(int); | 452 static bool isNormalArenaIndex(int); |
| 454 | 453 |
| 455 void commitCallbackStacks(); | 454 void commitCallbackStacks(); |
| 456 void decommitCallbackStacks(); | 455 void decommitCallbackStacks(); |
| 457 | 456 |
| 458 RecursiveMutex m_threadAttachMutex; | 457 RecursiveMutex m_threadAttachMutex; |
| 459 ThreadStateSet m_threads; | 458 ThreadStateSet m_threads; |
| 460 ThreadHeapStats m_stats; | 459 ThreadHeapStats m_stats; |
| 461 std::unique_ptr<RegionTree> m_regionTree; | 460 std::unique_ptr<RegionTree> m_regionTree; |
| 462 std::unique_ptr<HeapDoesNotContainCache> m_heapDoesNotContainCache; | 461 std::unique_ptr<HeapDoesNotContainCache> m_heapDoesNotContainCache; |
| 463 std::unique_ptr<SafePointBarrier> m_safePointBarrier; | |
| 464 std::unique_ptr<PagePool> m_freePagePool; | 462 std::unique_ptr<PagePool> m_freePagePool; |
| 465 std::unique_ptr<CallbackStack> m_markingStack; | 463 std::unique_ptr<CallbackStack> m_markingStack; |
| 466 std::unique_ptr<CallbackStack> m_postMarkingCallbackStack; | 464 std::unique_ptr<CallbackStack> m_postMarkingCallbackStack; |
| 467 std::unique_ptr<CallbackStack> m_globalWeakCallbackStack; | 465 std::unique_ptr<CallbackStack> m_globalWeakCallbackStack; |
| 468 std::unique_ptr<CallbackStack> m_ephemeronStack; | 466 std::unique_ptr<CallbackStack> m_ephemeronStack; |
| 469 BlinkGC::GCReason m_lastGCReason; | 467 BlinkGC::GCReason m_lastGCReason; |
| 470 StackFrameDepth m_stackFrameDepth; | 468 StackFrameDepth m_stackFrameDepth; |
| 471 | 469 |
| 472 std::unique_ptr<HeapCompact> m_compaction; | 470 std::unique_ptr<HeapCompact> m_compaction; |
| 473 | 471 |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 679 T** cell = reinterpret_cast<T**>(object); | 677 T** cell = reinterpret_cast<T**>(object); |
| 680 if (*cell && !ObjectAliveTrait<T>::isHeapObjectAlive(*cell)) | 678 if (*cell && !ObjectAliveTrait<T>::isHeapObjectAlive(*cell)) |
| 681 *cell = nullptr; | 679 *cell = nullptr; |
| 682 } | 680 } |
| 683 | 681 |
| 684 } // namespace blink | 682 } // namespace blink |
| 685 | 683 |
| 686 #include "platform/heap/VisitorImpl.h" | 684 #include "platform/heap/VisitorImpl.h" |
| 687 | 685 |
| 688 #endif // Heap_h | 686 #endif // Heap_h |
| OLD | NEW |