| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "v8.h" | 5 #include "v8.h" |
| 6 | 6 |
| 7 #include "accessors.h" | 7 #include "accessors.h" |
| 8 #include "api.h" | 8 #include "api.h" |
| 9 #include "bootstrapper.h" | 9 #include "bootstrapper.h" |
| 10 #include "codegen.h" | 10 #include "codegen.h" |
| (...skipping 5034 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5045 "semi-space size of %d MB\n", max_semi_space_size_); | 5045 "semi-space size of %d MB\n", max_semi_space_size_); |
| 5046 } | 5046 } |
| 5047 } else { | 5047 } else { |
| 5048 initial_semispace_size_ = initial_semispace_size; | 5048 initial_semispace_size_ = initial_semispace_size; |
| 5049 } | 5049 } |
| 5050 } | 5050 } |
| 5051 | 5051 |
| 5052 initial_semispace_size_ = Min(initial_semispace_size_, max_semi_space_size_); | 5052 initial_semispace_size_ = Min(initial_semispace_size_, max_semi_space_size_); |
| 5053 | 5053 |
| 5054 // The external allocation limit should be below 256 MB on all architectures | 5054 // The external allocation limit should be below 256 MB on all architectures |
| 5055 // to avoid unnecessary low memory notifications, as that is the threshold | 5055 // to avoid that resource-constrained embedders run low on memory. |
| 5056 // for some embedders. | 5056 external_allocation_limit_ = 256 * MB; |
| 5057 external_allocation_limit_ = 12 * max_semi_space_size_; | |
| 5058 ASSERT(external_allocation_limit_ <= 256 * MB); | 5057 ASSERT(external_allocation_limit_ <= 256 * MB); |
| 5059 | 5058 |
| 5060 // The old generation is paged and needs at least one page for each space. | 5059 // The old generation is paged and needs at least one page for each space. |
| 5061 int paged_space_count = LAST_PAGED_SPACE - FIRST_PAGED_SPACE + 1; | 5060 int paged_space_count = LAST_PAGED_SPACE - FIRST_PAGED_SPACE + 1; |
| 5062 max_old_generation_size_ = | 5061 max_old_generation_size_ = |
| 5063 Max(static_cast<intptr_t>(paged_space_count * Page::kPageSize), | 5062 Max(static_cast<intptr_t>(paged_space_count * Page::kPageSize), |
| 5064 max_old_generation_size_); | 5063 max_old_generation_size_); |
| 5065 | 5064 |
| 5066 // We rely on being able to allocate new arrays in paged spaces. | 5065 // We rely on being able to allocate new arrays in paged spaces. |
| 5067 ASSERT(Page::kMaxRegularHeapObjectSize >= | 5066 ASSERT(Page::kMaxRegularHeapObjectSize >= |
| (...skipping 1415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6483 static_cast<int>(object_sizes_last_time_[index])); | 6482 static_cast<int>(object_sizes_last_time_[index])); |
| 6484 CODE_AGE_LIST_COMPLETE(ADJUST_LAST_TIME_OBJECT_COUNT) | 6483 CODE_AGE_LIST_COMPLETE(ADJUST_LAST_TIME_OBJECT_COUNT) |
| 6485 #undef ADJUST_LAST_TIME_OBJECT_COUNT | 6484 #undef ADJUST_LAST_TIME_OBJECT_COUNT |
| 6486 | 6485 |
| 6487 OS::MemCopy(object_counts_last_time_, object_counts_, sizeof(object_counts_)); | 6486 OS::MemCopy(object_counts_last_time_, object_counts_, sizeof(object_counts_)); |
| 6488 OS::MemCopy(object_sizes_last_time_, object_sizes_, sizeof(object_sizes_)); | 6487 OS::MemCopy(object_sizes_last_time_, object_sizes_, sizeof(object_sizes_)); |
| 6489 ClearObjectStats(); | 6488 ClearObjectStats(); |
| 6490 } | 6489 } |
| 6491 | 6490 |
| 6492 } } // namespace v8::internal | 6491 } } // namespace v8::internal |
| OLD | NEW |