8328928: Serial: Use IsGCActiveMark instead of AutoModifyRestore in SerialHeap::do_collection

Reviewed-by: ayang, tschatzl
This commit is contained in:
Guoxiong Li 2024-03-26 14:34:52 +00:00
parent 472fcb6e6e
commit da8a095a19

@ -50,6 +50,7 @@
#include "gc/shared/gcTraceTime.inline.hpp"
#include "gc/shared/gcVMOperations.hpp"
#include "gc/shared/genArguments.hpp"
#include "gc/shared/isGCActiveMark.hpp"
#include "gc/shared/locationPrinter.inline.hpp"
#include "gc/shared/oopStorage.inline.hpp"
#include "gc/shared/oopStorageParState.inline.hpp"
@ -74,7 +75,6 @@
#include "runtime/vmThread.hpp"
#include "services/memoryManager.hpp"
#include "services/memoryService.hpp"
#include "utilities/autoRestore.hpp"
#include "utilities/debug.hpp"
#include "utilities/formatBuffer.hpp"
#include "utilities/macros.hpp"
@ -497,7 +497,7 @@ void SerialHeap::do_collection(bool full,
ClearedAllSoftRefs casr(do_clear_all_soft_refs, soft_ref_policy());
AutoModifyRestore<bool> temporarily(_is_gc_active, true);
IsGCActiveMark active_gc_mark;
bool complete = full && (max_generation == OldGen);
bool old_collects_young = complete && !ScavengeBeforeFullGC;