< prev index next >

src/hotspot/share/gc/shared/collectedHeap.hpp

Print this page
rev 58143 : 8238633: JVMTI heap walk should consult GC for marking oops

*** 1,7 **** /* ! * Copyright (c) 2001, 2019, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 2001, 2020, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 25,34 **** --- 25,35 ---- #ifndef SHARE_GC_SHARED_COLLECTEDHEAP_HPP #define SHARE_GC_SHARED_COLLECTEDHEAP_HPP #include "gc/shared/gcCause.hpp" #include "gc/shared/gcWhen.hpp" + #include "gc/shared/objectMarker.hpp" #include "gc/shared/verifyOption.hpp" #include "memory/allocation.hpp" #include "runtime/handles.hpp" #include "runtime/perfData.hpp" #include "runtime/safepoint.hpp"
*** 381,390 **** --- 382,394 ---- virtual MemoryUsage memory_usage(); virtual GrowableArray<GCMemoryManager*> memory_managers() = 0; virtual GrowableArray<MemoryPool*> memory_pools() = 0; + // ObjectMarker for JVMTI heap walk + virtual ObjectMarker* object_marker(); + // Iterate over all objects, calling "cl.do_object" on each. virtual void object_iterate(ObjectClosure* cl) = 0; // Keep alive an object that was loaded with AS_NO_KEEPALIVE. virtual void keep_alive(oop obj) {}
< prev index next >