| 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 | 9 |
| 10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
| (...skipping 2115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2126 friend class AlwaysAllocateScope; | 2126 friend class AlwaysAllocateScope; |
| 2127 friend class Deserializer; | 2127 friend class Deserializer; |
| 2128 friend class Factory; | 2128 friend class Factory; |
| 2129 friend class GCCallbacksScope; | 2129 friend class GCCallbacksScope; |
| 2130 friend class GCTracer; | 2130 friend class GCTracer; |
| 2131 friend class HeapIterator; | 2131 friend class HeapIterator; |
| 2132 friend class Isolate; | 2132 friend class Isolate; |
| 2133 friend class MarkCompactCollector; | 2133 friend class MarkCompactCollector; |
| 2134 friend class MarkCompactMarkingVisitor; | 2134 friend class MarkCompactMarkingVisitor; |
| 2135 friend class MapCompact; | 2135 friend class MapCompact; |
| 2136 #ifdef VERIFY_HEAP | |
| 2137 friend class NoWeakObjectVerificationScope; | |
| 2138 #endif | |
| 2139 friend class Page; | 2136 friend class Page; |
| 2140 | 2137 |
| 2141 DISALLOW_COPY_AND_ASSIGN(Heap); | 2138 DISALLOW_COPY_AND_ASSIGN(Heap); |
| 2142 }; | 2139 }; |
| 2143 | 2140 |
| 2144 | 2141 |
| 2145 class HeapStats { | 2142 class HeapStats { |
| 2146 public: | 2143 public: |
| 2147 static const int kStartMarker = 0xDECADE00; | 2144 static const int kStartMarker = 0xDECADE00; |
| 2148 static const int kEndMarker = 0xDECADE01; | 2145 static const int kEndMarker = 0xDECADE01; |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2182 explicit inline AlwaysAllocateScope(Isolate* isolate); | 2179 explicit inline AlwaysAllocateScope(Isolate* isolate); |
| 2183 inline ~AlwaysAllocateScope(); | 2180 inline ~AlwaysAllocateScope(); |
| 2184 | 2181 |
| 2185 private: | 2182 private: |
| 2186 // Implicitly disable artificial allocation failures. | 2183 // Implicitly disable artificial allocation failures. |
| 2187 Heap* heap_; | 2184 Heap* heap_; |
| 2188 DisallowAllocationFailure daf_; | 2185 DisallowAllocationFailure daf_; |
| 2189 }; | 2186 }; |
| 2190 | 2187 |
| 2191 | 2188 |
| 2192 #ifdef VERIFY_HEAP | |
| 2193 class NoWeakObjectVerificationScope { | |
| 2194 public: | |
| 2195 inline NoWeakObjectVerificationScope(); | |
| 2196 inline ~NoWeakObjectVerificationScope(); | |
| 2197 }; | |
| 2198 #endif | |
| 2199 | |
| 2200 | |
| 2201 class GCCallbacksScope { | 2189 class GCCallbacksScope { |
| 2202 public: | 2190 public: |
| 2203 explicit inline GCCallbacksScope(Heap* heap); | 2191 explicit inline GCCallbacksScope(Heap* heap); |
| 2204 inline ~GCCallbacksScope(); | 2192 inline ~GCCallbacksScope(); |
| 2205 | 2193 |
| 2206 inline bool CheckReenter(); | 2194 inline bool CheckReenter(); |
| 2207 | 2195 |
| 2208 private: | 2196 private: |
| 2209 Heap* heap_; | 2197 Heap* heap_; |
| 2210 }; | 2198 }; |
| (...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2596 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 2584 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
| 2597 | 2585 |
| 2598 private: | 2586 private: |
| 2599 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 2587 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
| 2600 }; | 2588 }; |
| 2601 #endif // DEBUG | 2589 #endif // DEBUG |
| 2602 } | 2590 } |
| 2603 } // namespace v8::internal | 2591 } // namespace v8::internal |
| 2604 | 2592 |
| 2605 #endif // V8_HEAP_HEAP_H_ | 2593 #endif // V8_HEAP_HEAP_H_ |
| OLD | NEW |