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 28 matching lines...) Expand all Loading... | |
39 V(Oddball, true_value, TrueValue) \ | 39 V(Oddball, true_value, TrueValue) \ |
40 V(Oddball, false_value, FalseValue) \ | 40 V(Oddball, false_value, FalseValue) \ |
41 V(String, empty_string, empty_string) \ | 41 V(String, empty_string, empty_string) \ |
42 V(Oddball, uninitialized_value, UninitializedValue) \ | 42 V(Oddball, uninitialized_value, UninitializedValue) \ |
43 V(Map, cell_map, CellMap) \ | 43 V(Map, cell_map, CellMap) \ |
44 V(Map, global_property_cell_map, GlobalPropertyCellMap) \ | 44 V(Map, global_property_cell_map, GlobalPropertyCellMap) \ |
45 V(Map, shared_function_info_map, SharedFunctionInfoMap) \ | 45 V(Map, shared_function_info_map, SharedFunctionInfoMap) \ |
46 V(Map, meta_map, MetaMap) \ | 46 V(Map, meta_map, MetaMap) \ |
47 V(Map, heap_number_map, HeapNumberMap) \ | 47 V(Map, heap_number_map, HeapNumberMap) \ |
48 V(Map, mutable_heap_number_map, MutableHeapNumberMap) \ | 48 V(Map, mutable_heap_number_map, MutableHeapNumberMap) \ |
49 V(Map, float32x4_map, Float32x4Map) \ | |
49 V(Map, native_context_map, NativeContextMap) \ | 50 V(Map, native_context_map, NativeContextMap) \ |
50 V(Map, fixed_array_map, FixedArrayMap) \ | 51 V(Map, fixed_array_map, FixedArrayMap) \ |
51 V(Map, code_map, CodeMap) \ | 52 V(Map, code_map, CodeMap) \ |
52 V(Map, scope_info_map, ScopeInfoMap) \ | 53 V(Map, scope_info_map, ScopeInfoMap) \ |
53 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \ | 54 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \ |
54 V(Map, fixed_double_array_map, FixedDoubleArrayMap) \ | 55 V(Map, fixed_double_array_map, FixedDoubleArrayMap) \ |
55 V(Map, weak_cell_map, WeakCellMap) \ | 56 V(Map, weak_cell_map, WeakCellMap) \ |
56 V(Map, one_byte_string_map, OneByteStringMap) \ | 57 V(Map, one_byte_string_map, OneByteStringMap) \ |
57 V(Map, one_byte_internalized_string_map, OneByteInternalizedStringMap) \ | 58 V(Map, one_byte_internalized_string_map, OneByteInternalizedStringMap) \ |
58 V(Map, function_context_map, FunctionContextMap) \ | 59 V(Map, function_context_map, FunctionContextMap) \ |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
335 V(NullValue) \ | 336 V(NullValue) \ |
336 V(TrueValue) \ | 337 V(TrueValue) \ |
337 V(FalseValue) \ | 338 V(FalseValue) \ |
338 V(UninitializedValue) \ | 339 V(UninitializedValue) \ |
339 V(CellMap) \ | 340 V(CellMap) \ |
340 V(GlobalPropertyCellMap) \ | 341 V(GlobalPropertyCellMap) \ |
341 V(SharedFunctionInfoMap) \ | 342 V(SharedFunctionInfoMap) \ |
342 V(MetaMap) \ | 343 V(MetaMap) \ |
343 V(HeapNumberMap) \ | 344 V(HeapNumberMap) \ |
344 V(MutableHeapNumberMap) \ | 345 V(MutableHeapNumberMap) \ |
346 V(Float32x4Map) \ | |
345 V(NativeContextMap) \ | 347 V(NativeContextMap) \ |
346 V(FixedArrayMap) \ | 348 V(FixedArrayMap) \ |
347 V(CodeMap) \ | 349 V(CodeMap) \ |
348 V(ScopeInfoMap) \ | 350 V(ScopeInfoMap) \ |
349 V(FixedCOWArrayMap) \ | 351 V(FixedCOWArrayMap) \ |
350 V(FixedDoubleArrayMap) \ | 352 V(FixedDoubleArrayMap) \ |
351 V(WeakCellMap) \ | 353 V(WeakCellMap) \ |
352 V(NoInterceptorResultSentinel) \ | 354 V(NoInterceptorResultSentinel) \ |
353 V(HashTableMap) \ | 355 V(HashTableMap) \ |
354 V(OrderedHashTableMap) \ | 356 V(OrderedHashTableMap) \ |
(...skipping 1236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1591 AllocationSite* allocation_site = NULL); | 1593 AllocationSite* allocation_site = NULL); |
1592 | 1594 |
1593 // Allocates and initializes a new JavaScript object based on a map. | 1595 // Allocates and initializes a new JavaScript object based on a map. |
1594 // Passing an allocation site means that a memento will be created that | 1596 // Passing an allocation site means that a memento will be created that |
1595 // points to the site. | 1597 // points to the site. |
1596 MUST_USE_RESULT AllocationResult | 1598 MUST_USE_RESULT AllocationResult |
1597 AllocateJSObjectFromMap(Map* map, PretenureFlag pretenure = NOT_TENURED, | 1599 AllocateJSObjectFromMap(Map* map, PretenureFlag pretenure = NOT_TENURED, |
1598 bool alloc_props = true, | 1600 bool alloc_props = true, |
1599 AllocationSite* allocation_site = NULL); | 1601 AllocationSite* allocation_site = NULL); |
1600 | 1602 |
1601 // Allocated a HeapNumber from value. | 1603 // Allocates a HeapNumber from value. |
1602 MUST_USE_RESULT AllocationResult | 1604 MUST_USE_RESULT AllocationResult |
1603 AllocateHeapNumber(double value, MutableMode mode = IMMUTABLE, | 1605 AllocateHeapNumber(double value, MutableMode mode = IMMUTABLE, |
1604 PretenureFlag pretenure = NOT_TENURED); | 1606 PretenureFlag pretenure = NOT_TENURED); |
1605 | 1607 |
1606 // Allocate a byte array of the specified length | 1608 // Allocates a Float32x4 from value. |
1609 MUST_USE_RESULT AllocationResult | |
1610 AllocateFloat32x4(double w, double x, double y, double z, | |
titzer
2015/06/03 13:27:15
Float
bbudge
2015/06/03 20:31:48
Done.
| |
1611 PretenureFlag pretenure = NOT_TENURED); | |
1612 | |
1613 // Allocates a byte array of the specified length | |
1607 MUST_USE_RESULT AllocationResult | 1614 MUST_USE_RESULT AllocationResult |
1608 AllocateByteArray(int length, PretenureFlag pretenure = NOT_TENURED); | 1615 AllocateByteArray(int length, PretenureFlag pretenure = NOT_TENURED); |
1609 | 1616 |
1610 // Copy the code and scope info part of the code object, but insert | 1617 // Copy the code and scope info part of the code object, but insert |
1611 // the provided data as the relocation information. | 1618 // the provided data as the relocation information. |
1612 MUST_USE_RESULT AllocationResult | 1619 MUST_USE_RESULT AllocationResult |
1613 CopyCode(Code* code, Vector<byte> reloc_info); | 1620 CopyCode(Code* code, Vector<byte> reloc_info); |
1614 | 1621 |
1615 MUST_USE_RESULT AllocationResult CopyCode(Code* code); | 1622 MUST_USE_RESULT AllocationResult CopyCode(Code* code); |
1616 | 1623 |
(...skipping 1105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2722 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 2729 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
2723 | 2730 |
2724 private: | 2731 private: |
2725 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 2732 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
2726 }; | 2733 }; |
2727 #endif // DEBUG | 2734 #endif // DEBUG |
2728 } | 2735 } |
2729 } // namespace v8::internal | 2736 } // namespace v8::internal |
2730 | 2737 |
2731 #endif // V8_HEAP_HEAP_H_ | 2738 #endif // V8_HEAP_HEAP_H_ |
OLD | NEW |