OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 #ifndef V8_HEAP_SPACES_H_ | 5 #ifndef V8_HEAP_SPACES_H_ |
6 #define V8_HEAP_SPACES_H_ | 6 #define V8_HEAP_SPACES_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/base/atomicops.h" | 9 #include "src/base/atomicops.h" |
10 #include "src/base/bits.h" | 10 #include "src/base/bits.h" |
(...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
360 ABOUT_TO_BE_FREED, | 360 ABOUT_TO_BE_FREED, |
361 POINTERS_TO_HERE_ARE_INTERESTING, | 361 POINTERS_TO_HERE_ARE_INTERESTING, |
362 POINTERS_FROM_HERE_ARE_INTERESTING, | 362 POINTERS_FROM_HERE_ARE_INTERESTING, |
363 SCAN_ON_SCAVENGE, | 363 SCAN_ON_SCAVENGE, |
364 IN_FROM_SPACE, // Mutually exclusive with IN_TO_SPACE. | 364 IN_FROM_SPACE, // Mutually exclusive with IN_TO_SPACE. |
365 IN_TO_SPACE, // All pages in new space has one of these two set. | 365 IN_TO_SPACE, // All pages in new space has one of these two set. |
366 NEW_SPACE_BELOW_AGE_MARK, | 366 NEW_SPACE_BELOW_AGE_MARK, |
367 EVACUATION_CANDIDATE, | 367 EVACUATION_CANDIDATE, |
368 RESCAN_ON_EVACUATION, | 368 RESCAN_ON_EVACUATION, |
369 NEVER_EVACUATE, // May contain immortal immutables. | 369 NEVER_EVACUATE, // May contain immortal immutables. |
| 370 POPULAR_PAGE, // Slots buffer of this page overflowed on the previous GC. |
370 | 371 |
371 // WAS_SWEPT indicates that marking bits have been cleared by the sweeper, | 372 // WAS_SWEPT indicates that marking bits have been cleared by the sweeper, |
372 // otherwise marking bits are still intact. | 373 // otherwise marking bits are still intact. |
373 WAS_SWEPT, | 374 WAS_SWEPT, |
374 | 375 |
375 // Large objects can have a progress bar in their page header. These object | 376 // Large objects can have a progress bar in their page header. These object |
376 // are scanned in increments and will be kept black while being scanned. | 377 // are scanned in increments and will be kept black while being scanned. |
377 // Even if the mutator writes to them they will be kept black and a white | 378 // Even if the mutator writes to them they will be kept black and a white |
378 // to grey transition is performed in the value. | 379 // to grey transition is performed in the value. |
379 HAS_PROGRESS_BAR, | 380 HAS_PROGRESS_BAR, |
(...skipping 2456 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2836 count = 0; | 2837 count = 0; |
2837 } | 2838 } |
2838 // Must be small, since an iteration is used for lookup. | 2839 // Must be small, since an iteration is used for lookup. |
2839 static const int kMaxComments = 64; | 2840 static const int kMaxComments = 64; |
2840 }; | 2841 }; |
2841 #endif | 2842 #endif |
2842 } | 2843 } |
2843 } // namespace v8::internal | 2844 } // namespace v8::internal |
2844 | 2845 |
2845 #endif // V8_HEAP_SPACES_H_ | 2846 #endif // V8_HEAP_SPACES_H_ |
OLD | NEW |