| 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 1609 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1620 } | 1620 } |
| 1621 | 1621 |
| 1622 inline bool ShouldAbortIncrementalMarking() const { | 1622 inline bool ShouldAbortIncrementalMarking() const { |
| 1623 return current_gc_flags_ & kAbortIncrementalMarkingMask; | 1623 return current_gc_flags_ & kAbortIncrementalMarkingMask; |
| 1624 } | 1624 } |
| 1625 | 1625 |
| 1626 inline bool ShouldFinalizeIncrementalMarking() const { | 1626 inline bool ShouldFinalizeIncrementalMarking() const { |
| 1627 return current_gc_flags_ & kFinalizeIncrementalMarkingMask; | 1627 return current_gc_flags_ & kFinalizeIncrementalMarkingMask; |
| 1628 } | 1628 } |
| 1629 | 1629 |
| 1630 // Checks whether both, the internal marking deque, and the embedder provided | |
| 1631 // one are empty. Avoid in fast path as it potentially calls through the API. | |
| 1632 bool MarkingDequesAreEmpty(); | |
| 1633 | |
| 1634 void PreprocessStackTraces(); | 1630 void PreprocessStackTraces(); |
| 1635 | 1631 |
| 1636 // Checks whether a global GC is necessary | 1632 // Checks whether a global GC is necessary |
| 1637 GarbageCollector SelectGarbageCollector(AllocationSpace space, | 1633 GarbageCollector SelectGarbageCollector(AllocationSpace space, |
| 1638 const char** reason); | 1634 const char** reason); |
| 1639 | 1635 |
| 1640 // Make sure there is a filler value behind the top of the new space | 1636 // Make sure there is a filler value behind the top of the new space |
| 1641 // so that the GC does not confuse some unintialized/stale memory | 1637 // so that the GC does not confuse some unintialized/stale memory |
| 1642 // with the allocation memento of the object at the top | 1638 // with the allocation memento of the object at the top |
| 1643 void EnsureFillerObjectAtTop(); | 1639 void EnsureFillerObjectAtTop(); |
| (...skipping 1016 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2660 friend class LargeObjectSpace; | 2656 friend class LargeObjectSpace; |
| 2661 friend class NewSpace; | 2657 friend class NewSpace; |
| 2662 friend class PagedSpace; | 2658 friend class PagedSpace; |
| 2663 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); | 2659 DISALLOW_COPY_AND_ASSIGN(AllocationObserver); |
| 2664 }; | 2660 }; |
| 2665 | 2661 |
| 2666 } // namespace internal | 2662 } // namespace internal |
| 2667 } // namespace v8 | 2663 } // namespace v8 |
| 2668 | 2664 |
| 2669 #endif // V8_HEAP_HEAP_H_ | 2665 #endif // V8_HEAP_HEAP_H_ |
| OLD | NEW |