Index: src/heap.cc |
diff --git a/src/heap.cc b/src/heap.cc |
index 4c54e84f6c46d977a0b05d7720d8ad1fccc721cd..f7205f2ca23e83b50b32b29a6da8f940972c3cc9 100644 |
--- a/src/heap.cc |
+++ b/src/heap.cc |
@@ -1092,7 +1092,7 @@ void PromotionQueue::RelocateQueueHead() { |
Page* p = Page::FromAllocationTop(reinterpret_cast<Address>(rear_)); |
intptr_t* head_start = rear_; |
intptr_t* head_end = |
- Min(front_, reinterpret_cast<intptr_t*>(p->body_limit())); |
+ Min(front_, reinterpret_cast<intptr_t*>(p->area_end())); |
int entries_count = |
static_cast<int>(head_end - head_start) / kEntrySizeInWords; |
@@ -1435,7 +1435,7 @@ Address Heap::DoScavenge(ObjectVisitor* scavenge_visitor, |
NewSpaceScavenger::IterateBody(object->map(), object); |
} else { |
new_space_front = |
- NewSpacePage::FromLimit(new_space_front)->next_page()->body(); |
+ NewSpacePage::FromLimit(new_space_front)->next_page()->area_start(); |
} |
} |
@@ -1597,7 +1597,7 @@ class ScavengingVisitor : public StaticVisitorBase { |
HeapObject* object, |
int object_size) { |
SLOW_ASSERT((size_restriction != SMALL) || |
- (object_size <= Page::kMaxHeapObjectSize)); |
+ (object_size <= Page::kMaxNonCodeHeapObjectSize)); |
SLOW_ASSERT(object->Size() == object_size); |
Heap* heap = map->GetHeap(); |
@@ -1605,7 +1605,7 @@ class ScavengingVisitor : public StaticVisitorBase { |
MaybeObject* maybe_result; |
if ((size_restriction != SMALL) && |
- (object_size > Page::kMaxHeapObjectSize)) { |
+ (object_size > Page::kMaxNonCodeHeapObjectSize)) { |
maybe_result = heap->lo_space()->AllocateRaw(object_size, |
NOT_EXECUTABLE); |
} else { |
@@ -2264,7 +2264,7 @@ bool Heap::CreateInitialMaps() { |
MaybeObject* Heap::AllocateHeapNumber(double value, PretenureFlag pretenure) { |
// Statically ensure that it is safe to allocate heap numbers in paged |
// spaces. |
- STATIC_ASSERT(HeapNumber::kSize <= Page::kMaxHeapObjectSize); |
+ STATIC_ASSERT(HeapNumber::kSize <= Page::kNonCodeObjectAreaSize); |
AllocationSpace space = (pretenure == TENURED) ? OLD_DATA_SPACE : NEW_SPACE; |
Object* result; |
@@ -2285,7 +2285,7 @@ MaybeObject* Heap::AllocateHeapNumber(double value) { |
// This version of AllocateHeapNumber is optimized for |
// allocation in new space. |
- STATIC_ASSERT(HeapNumber::kSize <= Page::kMaxHeapObjectSize); |
+ STATIC_ASSERT(HeapNumber::kSize <= Page::kMaxNonCodeHeapObjectSize); |
ASSERT(allocation_allowed_ && gc_state_ == NOT_IN_GC); |
Object* result; |
{ MaybeObject* maybe_result = new_space_.AllocateRaw(HeapNumber::kSize); |
@@ -2856,7 +2856,7 @@ MaybeObject* Heap::NumberFromDouble(double value, PretenureFlag pretenure) { |
MaybeObject* Heap::AllocateForeign(Address address, PretenureFlag pretenure) { |
// Statically ensure that it is safe to allocate foreigns in paged spaces. |
- STATIC_ASSERT(Foreign::kSize <= Page::kMaxHeapObjectSize); |
+ STATIC_ASSERT(Foreign::kSize <= Page::kMaxNonCodeHeapObjectSize); |
AllocationSpace space = (pretenure == TENURED) ? OLD_DATA_SPACE : NEW_SPACE; |
Foreign* result; |
MaybeObject* maybe_result = Allocate(foreign_map(), space); |
@@ -3274,7 +3274,7 @@ MaybeObject* Heap::AllocateByteArray(int length, PretenureFlag pretenure) { |
} |
int size = ByteArray::SizeFor(length); |
Object* result; |
- { MaybeObject* maybe_result = (size <= MaxObjectSizeInPagedSpace()) |
+ { MaybeObject* maybe_result = (size <= Page::kMaxNonCodeHeapObjectSize) |
? old_data_space_->AllocateRaw(size) |
: lo_space_->AllocateRaw(size, NOT_EXECUTABLE); |
if (!maybe_result->ToObject(&result)) return maybe_result; |
@@ -3293,7 +3293,7 @@ MaybeObject* Heap::AllocateByteArray(int length) { |
} |
int size = ByteArray::SizeFor(length); |
AllocationSpace space = |
- (size > MaxObjectSizeInPagedSpace()) ? LO_SPACE : NEW_SPACE; |
+ (size > Page::kMaxNonCodeHeapObjectSize) ? LO_SPACE : NEW_SPACE; |
Object* result; |
{ MaybeObject* maybe_result = AllocateRaw(size, space, OLD_DATA_SPACE); |
if (!maybe_result->ToObject(&result)) return maybe_result; |
@@ -3359,7 +3359,7 @@ MaybeObject* Heap::CreateCode(const CodeDesc& desc, |
MaybeObject* maybe_result; |
// Large code objects and code objects which should stay at a fixed address |
// are allocated in large object space. |
- if (obj_size > MaxObjectSizeInPagedSpace() || immovable) { |
+ if (obj_size > code_space()->AreaSize() || immovable) { |
maybe_result = lo_space_->AllocateRaw(obj_size, EXECUTABLE); |
} else { |
maybe_result = code_space_->AllocateRaw(obj_size); |
@@ -3408,7 +3408,7 @@ MaybeObject* Heap::CopyCode(Code* code) { |
// Allocate an object the same size as the code object. |
int obj_size = code->Size(); |
MaybeObject* maybe_result; |
- if (obj_size > MaxObjectSizeInPagedSpace()) { |
+ if (obj_size > code_space()->AreaSize()) { |
maybe_result = lo_space_->AllocateRaw(obj_size, EXECUTABLE); |
} else { |
maybe_result = code_space_->AllocateRaw(obj_size); |
@@ -3451,7 +3451,7 @@ MaybeObject* Heap::CopyCode(Code* code, Vector<byte> reloc_info) { |
static_cast<size_t>(code->instruction_end() - old_addr); |
MaybeObject* maybe_result; |
- if (new_obj_size > MaxObjectSizeInPagedSpace()) { |
+ if (new_obj_size > code_space()->AreaSize()) { |
maybe_result = lo_space_->AllocateRaw(new_obj_size, EXECUTABLE); |
} else { |
maybe_result = code_space_->AllocateRaw(new_obj_size); |
@@ -3772,7 +3772,7 @@ MaybeObject* Heap::AllocateJSObjectFromMap(Map* map, PretenureFlag pretenure) { |
// Allocate the JSObject. |
AllocationSpace space = |
(pretenure == TENURED) ? OLD_POINTER_SPACE : NEW_SPACE; |
- if (map->instance_size() > MaxObjectSizeInPagedSpace()) space = LO_SPACE; |
+ if (map->instance_size() > Page::kMaxNonCodeHeapObjectSize) space = LO_SPACE; |
Object* obj; |
{ MaybeObject* maybe_obj = Allocate(map, space); |
if (!maybe_obj->ToObject(&obj)) return maybe_obj; |
@@ -4280,7 +4280,7 @@ MaybeObject* Heap::AllocateInternalSymbol(unibrow::CharacterStream* buffer, |
// Allocate string. |
Object* result; |
- { MaybeObject* maybe_result = (size > MaxObjectSizeInPagedSpace()) |
+ { MaybeObject* maybe_result = (size > Page::kMaxNonCodeHeapObjectSize) |
? lo_space_->AllocateRaw(size, NOT_EXECUTABLE) |
: old_data_space_->AllocateRaw(size); |
if (!maybe_result->ToObject(&result)) return maybe_result; |
@@ -4317,11 +4317,12 @@ MaybeObject* Heap::AllocateRawAsciiString(int length, PretenureFlag pretenure) { |
if (size > kMaxObjectSizeInNewSpace) { |
// Allocate in large object space, retry space will be ignored. |
space = LO_SPACE; |
- } else if (size > MaxObjectSizeInPagedSpace()) { |
+ } else if (size > Page::kMaxNonCodeHeapObjectSize) { |
// Allocate in new space, retry in large object space. |
retry_space = LO_SPACE; |
} |
- } else if (space == OLD_DATA_SPACE && size > MaxObjectSizeInPagedSpace()) { |
+ } else if (space == OLD_DATA_SPACE && |
+ size > Page::kMaxNonCodeHeapObjectSize) { |
space = LO_SPACE; |
} |
Object* result; |
@@ -4352,11 +4353,12 @@ MaybeObject* Heap::AllocateRawTwoByteString(int length, |
if (size > kMaxObjectSizeInNewSpace) { |
// Allocate in large object space, retry space will be ignored. |
space = LO_SPACE; |
- } else if (size > MaxObjectSizeInPagedSpace()) { |
+ } else if (size > Page::kMaxNonCodeHeapObjectSize) { |
// Allocate in new space, retry in large object space. |
retry_space = LO_SPACE; |
} |
- } else if (space == OLD_DATA_SPACE && size > MaxObjectSizeInPagedSpace()) { |
+ } else if (space == OLD_DATA_SPACE && |
+ size > Page::kMaxNonCodeHeapObjectSize) { |
space = LO_SPACE; |
} |
Object* result; |
@@ -4495,13 +4497,13 @@ MaybeObject* Heap::AllocateRawFixedArray(int length, PretenureFlag pretenure) { |
// Too big for new space. |
space = LO_SPACE; |
} else if (space == OLD_POINTER_SPACE && |
- size > MaxObjectSizeInPagedSpace()) { |
+ size > Page::kMaxNonCodeHeapObjectSize) { |
// Too big for old pointer space. |
space = LO_SPACE; |
} |
AllocationSpace retry_space = |
- (size <= MaxObjectSizeInPagedSpace()) ? OLD_POINTER_SPACE : LO_SPACE; |
+ (size <= Page::kMaxNonCodeHeapObjectSize) ? OLD_POINTER_SPACE : LO_SPACE; |
return AllocateRaw(size, space, retry_space); |
} |
@@ -4628,13 +4630,13 @@ MaybeObject* Heap::AllocateRawFixedDoubleArray(int length, |
// Too big for new space. |
space = LO_SPACE; |
} else if (space == OLD_DATA_SPACE && |
- size > MaxObjectSizeInPagedSpace()) { |
+ size > Page::kMaxNonCodeHeapObjectSize) { |
// Too big for old data space. |
space = LO_SPACE; |
} |
AllocationSpace retry_space = |
- (size <= MaxObjectSizeInPagedSpace()) ? OLD_DATA_SPACE : LO_SPACE; |
+ (size <= Page::kMaxNonCodeHeapObjectSize) ? OLD_DATA_SPACE : LO_SPACE; |
return AllocateRaw(size, space, retry_space); |
} |
@@ -4763,7 +4765,7 @@ STRUCT_LIST(MAKE_CASE) |
} |
int size = map->instance_size(); |
AllocationSpace space = |
- (size > MaxObjectSizeInPagedSpace()) ? LO_SPACE : OLD_POINTER_SPACE; |
+ (size > Page::kMaxNonCodeHeapObjectSize) ? LO_SPACE : OLD_POINTER_SPACE; |
Object* result; |
{ MaybeObject* maybe_result = Allocate(map, space); |
if (!maybe_result->ToObject(&result)) return maybe_result; |
@@ -5210,7 +5212,7 @@ void Heap::ZapFromSpace() { |
new_space_.FromSpaceEnd()); |
while (it.has_next()) { |
NewSpacePage* page = it.next(); |
- for (Address cursor = page->body(), limit = page->body_limit(); |
+ for (Address cursor = page->area_start(), limit = page->area_end(); |
cursor < limit; |
cursor += kPointerSize) { |
Memory::Address_at(cursor) = kFromSpaceZapValue; |
@@ -5349,9 +5351,9 @@ void Heap::OldPointerSpaceCheckStoreBuffer() { |
while (pages.has_next()) { |
Page* page = pages.next(); |
- Object** current = reinterpret_cast<Object**>(page->ObjectAreaStart()); |
+ Object** current = reinterpret_cast<Object**>(page->area_start()); |
- Address end = page->ObjectAreaEnd(); |
+ Address end = page->area_end(); |
Object*** store_buffer_position = store_buffer()->Start(); |
Object*** store_buffer_top = store_buffer()->Top(); |
@@ -5377,9 +5379,9 @@ void Heap::MapSpaceCheckStoreBuffer() { |
while (pages.has_next()) { |
Page* page = pages.next(); |
- Object** current = reinterpret_cast<Object**>(page->ObjectAreaStart()); |
+ Object** current = reinterpret_cast<Object**>(page->area_start()); |
- Address end = page->ObjectAreaEnd(); |
+ Address end = page->area_end(); |
Object*** store_buffer_position = store_buffer()->Start(); |
Object*** store_buffer_top = store_buffer()->Top(); |