summaryrefslogtreecommitdiff
path: root/src/gc/gcinterface.h
diff options
context:
space:
mode:
authorMukul Sabharwal <mjsabby@gmail.com>2019-04-24 17:27:06 -0700
committerNoah Falk <noahfalk@users.noreply.github.com>2019-04-24 17:27:06 -0700
commitc2dacd2025145c586a5569408c1427899a3767cc (patch)
treee913bc9be0c0220d926f44f9520720944706d823 /src/gc/gcinterface.h
parent4a2654124ecf38300a717db79926334703abeb70 (diff)
downloadcoreclr-c2dacd2025145c586a5569408c1427899a3767cc.tar.gz
coreclr-c2dacd2025145c586a5569408c1427899a3767cc.tar.bz2
coreclr-c2dacd2025145c586a5569408c1427899a3767cc.zip
Add Medium GC Profiling Mode & ICorProfilerInfo::GetObjectReferences (#24156)
Diffstat (limited to 'src/gc/gcinterface.h')
-rw-r--r--src/gc/gcinterface.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gc/gcinterface.h b/src/gc/gcinterface.h
index 4c2a2fbf52..e6c2ccb862 100644
--- a/src/gc/gcinterface.h
+++ b/src/gc/gcinterface.h
@@ -444,6 +444,7 @@ typedef enum
} GCHeapType;
typedef bool (* walk_fn)(Object*, void*);
+typedef bool (* walk_fn2)(Object*, uint8_t**, void*);
typedef void (* gen_walk_fn)(void* context, int generation, uint8_t* range_start, uint8_t* range_end, uint8_t* range_reserved);
typedef void (* record_surv_fn)(uint8_t* begin, uint8_t* end, ptrdiff_t reloc, void* context, bool compacting_p, bool bgc_p);
typedef void (* fq_walk_fn)(bool, void*);
@@ -829,6 +830,9 @@ public:
// Walks an object, invoking a callback on each member.
virtual void DiagWalkObject(Object* obj, walk_fn fn, void* context) = 0;
+ // Walks an object, invoking a callback on each member.
+ virtual void DiagWalkObject2(Object* obj, walk_fn2 fn, void* context) = 0;
+
// Walk the heap object by object.
virtual void DiagWalkHeap(walk_fn fn, void* context, int gen_number, bool walk_large_object_heap_p) = 0;