| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #include "vm/pages.h" | 5 #include "vm/pages.h" |
| 6 | 6 |
| 7 #include "platform/assert.h" | 7 #include "platform/assert.h" |
| 8 #include "vm/compiler_stats.h" | 8 #include "vm/compiler_stats.h" |
| 9 #include "vm/gc_marker.h" | 9 #include "vm/gc_marker.h" |
| 10 #include "vm/gc_sweeper.h" | 10 #include "vm/gc_sweeper.h" |
| (...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 126 prot = VirtualMemory::kReadOnly; | 126 prot = VirtualMemory::kReadOnly; |
| 127 } | 127 } |
| 128 } else { | 128 } else { |
| 129 prot = VirtualMemory::kReadWrite; | 129 prot = VirtualMemory::kReadWrite; |
| 130 } | 130 } |
| 131 bool status = memory_->Protect(prot); | 131 bool status = memory_->Protect(prot); |
| 132 ASSERT(status); | 132 ASSERT(status); |
| 133 } | 133 } |
| 134 | 134 |
| 135 | 135 |
| 136 PageSpace::PageSpace(Heap* heap, intptr_t max_capacity_in_words) | 136 PageSpace::PageSpace(Heap* heap, |
| 137 intptr_t max_capacity_in_words, |
| 138 intptr_t max_external_in_words) |
| 137 : freelist_(), | 139 : freelist_(), |
| 138 heap_(heap), | 140 heap_(heap), |
| 139 pages_lock_(new Mutex()), | 141 pages_lock_(new Mutex()), |
| 140 pages_(NULL), | 142 pages_(NULL), |
| 141 pages_tail_(NULL), | 143 pages_tail_(NULL), |
| 142 exec_pages_(NULL), | 144 exec_pages_(NULL), |
| 143 exec_pages_tail_(NULL), | 145 exec_pages_tail_(NULL), |
| 144 large_pages_(NULL), | 146 large_pages_(NULL), |
| 145 bump_top_(0), | 147 bump_top_(0), |
| 146 bump_end_(0), | 148 bump_end_(0), |
| 147 max_capacity_in_words_(max_capacity_in_words), | 149 max_capacity_in_words_(max_capacity_in_words), |
| 150 max_external_in_words_(max_external_in_words), |
| 148 tasks_lock_(new Monitor()), | 151 tasks_lock_(new Monitor()), |
| 149 tasks_(0), | 152 tasks_(0), |
| 150 page_space_controller_(heap, | 153 page_space_controller_(heap, |
| 151 FLAG_old_gen_growth_space_ratio, | 154 FLAG_old_gen_growth_space_ratio, |
| 152 FLAG_old_gen_growth_rate, | 155 FLAG_old_gen_growth_rate, |
| 153 FLAG_old_gen_growth_time_ratio), | 156 FLAG_old_gen_growth_time_ratio), |
| 154 gc_time_micros_(0), | 157 gc_time_micros_(0), |
| 155 collections_(0) { | 158 collections_(0) { |
| 156 } | 159 } |
| 157 | 160 |
| (...skipping 947 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1105 return 0; | 1108 return 0; |
| 1106 } else { | 1109 } else { |
| 1107 ASSERT(total_time >= gc_time); | 1110 ASSERT(total_time >= gc_time); |
| 1108 int result = static_cast<int>((static_cast<double>(gc_time) / | 1111 int result = static_cast<int>((static_cast<double>(gc_time) / |
| 1109 static_cast<double>(total_time)) * 100); | 1112 static_cast<double>(total_time)) * 100); |
| 1110 return result; | 1113 return result; |
| 1111 } | 1114 } |
| 1112 } | 1115 } |
| 1113 | 1116 |
| 1114 } // namespace dart | 1117 } // namespace dart |
| OLD | NEW |