#include <sweeper.h>
|
NonAtomicMarkingState * | marking_state () const |
|
void | RawSweep (PageMetadata *p, FreeSpaceTreatmentMode free_space_treatment_mode, SweepingMode sweeping_mode, bool should_reduce_memory) |
|
void | ZeroOrDiscardUnusedMemory (PageMetadata *page, Address addr, size_t size) |
|
void | AddPageImpl (AllocationSpace space, PageMetadata *page) |
|
template<typename Callback > |
void | ForAllSweepingSpaces (Callback callback) const |
|
size_t | FreeAndProcessFreedMemory (Address free_start, Address free_end, PageMetadata *page, Space *space, FreeSpaceTreatmentMode free_space_treatment_mode, bool should_reduce_memory) |
|
void | CleanupRememberedSetEntriesForFreedMemory (Address free_start, Address free_end, PageMetadata *page, bool record_free_ranges, TypedSlotSet::FreeRangesMap *free_ranges_map, SweepingMode sweeping_mode) |
|
void | CleanupTypedSlotsInFreeMemory (PageMetadata *page, const TypedSlotSet::FreeRangesMap &free_ranges_map, SweepingMode sweeping_mode) |
|
void | ClearMarkBitsAndHandleLivenessStatistics (PageMetadata *page, size_t live_bytes) |
|
size_t | ConcurrentMinorSweepingPageCount () |
|
size_t | ConcurrentMajorSweepingPageCount () |
|
PageMetadata * | GetSweepingPageSafe (AllocationSpace space) |
|
MutablePageMetadata * | GetPromotedPageSafe () |
|
bool | TryRemoveSweepingPageSafe (AllocationSpace space, PageMetadata *page) |
|
bool | TryRemovePromotedPageSafe (MutablePageMetadata *chunk) |
|
void | PrepareToBeSweptPage (AllocationSpace space, PageMetadata *page) |
|
void | PrepareToBeIteratedPromotedPage (PageMetadata *page) |
|
void | NotifyPromotedPageIterationFinished (MutablePageMetadata *chunk) |
|
void | NotifyPromotedPagesIterationFinished () |
|
void | AddSweptPage (PageMetadata *page, AllocationSpace identity) |
|
Definition at line 37 of file sweeper.h.
◆ SweepingList
◆ SweptList
◆ SweepingMode
Enumerator |
---|
kEagerDuringGC | |
kLazyOrConcurrent | |
Definition at line 55 of file sweeper.h.
◆ SweepingScope
◆ Sweeper()
v8::internal::Sweeper::Sweeper |
( |
Heap * | heap | ) |
|
|
explicit |
◆ ~Sweeper()
v8::internal::Sweeper::~Sweeper |
( |
| ) |
|
|
default |
◆ AddNewSpacePage()
void v8::internal::Sweeper::AddNewSpacePage |
( |
PageMetadata * | page | ) |
|
◆ AddPage()
◆ AddPageImpl()
◆ AddPromotedPage()
◆ AddSweptPage()
◆ AreMajorSweeperTasksRunning()
bool v8::internal::Sweeper::AreMajorSweeperTasksRunning |
( |
| ) |
const |
◆ AreMinorSweeperTasksRunning()
bool v8::internal::Sweeper::AreMinorSweeperTasksRunning |
( |
| ) |
const |
◆ CleanupRememberedSetEntriesForFreedMemory()
◆ CleanupTypedSlotsInFreeMemory()
◆ ClearMarkBitsAndHandleLivenessStatistics()
void v8::internal::Sweeper::ClearMarkBitsAndHandleLivenessStatistics |
( |
PageMetadata * | page, |
|
|
size_t | live_bytes ) |
|
private |
◆ ComputeDiscardMemoryArea()
◆ ConcurrentMajorSweepingPageCount()
size_t v8::internal::Sweeper::ConcurrentMajorSweepingPageCount |
( |
| ) |
|
|
private |
◆ ConcurrentMinorSweepingPageCount()
size_t v8::internal::Sweeper::ConcurrentMinorSweepingPageCount |
( |
| ) |
|
|
private |
◆ ContributeAndWaitForPromotedPagesIteration()
void v8::internal::Sweeper::ContributeAndWaitForPromotedPagesIteration |
( |
| ) |
|
◆ EnsureMajorCompleted()
void v8::internal::Sweeper::EnsureMajorCompleted |
( |
| ) |
|
◆ EnsureMinorCompleted()
void v8::internal::Sweeper::EnsureMinorCompleted |
( |
| ) |
|
◆ EnsurePageIsSwept()
void v8::internal::Sweeper::EnsurePageIsSwept |
( |
PageMetadata * | page | ) |
|
◆ FinishMajorJobs()
void v8::internal::Sweeper::FinishMajorJobs |
( |
| ) |
|
◆ FinishMinorJobs()
void v8::internal::Sweeper::FinishMinorJobs |
( |
| ) |
|
◆ ForAllSweepingSpaces()
template<typename Callback >
void v8::internal::Sweeper::ForAllSweepingSpaces |
( |
Callback | callback | ) |
const |
|
inlineprivate |
◆ FreeAndProcessFreedMemory()
◆ GetAllSweptPagesSafe()
◆ GetPromotedPageSafe()
◆ GetSweepingPageSafe()
◆ GetSweepSpaceIndex()
static int v8::internal::Sweeper::GetSweepSpaceIndex |
( |
AllocationSpace | space | ) |
|
|
inlinestaticprivate |
◆ GetSweptPageSafe()
◆ GetTraceIdForFlowEvent()
◆ GetTracingScope()
◆ InitializeMajorSweeping()
void v8::internal::Sweeper::InitializeMajorSweeping |
( |
| ) |
|
◆ InitializeMinorSweeping()
void v8::internal::Sweeper::InitializeMinorSweeping |
( |
| ) |
|
◆ IsIteratingPromotedPages()
bool v8::internal::Sweeper::IsIteratingPromotedPages |
( |
| ) |
const |
◆ IsSweepingDoneForSpace()
◆ IsValidSweepingSpace()
◆ major_sweeping_in_progress()
bool v8::internal::Sweeper::major_sweeping_in_progress |
( |
| ) |
const |
|
inline |
◆ marking_state()
◆ minor_sweeping_in_progress()
bool v8::internal::Sweeper::minor_sweeping_in_progress |
( |
| ) |
const |
|
inline |
◆ NotifyPromotedPageIterationFinished()
◆ NotifyPromotedPagesIterationFinished()
void v8::internal::Sweeper::NotifyPromotedPagesIterationFinished |
( |
| ) |
|
|
private |
◆ ParallelSweepSpace()
bool v8::internal::Sweeper::ParallelSweepSpace |
( |
AllocationSpace | identity, |
|
|
SweepingMode | sweeping_mode, |
|
|
uint32_t | max_pages = std::numeric_limits<uint32_t>::max() ) |
◆ PrepareToBeIteratedPromotedPage()
void v8::internal::Sweeper::PrepareToBeIteratedPromotedPage |
( |
PageMetadata * | page | ) |
|
|
private |
◆ PrepareToBeSweptPage()
◆ RawSweep()
◆ ShouldRefillFreelistForSpace()
◆ StartMajorSweeperTasks()
void v8::internal::Sweeper::StartMajorSweeperTasks |
( |
| ) |
|
◆ StartMajorSweeping()
void v8::internal::Sweeper::StartMajorSweeping |
( |
| ) |
|
◆ StartMinorSweeperTasks()
void v8::internal::Sweeper::StartMinorSweeperTasks |
( |
| ) |
|
◆ StartMinorSweeping()
void v8::internal::Sweeper::StartMinorSweeping |
( |
| ) |
|
◆ SweepEmptyNewSpacePage()
void v8::internal::Sweeper::SweepEmptyNewSpacePage |
( |
PageMetadata * | page | ) |
|
◆ sweeping_in_progress()
bool v8::internal::Sweeper::sweeping_in_progress |
( |
| ) |
const |
|
inline |
◆ sweeping_in_progress_for_space()
◆ TearDown()
void v8::internal::Sweeper::TearDown |
( |
| ) |
|
◆ TryRemovePromotedPageSafe()
◆ TryRemoveSweepingPageSafe()
◆ UsingMajorSweeperTasks()
bool v8::internal::Sweeper::UsingMajorSweeperTasks |
( |
| ) |
const |
◆ WaitForPageToBeSwept()
void v8::internal::Sweeper::WaitForPageToBeSwept |
( |
PageMetadata * | page | ) |
|
◆ ZeroOrDiscardUnusedMemory()
◆ cv_page_swept_
◆ has_sweeping_work_
◆ has_swept_pages_
◆ heap_
Heap* const v8::internal::Sweeper::heap_ |
|
private |
◆ iterated_promoted_pages_count_
std::atomic<size_t> v8::internal::Sweeper::iterated_promoted_pages_count_ {0} |
|
private |
◆ kNumberOfSweepingSpaces
int v8::internal::Sweeper::kNumberOfSweepingSpaces |
|
staticconstexprprivate |
◆ main_thread_local_sweeper_
LocalSweeper v8::internal::Sweeper::main_thread_local_sweeper_ |
|
private |
◆ major_sweeping_state_
◆ marking_state_
◆ minor_sweeping_state_
◆ mutex_
◆ promoted_page_iteration_in_progress_
std::atomic<bool> v8::internal::Sweeper::promoted_page_iteration_in_progress_ {false} |
|
private |
◆ promoted_pages_for_iteration_count_
size_t v8::internal::Sweeper::promoted_pages_for_iteration_count_ = 0 |
|
private |
◆ promoted_pages_iteration_notification_mutex_
base::Mutex v8::internal::Sweeper::promoted_pages_iteration_notification_mutex_ |
|
private |
◆ promoted_pages_iteration_notification_variable_
◆ sweeping_list_
◆ sweeping_list_for_promoted_page_iteration_
std::vector<MutablePageMetadata*> v8::internal::Sweeper::sweeping_list_for_promoted_page_iteration_ |
|
private |
◆ swept_list_
The documentation for this class was generated from the following files: