Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(558)

Side by Side Diff: third_party/WebKit/Source/platform/heap/Heap.h

Issue 2703713003: Remove SafePointBarrier (Closed)
Patch Set: temp Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
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
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/platform/heap/BUILD.gn ('k') | third_party/WebKit/Source/platform/heap/Heap.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698