Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(80)

Side by Side Diff: src/heap/heap.h

Issue 1259613006: Change RecordSlot interface. Make it more robust by replacing anchor slot with actual object. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/heap/heap.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 934 matching lines...) Expand 10 before | Expand all | Expand 10 after
945 void IterateRoots(ObjectVisitor* v, VisitMode mode); 945 void IterateRoots(ObjectVisitor* v, VisitMode mode);
946 // Iterates over all strong roots in the heap. 946 // Iterates over all strong roots in the heap.
947 void IterateStrongRoots(ObjectVisitor* v, VisitMode mode); 947 void IterateStrongRoots(ObjectVisitor* v, VisitMode mode);
948 // Iterates over entries in the smi roots list. Only interesting to the 948 // Iterates over entries in the smi roots list. Only interesting to the
949 // serializer/deserializer, since GC does not care about smis. 949 // serializer/deserializer, since GC does not care about smis.
950 void IterateSmiRoots(ObjectVisitor* v); 950 void IterateSmiRoots(ObjectVisitor* v);
951 // Iterates over all the other roots in the heap. 951 // Iterates over all the other roots in the heap.
952 void IterateWeakRoots(ObjectVisitor* v, VisitMode mode); 952 void IterateWeakRoots(ObjectVisitor* v, VisitMode mode);
953 953
954 // Iterate pointers to from semispace of new space found in memory interval 954 // Iterate pointers to from semispace of new space found in memory interval
955 // from start to end. 955 // from start to end within |object|.
956 void IterateAndMarkPointersToFromSpace(bool record_slots, Address start, 956 void IterateAndMarkPointersToFromSpace(HeapObject* object, Address start,
957 Address end, 957 Address end, bool record_slots,
958 ObjectSlotCallback callback); 958 ObjectSlotCallback callback);
959 959
960 // Returns whether the object resides in new space. 960 // Returns whether the object resides in new space.
961 inline bool InNewSpace(Object* object); 961 inline bool InNewSpace(Object* object);
962 inline bool InNewSpace(Address address); 962 inline bool InNewSpace(Address address);
963 inline bool InNewSpacePage(Address address); 963 inline bool InNewSpacePage(Address address);
964 inline bool InFromSpace(Object* object); 964 inline bool InFromSpace(Object* object);
965 inline bool InToSpace(Object* object); 965 inline bool InToSpace(Object* object);
966 966
967 // Returns whether the object resides in old space. 967 // Returns whether the object resides in old space.
(...skipping 1864 matching lines...) Expand 10 before | Expand all | Expand 10 after
2832 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. 2832 DisallowHeapAllocation no_allocation; // i.e. no gc allowed.
2833 2833
2834 private: 2834 private:
2835 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); 2835 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer);
2836 }; 2836 };
2837 #endif // DEBUG 2837 #endif // DEBUG
2838 } 2838 }
2839 } // namespace v8::internal 2839 } // namespace v8::internal
2840 2840
2841 #endif // V8_HEAP_HEAP_H_ 2841 #endif // V8_HEAP_HEAP_H_
OLDNEW
« no previous file with comments | « no previous file | src/heap/heap.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698