OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 146 matching lines...) Loading... |
157 EmptyExternalUint8ClampedArray) \ | 157 EmptyExternalUint8ClampedArray) \ |
158 V(Map, fixed_uint8_array_map, FixedUint8ArrayMap) \ | 158 V(Map, fixed_uint8_array_map, FixedUint8ArrayMap) \ |
159 V(Map, fixed_int8_array_map, FixedInt8ArrayMap) \ | 159 V(Map, fixed_int8_array_map, FixedInt8ArrayMap) \ |
160 V(Map, fixed_uint16_array_map, FixedUint16ArrayMap) \ | 160 V(Map, fixed_uint16_array_map, FixedUint16ArrayMap) \ |
161 V(Map, fixed_int16_array_map, FixedInt16ArrayMap) \ | 161 V(Map, fixed_int16_array_map, FixedInt16ArrayMap) \ |
162 V(Map, fixed_uint32_array_map, FixedUint32ArrayMap) \ | 162 V(Map, fixed_uint32_array_map, FixedUint32ArrayMap) \ |
163 V(Map, fixed_int32_array_map, FixedInt32ArrayMap) \ | 163 V(Map, fixed_int32_array_map, FixedInt32ArrayMap) \ |
164 V(Map, fixed_float32_array_map, FixedFloat32ArrayMap) \ | 164 V(Map, fixed_float32_array_map, FixedFloat32ArrayMap) \ |
165 V(Map, fixed_float64_array_map, FixedFloat64ArrayMap) \ | 165 V(Map, fixed_float64_array_map, FixedFloat64ArrayMap) \ |
166 V(Map, fixed_uint8_clamped_array_map, FixedUint8ClampedArrayMap) \ | 166 V(Map, fixed_uint8_clamped_array_map, FixedUint8ClampedArrayMap) \ |
| 167 V(FixedTypedArrayBase, empty_fixed_uint8_array, EmptyFixedUint8Array) \ |
| 168 V(FixedTypedArrayBase, empty_fixed_int8_array, EmptyFixedInt8Array) \ |
| 169 V(FixedTypedArrayBase, empty_fixed_uint16_array, EmptyFixedUint16Array) \ |
| 170 V(FixedTypedArrayBase, empty_fixed_int16_array, EmptyFixedInt16Array) \ |
| 171 V(FixedTypedArrayBase, empty_fixed_uint32_array, EmptyFixedUint32Array) \ |
| 172 V(FixedTypedArrayBase, empty_fixed_int32_array, EmptyFixedInt32Array) \ |
| 173 V(FixedTypedArrayBase, empty_fixed_float32_array, EmptyFixedFloat32Array) \ |
| 174 V(FixedTypedArrayBase, empty_fixed_float64_array, EmptyFixedFloat64Array) \ |
| 175 V(FixedTypedArrayBase, empty_fixed_uint8_clamped_array, \ |
| 176 EmptyFixedUint8ClampedArray) \ |
167 V(Map, non_strict_arguments_elements_map, NonStrictArgumentsElementsMap) \ | 177 V(Map, non_strict_arguments_elements_map, NonStrictArgumentsElementsMap) \ |
168 V(Map, function_context_map, FunctionContextMap) \ | 178 V(Map, function_context_map, FunctionContextMap) \ |
169 V(Map, catch_context_map, CatchContextMap) \ | 179 V(Map, catch_context_map, CatchContextMap) \ |
170 V(Map, with_context_map, WithContextMap) \ | 180 V(Map, with_context_map, WithContextMap) \ |
171 V(Map, block_context_map, BlockContextMap) \ | 181 V(Map, block_context_map, BlockContextMap) \ |
172 V(Map, module_context_map, ModuleContextMap) \ | 182 V(Map, module_context_map, ModuleContextMap) \ |
173 V(Map, global_context_map, GlobalContextMap) \ | 183 V(Map, global_context_map, GlobalContextMap) \ |
174 V(Map, oddball_map, OddballMap) \ | 184 V(Map, oddball_map, OddballMap) \ |
175 V(Map, message_object_map, JSMessageObjectMap) \ | 185 V(Map, message_object_map, JSMessageObjectMap) \ |
176 V(Map, foreign_map, ForeignMap) \ | 186 V(Map, foreign_map, ForeignMap) \ |
(...skipping 1461 matching lines...) Loading... |
1638 | 1648 |
1639 Map* MapForFixedTypedArray(ExternalArrayType array_type); | 1649 Map* MapForFixedTypedArray(ExternalArrayType array_type); |
1640 RootListIndex RootIndexForFixedTypedArray( | 1650 RootListIndex RootIndexForFixedTypedArray( |
1641 ExternalArrayType array_type); | 1651 ExternalArrayType array_type); |
1642 | 1652 |
1643 Map* MapForExternalArrayType(ExternalArrayType array_type); | 1653 Map* MapForExternalArrayType(ExternalArrayType array_type); |
1644 RootListIndex RootIndexForExternalArrayType( | 1654 RootListIndex RootIndexForExternalArrayType( |
1645 ExternalArrayType array_type); | 1655 ExternalArrayType array_type); |
1646 | 1656 |
1647 RootListIndex RootIndexForEmptyExternalArray(ElementsKind kind); | 1657 RootListIndex RootIndexForEmptyExternalArray(ElementsKind kind); |
| 1658 RootListIndex RootIndexForEmptyFixedTypedArray(ElementsKind kind); |
1648 ExternalArray* EmptyExternalArrayForMap(Map* map); | 1659 ExternalArray* EmptyExternalArrayForMap(Map* map); |
| 1660 FixedTypedArrayBase* EmptyFixedTypedArrayForMap(Map* map); |
1649 | 1661 |
1650 void RecordStats(HeapStats* stats, bool take_snapshot = false); | 1662 void RecordStats(HeapStats* stats, bool take_snapshot = false); |
1651 | 1663 |
1652 // Copy block of memory from src to dst. Size of block should be aligned | 1664 // Copy block of memory from src to dst. Size of block should be aligned |
1653 // by pointer size. | 1665 // by pointer size. |
1654 static inline void CopyBlock(Address dst, Address src, int byte_size); | 1666 static inline void CopyBlock(Address dst, Address src, int byte_size); |
1655 | 1667 |
1656 // Optimized version of memmove for blocks with pointer size aligned sizes and | 1668 // Optimized version of memmove for blocks with pointer size aligned sizes and |
1657 // pointer size aligned addresses. | 1669 // pointer size aligned addresses. |
1658 static inline void MoveBlock(Address dst, Address src, int byte_size); | 1670 static inline void MoveBlock(Address dst, Address src, int byte_size); |
(...skipping 553 matching lines...) Loading... |
2212 ElementsKind elements_kind, | 2224 ElementsKind elements_kind, |
2213 PretenureFlag pretenure = NOT_TENURED); | 2225 PretenureFlag pretenure = NOT_TENURED); |
2214 | 2226 |
2215 // Allocate empty fixed array. | 2227 // Allocate empty fixed array. |
2216 MUST_USE_RESULT MaybeObject* AllocateEmptyFixedArray(); | 2228 MUST_USE_RESULT MaybeObject* AllocateEmptyFixedArray(); |
2217 | 2229 |
2218 // Allocate empty external array of given type. | 2230 // Allocate empty external array of given type. |
2219 MUST_USE_RESULT MaybeObject* AllocateEmptyExternalArray( | 2231 MUST_USE_RESULT MaybeObject* AllocateEmptyExternalArray( |
2220 ExternalArrayType array_type); | 2232 ExternalArrayType array_type); |
2221 | 2233 |
| 2234 // Allocate empty fixed typed array of given type. |
| 2235 MUST_USE_RESULT MaybeObject* AllocateEmptyFixedTypedArray( |
| 2236 ExternalArrayType array_type); |
| 2237 |
2222 // Allocate empty fixed double array. | 2238 // Allocate empty fixed double array. |
2223 MUST_USE_RESULT MaybeObject* AllocateEmptyFixedDoubleArray(); | 2239 MUST_USE_RESULT MaybeObject* AllocateEmptyFixedDoubleArray(); |
2224 | 2240 |
2225 // Allocate empty constant pool array. | 2241 // Allocate empty constant pool array. |
2226 MUST_USE_RESULT MaybeObject* AllocateEmptyConstantPoolArray(); | 2242 MUST_USE_RESULT MaybeObject* AllocateEmptyConstantPoolArray(); |
2227 | 2243 |
2228 // Allocate a tenured simple cell. | 2244 // Allocate a tenured simple cell. |
2229 MUST_USE_RESULT MaybeObject* AllocateCell(Object* value); | 2245 MUST_USE_RESULT MaybeObject* AllocateCell(Object* value); |
2230 | 2246 |
2231 // Allocate a tenured JS global property cell initialized with the hole. | 2247 // Allocate a tenured JS global property cell initialized with the hole. |
(...skipping 891 matching lines...) Loading... |
3123 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 3139 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
3124 | 3140 |
3125 private: | 3141 private: |
3126 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 3142 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
3127 }; | 3143 }; |
3128 #endif // DEBUG | 3144 #endif // DEBUG |
3129 | 3145 |
3130 } } // namespace v8::internal | 3146 } } // namespace v8::internal |
3131 | 3147 |
3132 #endif // V8_HEAP_H_ | 3148 #endif // V8_HEAP_H_ |
OLD | NEW |