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

Unified Diff: third_party/WebKit/Source/platform/heap/HeapPage.cpp

Issue 1757703004: Rename BaseHeap to BaseArena part 2 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix Created 4 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/platform/heap/HeapPage.cpp
diff --git a/third_party/WebKit/Source/platform/heap/HeapPage.cpp b/third_party/WebKit/Source/platform/heap/HeapPage.cpp
index 3f8dbdb9603e4d6a62f23fb67e0f9ba3ad05aa97..29de33fc7b440a8a019c5911cfaf955779bc0073 100644
--- a/third_party/WebKit/Source/platform/heap/HeapPage.cpp
+++ b/third_party/WebKit/Source/platform/heap/HeapPage.cpp
@@ -254,7 +254,7 @@ void BaseArena::prepareForSweep()
}
#if defined(ADDRESS_SANITIZER)
-void BaseArena::poisonHeap(BlinkGC::ObjectsToPoison objectsToPoison, BlinkGC::Poisoning poisoning)
+void BaseArena::poisonArena(BlinkGC::ObjectsToPoison objectsToPoison, BlinkGC::Poisoning poisoning)
{
// TODO(sof): support complete poisoning of all arenas.
ASSERT(objectsToPoison != BlinkGC::MarkedAndUnmarked || arenaIndex() == BlinkGC::EagerSweepArenaIndex);
@@ -361,7 +361,7 @@ void BaseArena::completeSweep()
Heap::reportMemoryUsageForTracing();
}
-NormalPageHeap::NormalPageHeap(ThreadState* state, int index)
+NormalPageArena::NormalPageArena(ThreadState* state, int index)
: BaseArena(state, index)
, m_currentAllocationPoint(nullptr)
, m_remainingAllocationSize(0)
@@ -371,14 +371,14 @@ NormalPageHeap::NormalPageHeap(ThreadState* state, int index)
clearFreeLists();
}
-void NormalPageHeap::clearFreeLists()
+void NormalPageArena::clearFreeLists()
{
setAllocationPoint(nullptr, 0);
m_freeList.clear();
}
#if ENABLE(ASSERT)
-bool NormalPageHeap::isConsistentForGC()
+bool NormalPageArena::isConsistentForGC()
{
// A thread heap is consistent for sweeping if none of the pages to be swept
// contain a freelist block or the current allocation point.
@@ -395,7 +395,7 @@ bool NormalPageHeap::isConsistentForGC()
return true;
}
-bool NormalPageHeap::pagesToBeSweptContains(Address address)
+bool NormalPageArena::pagesToBeSweptContains(Address address)
{
for (BasePage* page = m_firstUnsweptPage; page; page = page->next()) {
if (page->contains(address))
@@ -405,7 +405,7 @@ bool NormalPageHeap::pagesToBeSweptContains(Address address)
}
#endif
-void NormalPageHeap::takeFreelistSnapshot(const String& dumpName)
+void NormalPageArena::takeFreelistSnapshot(const String& dumpName)
{
if (m_freeList.takeSnapshot(dumpName)) {
WebMemoryAllocatorDump* bucketsDump = BlinkGCMemoryDumpProvider::instance()->createMemoryAllocatorDumpForCurrentGC(dumpName + "/buckets");
@@ -414,7 +414,7 @@ void NormalPageHeap::takeFreelistSnapshot(const String& dumpName)
}
}
-void NormalPageHeap::allocatePage()
+void NormalPageArena::allocatePage()
{
threadState()->shouldFlushHeapDoesNotContainCache();
PageMemory* pageMemory = Heap::freePagePool()->takeFreePage(arenaIndex());
@@ -461,7 +461,7 @@ void NormalPageHeap::allocatePage()
addToFreeList(page->payload(), page->payloadSize());
}
-void NormalPageHeap::freePage(NormalPage* page)
+void NormalPageArena::freePage(NormalPage* page)
{
Heap::decreaseAllocatedSpace(page->size());
@@ -482,7 +482,7 @@ void NormalPageHeap::freePage(NormalPage* page)
}
}
-bool NormalPageHeap::coalesce()
+bool NormalPageArena::coalesce()
{
// Don't coalesce arenas if there are not enough promptly freed entries
// to be coalesced.
@@ -549,7 +549,7 @@ bool NormalPageHeap::coalesce()
return true;
}
-void NormalPageHeap::promptlyFreeObject(HeapObjectHeader* header)
+void NormalPageArena::promptlyFreeObject(HeapObjectHeader* header)
{
ASSERT(!threadState()->sweepForbidden());
ASSERT(header->checkHeader());
@@ -576,7 +576,7 @@ void NormalPageHeap::promptlyFreeObject(HeapObjectHeader* header)
m_promptlyFreedSize += size;
}
-bool NormalPageHeap::expandObject(HeapObjectHeader* header, size_t newSize)
+bool NormalPageArena::expandObject(HeapObjectHeader* header, size_t newSize)
{
// It's possible that Vector requests a smaller expanded size because
// Vector::shrinkCapacity can set a capacity smaller than the actual payload
@@ -600,7 +600,7 @@ bool NormalPageHeap::expandObject(HeapObjectHeader* header, size_t newSize)
return false;
}
-bool NormalPageHeap::shrinkObject(HeapObjectHeader* header, size_t newSize)
+bool NormalPageArena::shrinkObject(HeapObjectHeader* header, size_t newSize)
{
ASSERT(header->checkHeader());
ASSERT(header->payloadSize() > newSize);
@@ -626,7 +626,7 @@ bool NormalPageHeap::shrinkObject(HeapObjectHeader* header, size_t newSize)
return false;
}
-Address NormalPageHeap::lazySweepPages(size_t allocationSize, size_t gcInfoIndex)
+Address NormalPageArena::lazySweepPages(size_t allocationSize, size_t gcInfoIndex)
{
ASSERT(!hasCurrentAllocationArea());
Address result = nullptr;
@@ -653,7 +653,7 @@ Address NormalPageHeap::lazySweepPages(size_t allocationSize, size_t gcInfoIndex
return result;
}
-void NormalPageHeap::setRemainingAllocationSize(size_t newRemainingAllocationSize)
+void NormalPageArena::setRemainingAllocationSize(size_t newRemainingAllocationSize)
{
m_remainingAllocationSize = newRemainingAllocationSize;
@@ -667,7 +667,7 @@ void NormalPageHeap::setRemainingAllocationSize(size_t newRemainingAllocationSiz
m_lastRemainingAllocationSize = m_remainingAllocationSize;
}
-void NormalPageHeap::updateRemainingAllocationSize()
+void NormalPageArena::updateRemainingAllocationSize()
{
if (m_lastRemainingAllocationSize > remainingAllocationSize()) {
threadState()->increaseAllocatedObjectSize(m_lastRemainingAllocationSize - remainingAllocationSize());
@@ -676,7 +676,7 @@ void NormalPageHeap::updateRemainingAllocationSize()
ASSERT(m_lastRemainingAllocationSize == remainingAllocationSize());
}
-void NormalPageHeap::setAllocationPoint(Address point, size_t size)
+void NormalPageArena::setAllocationPoint(Address point, size_t size)
{
#if ENABLE(ASSERT)
if (point) {
@@ -694,7 +694,7 @@ void NormalPageHeap::setAllocationPoint(Address point, size_t size)
m_lastRemainingAllocationSize = m_remainingAllocationSize = size;
}
-Address NormalPageHeap::outOfLineAllocate(size_t allocationSize, size_t gcInfoIndex)
+Address NormalPageArena::outOfLineAllocate(size_t allocationSize, size_t gcInfoIndex)
{
ASSERT(allocationSize > remainingAllocationSize());
ASSERT(allocationSize >= allocationGranularity);
@@ -703,8 +703,8 @@ Address NormalPageHeap::outOfLineAllocate(size_t allocationSize, size_t gcInfoIn
if (allocationSize >= largeObjectSizeThreshold) {
// TODO(sof): support eagerly finalized large objects, if ever needed.
RELEASE_ASSERT(arenaIndex() != BlinkGC::EagerSweepArenaIndex);
- LargeObjectHeap* largeObjectHeap = static_cast<LargeObjectHeap*>(threadState()->arena(BlinkGC::LargeObjectArenaIndex));
- Address largeObject = largeObjectHeap->allocateLargeObjectPage(allocationSize, gcInfoIndex);
+ LargeObjectArena* largeObjectArena = static_cast<LargeObjectArena*>(threadState()->arena(BlinkGC::LargeObjectArenaIndex));
+ Address largeObject = largeObjectArena->allocateLargeObjectPage(allocationSize, gcInfoIndex);
ASAN_MARK_LARGE_VECTOR_CONTAINER(this, largeObject);
return largeObject;
}
@@ -747,7 +747,7 @@ Address NormalPageHeap::outOfLineAllocate(size_t allocationSize, size_t gcInfoIn
return result;
}
-Address NormalPageHeap::allocateFromFreeList(size_t allocationSize, size_t gcInfoIndex)
+Address NormalPageArena::allocateFromFreeList(size_t allocationSize, size_t gcInfoIndex)
{
// Try reusing a block from the largest bin. The underlying reasoning
// being that we want to amortize this slow allocation call by carving
@@ -778,12 +778,12 @@ Address NormalPageHeap::allocateFromFreeList(size_t allocationSize, size_t gcInf
return nullptr;
}
-LargeObjectHeap::LargeObjectHeap(ThreadState* state, int index)
+LargeObjectArena::LargeObjectArena(ThreadState* state, int index)
: BaseArena(state, index)
{
}
-Address LargeObjectHeap::allocateLargeObjectPage(size_t allocationSize, size_t gcInfoIndex)
+Address LargeObjectArena::allocateLargeObjectPage(size_t allocationSize, size_t gcInfoIndex)
{
// Caller already added space for object header and rounded up to allocation
// alignment
@@ -805,7 +805,7 @@ Address LargeObjectHeap::allocateLargeObjectPage(size_t allocationSize, size_t g
return doAllocateLargeObjectPage(allocationSize, gcInfoIndex);
}
-Address LargeObjectHeap::doAllocateLargeObjectPage(size_t allocationSize, size_t gcInfoIndex)
+Address LargeObjectArena::doAllocateLargeObjectPage(size_t allocationSize, size_t gcInfoIndex)
{
size_t largeObjectSize = LargeObjectPage::pageHeaderSize() + allocationSize;
// If ASan is supported we add allocationGranularity bytes to the allocated
@@ -841,7 +841,7 @@ Address LargeObjectHeap::doAllocateLargeObjectPage(size_t allocationSize, size_t
return result;
}
-void LargeObjectHeap::freeLargeObjectPage(LargeObjectPage* object)
+void LargeObjectArena::freeLargeObjectPage(LargeObjectPage* object)
{
ASAN_UNPOISON_MEMORY_REGION(object->payload(), object->payloadSize());
object->heapObjectHeader()->finalize(object->payload(), object->payloadSize());
@@ -871,7 +871,7 @@ void LargeObjectHeap::freeLargeObjectPage(LargeObjectPage* object)
}
}
-Address LargeObjectHeap::lazySweepPages(size_t allocationSize, size_t gcInfoIndex)
+Address LargeObjectArena::lazySweepPages(size_t allocationSize, size_t gcInfoIndex)
{
Address result = nullptr;
size_t sweptSize = 0;
@@ -1116,7 +1116,7 @@ void NormalPage::sweep()
{
size_t markedObjectSize = 0;
Address startOfGap = payload();
- NormalPageHeap* pageHeap = arenaForNormalPage();
+ NormalPageArena* pageArena = arenaForNormalPage();
for (Address headerAddress = startOfGap; headerAddress < payloadEnd(); ) {
HeapObjectHeader* header = reinterpret_cast<HeapObjectHeader*>(headerAddress);
size_t size = header->size();
@@ -1124,7 +1124,7 @@ void NormalPage::sweep()
ASSERT(size < blinkPagePayloadSize());
if (header->isPromptlyFreed())
- pageHeap->decreasePromptlyFreedSize(size);
+ pageArena->decreasePromptlyFreedSize(size);
if (header->isFree()) {
// Zero the memory in the free list header to maintain the
// invariant that memory on the free list is zero filled.
@@ -1155,7 +1155,7 @@ void NormalPage::sweep()
continue;
}
if (startOfGap != headerAddress) {
- pageHeap->addToFreeList(startOfGap, headerAddress - startOfGap);
+ pageArena->addToFreeList(startOfGap, headerAddress - startOfGap);
#if !ENABLE(ASSERT) && !defined(LEAK_SANITIZER) && !defined(ADDRESS_SANITIZER)
// Discarding pages increases page faults and may regress performance.
// So we enable this only on low-RAM devices.
@@ -1169,7 +1169,7 @@ void NormalPage::sweep()
startOfGap = headerAddress;
}
if (startOfGap != payloadEnd()) {
- pageHeap->addToFreeList(startOfGap, payloadEnd() - startOfGap);
+ pageArena->addToFreeList(startOfGap, payloadEnd() - startOfGap);
#if !ENABLE(ASSERT) && !defined(LEAK_SANITIZER) && !defined(ADDRESS_SANITIZER)
if (Heap::isLowEndDevice())
discardPages(startOfGap + sizeof(FreeListEntry), payloadEnd());
@@ -1177,7 +1177,7 @@ void NormalPage::sweep()
}
if (markedObjectSize)
- pageHeap->threadState()->increaseMarkedObjectSize(markedObjectSize);
+ pageArena->threadState()->increaseMarkedObjectSize(markedObjectSize);
}
void NormalPage::makeConsistentForGC()
@@ -1433,9 +1433,9 @@ bool NormalPage::contains(Address addr)
}
#endif
-NormalPageHeap* NormalPage::arenaForNormalPage()
+NormalPageArena* NormalPage::arenaForNormalPage()
{
- return static_cast<NormalPageHeap*>(arena());
+ return static_cast<NormalPageArena*>(arena());
}
LargeObjectPage::LargeObjectPage(PageMemory* storage, BaseArena* arena, size_t payloadSize)
@@ -1460,7 +1460,7 @@ bool LargeObjectPage::isEmpty()
void LargeObjectPage::removeFromHeap()
{
- static_cast<LargeObjectHeap*>(arena())->freeLargeObjectPage(this);
+ static_cast<LargeObjectArena*>(arena())->freeLargeObjectPage(this);
}
void LargeObjectPage::sweep()
« no previous file with comments | « third_party/WebKit/Source/platform/heap/HeapPage.h ('k') | third_party/WebKit/Source/platform/heap/ThreadState.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698