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 1949 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1960 | 1960 |
1961 // Allocates a fixed array initialized with undefined values | 1961 // Allocates a fixed array initialized with undefined values |
1962 MUST_USE_RESULT AllocationResult | 1962 MUST_USE_RESULT AllocationResult |
1963 AllocateFixedArray(int length, PretenureFlag pretenure = NOT_TENURED); | 1963 AllocateFixedArray(int length, PretenureFlag pretenure = NOT_TENURED); |
1964 | 1964 |
1965 // Allocate an uninitialized object. The memory is non-executable if the | 1965 // Allocate an uninitialized object. The memory is non-executable if the |
1966 // hardware and OS allow. This is the single choke-point for allocations | 1966 // hardware and OS allow. This is the single choke-point for allocations |
1967 // performed by the runtime and should not be bypassed (to extend this to | 1967 // performed by the runtime and should not be bypassed (to extend this to |
1968 // inlined allocations, use the Heap::DisableInlineAllocation() support). | 1968 // inlined allocations, use the Heap::DisableInlineAllocation() support). |
1969 MUST_USE_RESULT inline AllocationResult AllocateRaw( | 1969 MUST_USE_RESULT inline AllocationResult AllocateRaw( |
1970 int size_in_bytes, AllocationSpace space, | 1970 int size_in_bytes, AllocationSpace space, AllocationSpace retry_space, |
1971 AllocationAlignment aligment = kWordAligned); | 1971 AllocationAlignment aligment = kWordAligned); |
1972 | 1972 |
1973 // Allocates a heap object based on the map. | 1973 // Allocates a heap object based on the map. |
1974 MUST_USE_RESULT AllocationResult | 1974 MUST_USE_RESULT AllocationResult |
1975 Allocate(Map* map, AllocationSpace space, | 1975 Allocate(Map* map, AllocationSpace space, |
1976 AllocationSite* allocation_site = NULL); | 1976 AllocationSite* allocation_site = NULL); |
1977 | 1977 |
1978 // Allocates a partial map for bootstrapping. | 1978 // Allocates a partial map for bootstrapping. |
1979 MUST_USE_RESULT AllocationResult | 1979 MUST_USE_RESULT AllocationResult |
1980 AllocatePartialMap(InstanceType instance_type, int instance_size); | 1980 AllocatePartialMap(InstanceType instance_type, int instance_size); |
(...skipping 734 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2715 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 2715 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
2716 | 2716 |
2717 private: | 2717 private: |
2718 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 2718 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
2719 }; | 2719 }; |
2720 #endif // DEBUG | 2720 #endif // DEBUG |
2721 } | 2721 } |
2722 } // namespace v8::internal | 2722 } // namespace v8::internal |
2723 | 2723 |
2724 #endif // V8_HEAP_HEAP_H_ | 2724 #endif // V8_HEAP_HEAP_H_ |
OLD | NEW |