Changeset 140195 in webkit for trunk/Source/JavaScriptCore/heap/MarkStack.cpp
- Timestamp:
- Jan 18, 2013, 12:49:58 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/heap/MarkStack.cpp
r134080 r140195 32 32 #include "CopiedSpaceInlines.h" 33 33 #include "Heap.h" 34 #include "Options.h"35 34 #include "JSArray.h" 36 35 #include "JSCell.h" … … 46 45 namespace JSC { 47 46 47 COMPILE_ASSERT(MarkStackSegment::blockSize == WeakBlock::blockSize, blockSizeMatch); 48 48 49 MarkStackArray::MarkStackArray(BlockAllocator& blockAllocator) 49 50 : m_blockAllocator(blockAllocator) 50 , m_segmentCapacity(MarkStackSegment::capacityFromSize(Options::gcMarkStackSegmentSize()))51 51 , m_top(0) 52 52 , m_numberOfSegments(0) 53 53 { 54 ASSERT(MarkStackSegment::blockSize == WeakBlock::blockSize);55 54 m_segments.push(MarkStackSegment::create(m_blockAllocator.allocate<MarkStackSegment>())); 56 55 m_numberOfSegments++; … … 65 64 void MarkStackArray::expand() 66 65 { 67 ASSERT(m_segments.head()->m_top == m_segmentCapacity);66 ASSERT(m_segments.head()->m_top == s_segmentCapacity); 68 67 69 68 MarkStackSegment* nextSegment = MarkStackSegment::create(m_blockAllocator.allocate<MarkStackSegment>()); … … 97 96 // we prefer donating whole segments over donating individual cells, 98 97 // even if this skews away from our 1 / 2 target. 99 100 ASSERT(m_segmentCapacity == other.m_segmentCapacity);101 98 102 99 size_t segmentsToDonate = m_numberOfSegments / 2; // If we only have one segment (our head) we don't donate any segments. … … 142 139 // individual cells, even if this skews away from our 1 / N target. 143 140 144 ASSERT(m_segmentCapacity == other.m_segmentCapacity);145 141 validatePrevious(); 146 142 other.validatePrevious(); … … 152 148 MarkStackSegment* myHead = m_segments.removeHead(); 153 149 154 ASSERT(other.m_segments.head()->m_top == m_segmentCapacity);150 ASSERT(other.m_segments.head()->m_top == s_segmentCapacity); 155 151 156 152 m_segments.push(other.m_segments.removeHead());
Note:
See TracChangeset
for help on using the changeset viewer.