Revision: 9406
Author: [email protected]
Date: Thu Sep 22 10:10:40 2011
Log: GC Cleanup + Set max old generation size to 700MB on ia32 and max
executable size to 128 MB (on ia32)
Review URL: http://codereview.chromium.org/7993003
http://code.google.com/p/v8/source/detail?r=9406
Modified:
/branches/bleeding_edge/src/heap.cc
/branches/bleeding_edge/src/spaces-inl.h
/branches/bleeding_edge/src/spaces.cc
/branches/bleeding_edge/src/spaces.h
/branches/bleeding_edge/test/mjsunit/mjsunit.status
=======================================
--- /branches/bleeding_edge/src/heap.cc Thu Sep 22 06:54:53 2011
+++ /branches/bleeding_edge/src/heap.cc Thu Sep 22 10:10:40 2011
@@ -81,8 +81,8 @@
reserved_semispace_size_(8 * Max(LUMP_OF_MEMORY, Page::kPageSize)),
max_semispace_size_(8 * Max(LUMP_OF_MEMORY, Page::kPageSize)),
initial_semispace_size_(Max(LUMP_OF_MEMORY, Page::kPageSize)),
- max_old_generation_size_(1400ul * LUMP_OF_MEMORY),
- max_executable_size_(256l * LUMP_OF_MEMORY),
+ max_old_generation_size_(700ul * LUMP_OF_MEMORY),
+ max_executable_size_(128l * LUMP_OF_MEMORY),
// Variables set based on semispace_size_ and old_generation_size_ in
// ConfigureHeap (survived_since_last_expansion_,
external_allocation_limit_)
=======================================
--- /branches/bleeding_edge/src/spaces-inl.h Mon Sep 19 11:36:47 2011
+++ /branches/bleeding_edge/src/spaces-inl.h Thu Sep 22 10:10:40 2011
@@ -251,14 +251,13 @@
// not contain slow case logic (eg, move to the next page or try free list
// allocation) so it can be used by all the allocation functions and for
all
// the paged spaces.
-HeapObject* PagedSpace::AllocateLinearly(AllocationInfo* alloc_info,
- int size_in_bytes) {
- Address current_top = alloc_info->top;
+HeapObject* PagedSpace::AllocateLinearly(int size_in_bytes) {
+ Address current_top = allocation_info_.top;
Address new_top = current_top + size_in_bytes;
- if (new_top > alloc_info->limit) return NULL;
-
- alloc_info->top = new_top;
- ASSERT(alloc_info->VerifyPagedAllocation());
+ if (new_top > allocation_info_.limit) return NULL;
+
+ allocation_info_.top = new_top;
+ ASSERT(allocation_info_.VerifyPagedAllocation());
ASSERT(current_top != NULL);
return HeapObject::FromAddress(current_top);
}
@@ -268,7 +267,7 @@
MaybeObject* PagedSpace::AllocateRaw(int size_in_bytes) {
ASSERT(HasBeenSetup());
ASSERT_OBJECT_SIZE(size_in_bytes);
- HeapObject* object = AllocateLinearly(&allocation_info_, size_in_bytes);
+ HeapObject* object = AllocateLinearly(size_in_bytes);
if (object != NULL) {
if (identity() == CODE_SPACE) {
SkipList::Update(object->address(), size_in_bytes);
=======================================
--- /branches/bleeding_edge/src/spaces.cc Thu Sep 22 09:01:35 2011
+++ /branches/bleeding_edge/src/spaces.cc Thu Sep 22 10:10:40 2011
@@ -764,15 +764,6 @@
void PagedSpace::Shrink() {
// TODO(1614) Not implemented.
}
-
-
-bool PagedSpace::EnsureCapacity(int capacity) {
- while (Capacity() < capacity) {
- // Expand the space until it has the required capacity or expansion
fails.
- if (!Expand()) return false;
- }
- return true;
-}
#ifdef DEBUG
=======================================
--- /branches/bleeding_edge/src/spaces.h Thu Sep 22 09:01:35 2011
+++ /branches/bleeding_edge/src/spaces.h Thu Sep 22 10:10:40 2011
@@ -1505,9 +1505,6 @@
// Releases half of unused pages.
void Shrink();
- // Ensures that the capacity is at least 'capacity'. Returns false on
failure.
- bool EnsureCapacity(int capacity);
-
// The dummy page that anchors the linked list of pages.
Page* anchor() { return &anchor_; }
@@ -1626,8 +1623,7 @@
// Generic fast case allocation function that tries linear allocation at
the
// address denoted by top in allocation_info_.
- inline HeapObject* AllocateLinearly(AllocationInfo* alloc_info,
- int size_in_bytes);
+ inline HeapObject* AllocateLinearly(int size_in_bytes);
// Slow path of AllocateRaw. This function is space-dependent.
MUST_USE_RESULT virtual HeapObject* SlowAllocateRaw(int size_in_bytes);
=======================================
--- /branches/bleeding_edge/test/mjsunit/mjsunit.status Wed Sep 21 02:58:40
2011
+++ /branches/bleeding_edge/test/mjsunit/mjsunit.status Thu Sep 22 10:10:40
2011
@@ -38,6 +38,9 @@
# NewGC: http://code.google.com/p/v8/issues/detail?id=1701
array-join: SKIP
+# NewGC: BUG(1719) slow to collect arrays over several contexts.
+regress/regress-524: SKIP
+
##############################################################################
# Too slow in debug mode with --stress-opt
compiler/regress-stacktrace-methods: PASS, SKIP if $mode == debug
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev