| 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 891 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 902 // Iterates over all strong roots in the heap. | 902 // Iterates over all strong roots in the heap. |
| 903 void IterateStrongRoots(ObjectVisitor* v, VisitMode mode); | 903 void IterateStrongRoots(ObjectVisitor* v, VisitMode mode); |
| 904 // Iterates over entries in the smi roots list. Only interesting to the | 904 // Iterates over entries in the smi roots list. Only interesting to the |
| 905 // serializer/deserializer, since GC does not care about smis. | 905 // serializer/deserializer, since GC does not care about smis. |
| 906 void IterateSmiRoots(ObjectVisitor* v); | 906 void IterateSmiRoots(ObjectVisitor* v); |
| 907 // Iterates over all the other roots in the heap. | 907 // Iterates over all the other roots in the heap. |
| 908 void IterateWeakRoots(ObjectVisitor* v, VisitMode mode); | 908 void IterateWeakRoots(ObjectVisitor* v, VisitMode mode); |
| 909 | 909 |
| 910 // Iterate pointers to from semispace of new space found in memory interval | 910 // Iterate pointers to from semispace of new space found in memory interval |
| 911 // from start to end. | 911 // from start to end. |
| 912 void IterateAndMarkPointersToFromSpace(Address start, Address end, | 912 void IterateAndMarkPointersToFromSpace(bool record_slots, Address start, |
| 913 Address end, |
| 913 ObjectSlotCallback callback); | 914 ObjectSlotCallback callback); |
| 914 | 915 |
| 915 // Returns whether the object resides in new space. | 916 // Returns whether the object resides in new space. |
| 916 inline bool InNewSpace(Object* object); | 917 inline bool InNewSpace(Object* object); |
| 917 inline bool InNewSpace(Address address); | 918 inline bool InNewSpace(Address address); |
| 918 inline bool InNewSpacePage(Address address); | 919 inline bool InNewSpacePage(Address address); |
| 919 inline bool InFromSpace(Object* object); | 920 inline bool InFromSpace(Object* object); |
| 920 inline bool InToSpace(Object* object); | 921 inline bool InToSpace(Object* object); |
| 921 | 922 |
| 922 // Returns whether the object resides in old pointer space. | 923 // Returns whether the object resides in old pointer space. |
| (...skipping 1703 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2626 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 2627 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
| 2627 | 2628 |
| 2628 private: | 2629 private: |
| 2629 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 2630 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
| 2630 }; | 2631 }; |
| 2631 #endif // DEBUG | 2632 #endif // DEBUG |
| 2632 } | 2633 } |
| 2633 } // namespace v8::internal | 2634 } // namespace v8::internal |
| 2634 | 2635 |
| 2635 #endif // V8_HEAP_HEAP_H_ | 2636 #endif // V8_HEAP_HEAP_H_ |
| OLD | NEW |