Reviewers: Hannes Payer,
Message:
plz review
Description:
Move the temporary private freelist closer to where it's used
BUG=v8:3104
[email protected]
LOG=n
Please review this at https://codereview.chromium.org/143193002/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files (+4, -12 lines):
M src/mark-compact.h
M src/mark-compact.cc
M src/sweeper-thread.h
M src/sweeper-thread.cc
Index: src/mark-compact.cc
diff --git a/src/mark-compact.cc b/src/mark-compact.cc
index
c7e98b7bab704c79eb6889437fe260644fdc9604..a64b3bdda1ae7df4b79b7aa49121bce8f504843c
100644
--- a/src/mark-compact.cc
+++ b/src/mark-compact.cc
@@ -3971,15 +3971,15 @@ intptr_t
MarkCompactCollector::SweepConservatively(PagedSpace* space,
void MarkCompactCollector::SweepInParallel(PagedSpace* space,
- FreeList* private_free_list,
FreeList* free_list) {
PageIterator it(space);
+ FreeList private_free_list(space);
while (it.has_next()) {
Page* p = it.next();
if (p->TryParallelSweeping()) {
- SweepConservatively<SWEEP_IN_PARALLEL>(space, private_free_list, p);
- free_list->Concatenate(private_free_list);
+ SweepConservatively<SWEEP_IN_PARALLEL>(space, &private_free_list, p);
+ free_list->Concatenate(&private_free_list);
}
}
}
Index: src/mark-compact.h
diff --git a/src/mark-compact.h b/src/mark-compact.h
index
2a1d97dc2aefc98c382a27419c2a575e6e53cedb..0fc6412dbced63e156226ec14093915486355abf
100644
--- a/src/mark-compact.h
+++ b/src/mark-compact.h
@@ -716,7 +716,6 @@ class MarkCompactCollector {
// Concurrent and parallel sweeping support.
void SweepInParallel(PagedSpace* space,
- FreeList* private_free_list,
FreeList* free_list);
void WaitUntilSweepingCompleted();
Index: src/sweeper-thread.cc
diff --git a/src/sweeper-thread.cc b/src/sweeper-thread.cc
index
6f3baed11f8f111d91e1caf6c61685b043489b7f..403c9ce511c1eb195b4e6d7020c1af547dccfe26
100644
--- a/src/sweeper-thread.cc
+++ b/src/sweeper-thread.cc
@@ -46,10 +46,7 @@ SweeperThread::SweeperThread(Isolate* isolate)
end_sweeping_semaphore_(0),
stop_semaphore_(0),
free_list_old_data_space_(heap_->paged_space(OLD_DATA_SPACE)),
- free_list_old_pointer_space_(heap_->paged_space(OLD_POINTER_SPACE)),
-
private_free_list_old_data_space_(heap_->paged_space(OLD_DATA_SPACE)),
- private_free_list_old_pointer_space_(
- heap_->paged_space(OLD_POINTER_SPACE)) {
+ free_list_old_pointer_space_(heap_->paged_space(OLD_POINTER_SPACE))
{
NoBarrier_Store(&stop_thread_, static_cast<AtomicWord>(false));
}
@@ -69,10 +66,8 @@ void SweeperThread::Run() {
}
collector_->SweepInParallel(heap_->old_data_space(),
- &private_free_list_old_data_space_,
&free_list_old_data_space_);
collector_->SweepInParallel(heap_->old_pointer_space(),
- &private_free_list_old_pointer_space_,
&free_list_old_pointer_space_);
end_sweeping_semaphore_.Signal();
}
Index: src/sweeper-thread.h
diff --git a/src/sweeper-thread.h b/src/sweeper-thread.h
index
96255a0972af61b37543dc294018e01ff2d30073..5013affd84dce31d5345c2e4473737debfa27cf3
100644
--- a/src/sweeper-thread.h
+++ b/src/sweeper-thread.h
@@ -62,8 +62,6 @@ class SweeperThread : public Thread {
Semaphore stop_semaphore_;
FreeList free_list_old_data_space_;
FreeList free_list_old_pointer_space_;
- FreeList private_free_list_old_data_space_;
- FreeList private_free_list_old_pointer_space_;
volatile AtomicWord stop_thread_;
};
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.