src/hotspot/share/gc/shared/parallelCleaning.hpp
Index Unified diffs Context diffs Sdiffs Frames Patch New Old Previous File Next File
*** old/src/hotspot/share/gc/shared/parallelCleaning.hpp	Fri Mar 29 17:26:19 2019
--- new/src/hotspot/share/gc/shared/parallelCleaning.hpp	Fri Mar 29 17:26:19 2019

*** 85,101 **** --- 85,119 ---- } void work(); }; + #if INCLUDE_JVMCI + class JVMCICleaningTask : public StackObj { + BoolObjectClosure* _is_alive; + volatile int _cleaning_claimed; + + public: + JVMCICleaningTask(BoolObjectClosure* is_alive); + // 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 { private: bool _unloading_occurred; StringDedupCleaningTask _string_dedup_task; CodeCacheUnloadingTask _code_cache_task; + #if INCLUDE_JVMCI + JVMCICleaningTask _jvmci_cleaning_task; + #endif KlassCleaningTask _klass_cleaning_task; public: // The constructor is run in the VMThread. ParallelCleaningTask(BoolObjectClosure* is_alive,

src/hotspot/share/gc/shared/parallelCleaning.hpp
Index Unified diffs Context diffs Sdiffs Frames Patch New Old Previous File Next File