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 #ifndef V8_HEAP_HEAP_H_ | 5 #ifndef V8_HEAP_HEAP_H_ |
6 #define V8_HEAP_HEAP_H_ | 6 #define V8_HEAP_HEAP_H_ |
7 | 7 |
8 #include <cmath> | 8 #include <cmath> |
9 #include <map> | 9 #include <map> |
10 | 10 |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 V(Map, function_context_map, FunctionContextMap) \ | 55 V(Map, function_context_map, FunctionContextMap) \ |
56 V(Map, cell_map, CellMap) \ | 56 V(Map, cell_map, CellMap) \ |
57 V(Map, weak_cell_map, WeakCellMap) \ | 57 V(Map, weak_cell_map, WeakCellMap) \ |
58 V(Map, global_property_cell_map, GlobalPropertyCellMap) \ | 58 V(Map, global_property_cell_map, GlobalPropertyCellMap) \ |
59 V(Map, foreign_map, ForeignMap) \ | 59 V(Map, foreign_map, ForeignMap) \ |
60 V(Map, heap_number_map, HeapNumberMap) \ | 60 V(Map, heap_number_map, HeapNumberMap) \ |
61 V(Map, transition_array_map, TransitionArrayMap) \ | 61 V(Map, transition_array_map, TransitionArrayMap) \ |
62 V(FixedArray, empty_literals_array, EmptyLiteralsArray) \ | 62 V(FixedArray, empty_literals_array, EmptyLiteralsArray) \ |
63 V(FixedArray, empty_type_feedback_vector, EmptyTypeFeedbackVector) \ | 63 V(FixedArray, empty_type_feedback_vector, EmptyTypeFeedbackVector) \ |
64 V(FixedArray, empty_fixed_array, EmptyFixedArray) \ | 64 V(FixedArray, empty_fixed_array, EmptyFixedArray) \ |
| 65 V(ScopeInfo, empty_scope_info, EmptyScopeInfo) \ |
65 V(FixedArray, cleared_optimized_code_map, ClearedOptimizedCodeMap) \ | 66 V(FixedArray, cleared_optimized_code_map, ClearedOptimizedCodeMap) \ |
66 V(DescriptorArray, empty_descriptor_array, EmptyDescriptorArray) \ | 67 V(DescriptorArray, empty_descriptor_array, EmptyDescriptorArray) \ |
67 /* Entries beyond the first 32 */ \ | 68 /* Entries beyond the first 32 */ \ |
68 /* The roots above this line should be boring from a GC point of view. */ \ | 69 /* The roots above this line should be boring from a GC point of view. */ \ |
69 /* This means they are never in new space and never on a page that is */ \ | 70 /* This means they are never in new space and never on a page that is */ \ |
70 /* being compacted. */ \ | 71 /* being compacted. */ \ |
71 /* Oddballs */ \ | 72 /* Oddballs */ \ |
72 V(Oddball, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \ | 73 V(Oddball, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \ |
73 V(Oddball, arguments_marker, ArgumentsMarker) \ | 74 V(Oddball, arguments_marker, ArgumentsMarker) \ |
74 V(Oddball, exception, Exception) \ | 75 V(Oddball, exception, Exception) \ |
(...skipping 1957 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2032 MUST_USE_RESULT AllocationResult | 2033 MUST_USE_RESULT AllocationResult |
2033 CopyFixedDoubleArrayWithMap(FixedDoubleArray* src, Map* map); | 2034 CopyFixedDoubleArrayWithMap(FixedDoubleArray* src, Map* map); |
2034 | 2035 |
2035 // Allocates a fixed double array with uninitialized values. Returns | 2036 // Allocates a fixed double array with uninitialized values. Returns |
2036 MUST_USE_RESULT AllocationResult AllocateUninitializedFixedDoubleArray( | 2037 MUST_USE_RESULT AllocationResult AllocateUninitializedFixedDoubleArray( |
2037 int length, PretenureFlag pretenure = NOT_TENURED); | 2038 int length, PretenureFlag pretenure = NOT_TENURED); |
2038 | 2039 |
2039 // Allocate empty fixed array. | 2040 // Allocate empty fixed array. |
2040 MUST_USE_RESULT AllocationResult AllocateEmptyFixedArray(); | 2041 MUST_USE_RESULT AllocationResult AllocateEmptyFixedArray(); |
2041 | 2042 |
| 2043 // Allocate empty scope info. |
| 2044 MUST_USE_RESULT AllocationResult AllocateEmptyScopeInfo(); |
| 2045 |
2042 // Allocate empty fixed typed array of given type. | 2046 // Allocate empty fixed typed array of given type. |
2043 MUST_USE_RESULT AllocationResult | 2047 MUST_USE_RESULT AllocationResult |
2044 AllocateEmptyFixedTypedArray(ExternalArrayType array_type); | 2048 AllocateEmptyFixedTypedArray(ExternalArrayType array_type); |
2045 | 2049 |
2046 // Allocate a tenured simple cell. | 2050 // Allocate a tenured simple cell. |
2047 MUST_USE_RESULT AllocationResult AllocateCell(Object* value); | 2051 MUST_USE_RESULT AllocationResult AllocateCell(Object* value); |
2048 | 2052 |
2049 // Allocate a tenured JS global property cell initialized with the hole. | 2053 // Allocate a tenured JS global property cell initialized with the hole. |
2050 MUST_USE_RESULT AllocationResult AllocatePropertyCell(); | 2054 MUST_USE_RESULT AllocationResult AllocatePropertyCell(); |
2051 | 2055 |
(...skipping 585 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2637 friend class LargeObjectSpace; | 2641 friend class LargeObjectSpace; |
2638 friend class NewSpace; | 2642 friend class NewSpace; |
2639 friend class PagedSpace; | 2643 friend class PagedSpace; |
2640 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); | 2644 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); |
2641 }; | 2645 }; |
2642 | 2646 |
2643 } // namespace internal | 2647 } // namespace internal |
2644 } // namespace v8 | 2648 } // namespace v8 |
2645 | 2649 |
2646 #endif // V8_HEAP_HEAP_H_ | 2650 #endif // V8_HEAP_HEAP_H_ |
OLD | NEW |