8193933: Export ClassLoaderData claim state to support interleaved object traversal
Reviewed-by: coleenp, hseigel
--- a/src/hotspot/share/classfile/classLoaderData.hpp Mon Jan 15 09:21:49 2018 +0100
+++ b/src/hotspot/share/classfile/classLoaderData.hpp Mon Jan 15 13:09:50 2018 +0100
@@ -279,11 +279,6 @@
ClassLoaderData(Handle h_class_loader, bool is_anonymous, Dependencies dependencies);
~ClassLoaderData();
- // GC interface.
- void clear_claimed() { _claimed = 0; }
- bool claimed() const { return _claimed == 1; }
- bool claim();
-
// The CLD are not placed in the Heap, so the Card Table or
// the Mod Union Table can't be used to mark when CLD have modified oops.
// The CT and MUT bits saves this information for the whole class loader data.
@@ -315,6 +310,10 @@
Dictionary* create_dictionary();
public:
+ // GC interface.
+ void clear_claimed() { _claimed = 0; }
+ bool claimed() const { return _claimed == 1; }
+ bool claim();
bool is_alive(BoolObjectClosure* is_alive_closure) const;