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 30 matching lines...) Expand all Loading... |
41 V(String, empty_string, empty_string) \ | 41 V(String, empty_string, empty_string) \ |
42 V(Map, meta_map, MetaMap) \ | 42 V(Map, meta_map, MetaMap) \ |
43 V(Map, byte_array_map, ByteArrayMap) \ | 43 V(Map, byte_array_map, ByteArrayMap) \ |
44 V(Map, fixed_array_map, FixedArrayMap) \ | 44 V(Map, fixed_array_map, FixedArrayMap) \ |
45 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \ | 45 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \ |
46 V(Map, hash_table_map, HashTableMap) \ | 46 V(Map, hash_table_map, HashTableMap) \ |
47 V(Map, symbol_map, SymbolMap) \ | 47 V(Map, symbol_map, SymbolMap) \ |
48 V(Map, one_byte_string_map, OneByteStringMap) \ | 48 V(Map, one_byte_string_map, OneByteStringMap) \ |
49 V(Map, one_byte_internalized_string_map, OneByteInternalizedStringMap) \ | 49 V(Map, one_byte_internalized_string_map, OneByteInternalizedStringMap) \ |
50 V(Map, scope_info_map, ScopeInfoMap) \ | 50 V(Map, scope_info_map, ScopeInfoMap) \ |
51 V(Map, module_info_entry_map, ModuleInfoEntryMap) \ | |
52 V(Map, module_info_map, ModuleInfoMap) \ | |
53 V(Map, shared_function_info_map, SharedFunctionInfoMap) \ | 51 V(Map, shared_function_info_map, SharedFunctionInfoMap) \ |
54 V(Map, code_map, CodeMap) \ | 52 V(Map, code_map, CodeMap) \ |
55 V(Map, function_context_map, FunctionContextMap) \ | 53 V(Map, function_context_map, FunctionContextMap) \ |
56 V(Map, cell_map, CellMap) \ | 54 V(Map, cell_map, CellMap) \ |
57 V(Map, weak_cell_map, WeakCellMap) \ | 55 V(Map, weak_cell_map, WeakCellMap) \ |
58 V(Map, global_property_cell_map, GlobalPropertyCellMap) \ | 56 V(Map, global_property_cell_map, GlobalPropertyCellMap) \ |
59 V(Map, foreign_map, ForeignMap) \ | 57 V(Map, foreign_map, ForeignMap) \ |
60 V(Map, heap_number_map, HeapNumberMap) \ | 58 V(Map, heap_number_map, HeapNumberMap) \ |
61 V(Map, transition_array_map, TransitionArrayMap) \ | 59 V(Map, transition_array_map, TransitionArrayMap) \ |
62 V(FixedArray, empty_literals_array, EmptyLiteralsArray) \ | 60 V(FixedArray, empty_literals_array, EmptyLiteralsArray) \ |
63 V(FixedArray, empty_type_feedback_vector, EmptyTypeFeedbackVector) \ | 61 V(FixedArray, empty_type_feedback_vector, EmptyTypeFeedbackVector) \ |
64 V(FixedArray, empty_fixed_array, EmptyFixedArray) \ | 62 V(FixedArray, empty_fixed_array, EmptyFixedArray) \ |
65 V(ScopeInfo, empty_scope_info, EmptyScopeInfo) \ | |
66 V(DescriptorArray, empty_descriptor_array, EmptyDescriptorArray) \ | 63 V(DescriptorArray, empty_descriptor_array, EmptyDescriptorArray) \ |
67 /* Entries beyond the first 32 */ \ | 64 /* Entries beyond the first 32 */ \ |
68 /* The roots above this line should be boring from a GC point of view. */ \ | 65 /* 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 */ \ | 66 /* This means they are never in new space and never on a page that is */ \ |
70 /* being compacted. */ \ | 67 /* being compacted. */ \ |
71 /* Oddballs */ \ | 68 /* Oddballs */ \ |
72 V(Oddball, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \ | 69 V(Oddball, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \ |
73 V(Oddball, arguments_marker, ArgumentsMarker) \ | 70 V(Oddball, arguments_marker, ArgumentsMarker) \ |
74 V(Oddball, exception, Exception) \ | 71 V(Oddball, exception, Exception) \ |
75 V(Oddball, termination_exception, TerminationException) \ | 72 V(Oddball, termination_exception, TerminationException) \ |
(...skipping 11 matching lines...) Expand all Loading... |
87 /* Maps */ \ | 84 /* Maps */ \ |
88 V(Map, fixed_double_array_map, FixedDoubleArrayMap) \ | 85 V(Map, fixed_double_array_map, FixedDoubleArrayMap) \ |
89 V(Map, mutable_heap_number_map, MutableHeapNumberMap) \ | 86 V(Map, mutable_heap_number_map, MutableHeapNumberMap) \ |
90 V(Map, ordered_hash_table_map, OrderedHashTableMap) \ | 87 V(Map, ordered_hash_table_map, OrderedHashTableMap) \ |
91 V(Map, unseeded_number_dictionary_map, UnseededNumberDictionaryMap) \ | 88 V(Map, unseeded_number_dictionary_map, UnseededNumberDictionaryMap) \ |
92 V(Map, sloppy_arguments_elements_map, SloppyArgumentsElementsMap) \ | 89 V(Map, sloppy_arguments_elements_map, SloppyArgumentsElementsMap) \ |
93 V(Map, message_object_map, JSMessageObjectMap) \ | 90 V(Map, message_object_map, JSMessageObjectMap) \ |
94 V(Map, neander_map, NeanderMap) \ | 91 V(Map, neander_map, NeanderMap) \ |
95 V(Map, external_map, ExternalMap) \ | 92 V(Map, external_map, ExternalMap) \ |
96 V(Map, bytecode_array_map, BytecodeArrayMap) \ | 93 V(Map, bytecode_array_map, BytecodeArrayMap) \ |
| 94 V(Map, module_info_entry_map, ModuleInfoEntryMap) \ |
| 95 V(Map, module_info_map, ModuleInfoMap) \ |
97 /* String maps */ \ | 96 /* String maps */ \ |
98 V(Map, native_source_string_map, NativeSourceStringMap) \ | 97 V(Map, native_source_string_map, NativeSourceStringMap) \ |
99 V(Map, string_map, StringMap) \ | 98 V(Map, string_map, StringMap) \ |
100 V(Map, cons_one_byte_string_map, ConsOneByteStringMap) \ | 99 V(Map, cons_one_byte_string_map, ConsOneByteStringMap) \ |
101 V(Map, cons_string_map, ConsStringMap) \ | 100 V(Map, cons_string_map, ConsStringMap) \ |
102 V(Map, sliced_string_map, SlicedStringMap) \ | 101 V(Map, sliced_string_map, SlicedStringMap) \ |
103 V(Map, sliced_one_byte_string_map, SlicedOneByteStringMap) \ | 102 V(Map, sliced_one_byte_string_map, SlicedOneByteStringMap) \ |
104 V(Map, external_string_map, ExternalStringMap) \ | 103 V(Map, external_string_map, ExternalStringMap) \ |
105 V(Map, external_string_with_one_byte_data_map, \ | 104 V(Map, external_string_with_one_byte_data_map, \ |
106 ExternalStringWithOneByteDataMap) \ | 105 ExternalStringWithOneByteDataMap) \ |
(...skipping 28 matching lines...) Expand all Loading... |
135 V(Map, int32x4_map, Int32x4Map) \ | 134 V(Map, int32x4_map, Int32x4Map) \ |
136 V(Map, uint32x4_map, Uint32x4Map) \ | 135 V(Map, uint32x4_map, Uint32x4Map) \ |
137 V(Map, bool32x4_map, Bool32x4Map) \ | 136 V(Map, bool32x4_map, Bool32x4Map) \ |
138 V(Map, int16x8_map, Int16x8Map) \ | 137 V(Map, int16x8_map, Int16x8Map) \ |
139 V(Map, uint16x8_map, Uint16x8Map) \ | 138 V(Map, uint16x8_map, Uint16x8Map) \ |
140 V(Map, bool16x8_map, Bool16x8Map) \ | 139 V(Map, bool16x8_map, Bool16x8Map) \ |
141 V(Map, int8x16_map, Int8x16Map) \ | 140 V(Map, int8x16_map, Int8x16Map) \ |
142 V(Map, uint8x16_map, Uint8x16Map) \ | 141 V(Map, uint8x16_map, Uint8x16Map) \ |
143 V(Map, bool8x16_map, Bool8x16Map) \ | 142 V(Map, bool8x16_map, Bool8x16Map) \ |
144 /* Canonical empty values */ \ | 143 /* Canonical empty values */ \ |
| 144 V(ScopeInfo, empty_scope_info, EmptyScopeInfo) \ |
145 V(ByteArray, empty_byte_array, EmptyByteArray) \ | 145 V(ByteArray, empty_byte_array, EmptyByteArray) \ |
146 V(FixedTypedArrayBase, empty_fixed_uint8_array, EmptyFixedUint8Array) \ | 146 V(FixedTypedArrayBase, empty_fixed_uint8_array, EmptyFixedUint8Array) \ |
147 V(FixedTypedArrayBase, empty_fixed_int8_array, EmptyFixedInt8Array) \ | 147 V(FixedTypedArrayBase, empty_fixed_int8_array, EmptyFixedInt8Array) \ |
148 V(FixedTypedArrayBase, empty_fixed_uint16_array, EmptyFixedUint16Array) \ | 148 V(FixedTypedArrayBase, empty_fixed_uint16_array, EmptyFixedUint16Array) \ |
149 V(FixedTypedArrayBase, empty_fixed_int16_array, EmptyFixedInt16Array) \ | 149 V(FixedTypedArrayBase, empty_fixed_int16_array, EmptyFixedInt16Array) \ |
150 V(FixedTypedArrayBase, empty_fixed_uint32_array, EmptyFixedUint32Array) \ | 150 V(FixedTypedArrayBase, empty_fixed_uint32_array, EmptyFixedUint32Array) \ |
151 V(FixedTypedArrayBase, empty_fixed_int32_array, EmptyFixedInt32Array) \ | 151 V(FixedTypedArrayBase, empty_fixed_int32_array, EmptyFixedInt32Array) \ |
152 V(FixedTypedArrayBase, empty_fixed_float32_array, EmptyFixedFloat32Array) \ | 152 V(FixedTypedArrayBase, empty_fixed_float32_array, EmptyFixedFloat32Array) \ |
153 V(FixedTypedArrayBase, empty_fixed_float64_array, EmptyFixedFloat64Array) \ | 153 V(FixedTypedArrayBase, empty_fixed_float64_array, EmptyFixedFloat64Array) \ |
154 V(FixedTypedArrayBase, empty_fixed_uint8_clamped_array, \ | 154 V(FixedTypedArrayBase, empty_fixed_uint8_clamped_array, \ |
(...skipping 2489 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2644 } | 2644 } |
2645 | 2645 |
2646 private: | 2646 private: |
2647 Heap* heap_; | 2647 Heap* heap_; |
2648 }; | 2648 }; |
2649 | 2649 |
2650 } // namespace internal | 2650 } // namespace internal |
2651 } // namespace v8 | 2651 } // namespace v8 |
2652 | 2652 |
2653 #endif // V8_HEAP_HEAP_H_ | 2653 #endif // V8_HEAP_HEAP_H_ |
OLD | NEW |