Commit 7e718004 authored by haraken's avatar haraken Committed by Commit bot

Oilpan: LargeObjectPage should use HeapObjectHeader::payloadSize() instead of...

Oilpan: LargeObjectPage should use HeapObjectHeader::payloadSize() instead of HeapObjectHeader::size()

HeapObjectHeader::size() is a fast version of HeapObjectHeader::payloadSize() which works only
for headers in NormalHeapPages and FreeLists. LargeObjectPages must use HeapObjectHeader::payloadSize() instead.

BUG=581138

Review URL: https://codereview.chromium.org/1636983002

Cr-Commit-Position: refs/heads/master@{#371483}
parent dffea9f9
......@@ -1510,16 +1510,17 @@ void LargeObjectPage::takeSnapshot(String dumpName, size_t pageIndex, ThreadStat
size_t deadCount = 0;
HeapObjectHeader* header = heapObjectHeader();
size_t gcInfoIndex = header->gcInfoIndex();
size_t payloadSize = header->payloadSize();
if (header->isMarked()) {
liveCount = 1;
liveSize += header->payloadSize();
liveSize += payloadSize;
info.liveCount[gcInfoIndex]++;
info.liveSize[gcInfoIndex] += header->size();
info.liveSize[gcInfoIndex] += payloadSize;
} else {
deadCount = 1;
deadSize += header->payloadSize();
deadSize += payloadSize;
info.deadCount[gcInfoIndex]++;
info.deadSize[gcInfoIndex] += header->size();
info.deadSize[gcInfoIndex] += payloadSize;
}
pageDump->addScalar("live_count", "objects", liveCount);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment