--- a/src/hotspot/share/gc/shared/parallelCleaning.hpp Wed May 01 12:41:26 2019 -0400
+++ b/src/hotspot/share/gc/shared/parallelCleaning.hpp Wed May 01 12:31:29 2019 -0700
@@ -87,6 +87,20 @@
void work();
};
+#if INCLUDE_JVMCI
+class JVMCICleaningTask : public StackObj {
+ volatile int _cleaning_claimed;
+
+public:
+ JVMCICleaningTask();
+ // Clean JVMCI metadata handles.
+ void work(bool unloading_occurred);
+
+private:
+ bool claim_cleaning_task();
+};
+#endif
+
// Do cleanup of some weakly held data in the same parallel task.
// Assumes a non-moving context.
class ParallelCleaningTask : public AbstractGangTask {
@@ -94,6 +108,9 @@
bool _unloading_occurred;
StringDedupCleaningTask _string_dedup_task;
CodeCacheUnloadingTask _code_cache_task;
+#if INCLUDE_JVMCI
+ JVMCICleaningTask _jvmci_cleaning_task;
+#endif
KlassCleaningTask _klass_cleaning_task;
public: