src/hotspot/share/gc/shenandoah/shenandoahNormalMode.cpp
changeset 59296 9186be5c78ba
parent 55587 4644b3155fce
--- a/src/hotspot/share/gc/shenandoah/shenandoahNormalMode.cpp	Wed Nov 27 06:36:41 2019 -0800
+++ b/src/hotspot/share/gc/shenandoah/shenandoahNormalMode.cpp	Wed Nov 27 11:52:57 2019 -0500
@@ -21,6 +21,7 @@
  */
 
 #include "precompiled.hpp"
+#include "gc/shenandoah/shenandoahConcurrentRoots.hpp"
 #include "gc/shenandoah/shenandoahNormalMode.hpp"
 #include "gc/shenandoah/heuristics/shenandoahAdaptiveHeuristics.hpp"
 #include "gc/shenandoah/heuristics/shenandoahAggressiveHeuristics.hpp"
@@ -32,6 +33,9 @@
 void ShenandoahNormalMode::initialize_flags() const {
   SHENANDOAH_ERGO_ENABLE_FLAG(ExplicitGCInvokesConcurrent);
   SHENANDOAH_ERGO_ENABLE_FLAG(ShenandoahImplicitGCInvokesConcurrent);
+  if (ShenandoahConcurrentRoots::can_do_concurrent_class_unloading()) {
+    SHENANDOAH_ERGO_ENABLE_FLAG(ShenandoahSuspendibleWorkers);
+  }
 
   // Final configuration checks
   SHENANDOAH_CHECK_FLAG_SET(ShenandoahLoadRefBarrier);