8237223: Shenandoah: important flags should not be ergonomic for concurrent class unloading

Reviewed-by: zgu
This commit is contained in:
Aleksey Shipilev 2020-01-15 21:38:12 +01:00
parent 519f9c1f80
commit f1ba4f8da7

View File

@ -31,11 +31,12 @@
#include "logging/logTag.hpp"
void ShenandoahNormalMode::initialize_flags() const {
if (ShenandoahConcurrentRoots::can_do_concurrent_class_unloading()) {
FLAG_SET_DEFAULT(ShenandoahSuspendibleWorkers, true);
}
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);