8237963: Shenandoah: Heap iteration should use concurrent version of string dedup roots

Reviewed-by: shade
This commit is contained in:
Zhengyu Gu 2020-01-28 15:47:39 -05:00
parent f2013ac247
commit 69f1538631
2 changed files with 3 additions and 3 deletions

View file

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2015, 2019, Red Hat, Inc. All rights reserved. * Copyright (c) 2015, 2020, Red Hat, Inc. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -152,9 +152,9 @@ void ShenandoahStringDedupRoots::oops_do(BoolObjectClosure* is_alive, OopClosure
ShenandoahConcurrentStringDedupRoots::ShenandoahConcurrentStringDedupRoots() { ShenandoahConcurrentStringDedupRoots::ShenandoahConcurrentStringDedupRoots() {
if (ShenandoahStringDedup::is_enabled()) { if (ShenandoahStringDedup::is_enabled()) {
StringDedup::gc_prologue(true);
StringDedupTable_lock->lock_without_safepoint_check(); StringDedupTable_lock->lock_without_safepoint_check();
StringDedupQueue_lock->lock_without_safepoint_check(); StringDedupQueue_lock->lock_without_safepoint_check();
StringDedup::gc_prologue(true);
} }
} }

View file

@ -266,7 +266,7 @@ private:
_cld_roots; _cld_roots;
ShenandoahSerialWeakRoots _serial_weak_roots; ShenandoahSerialWeakRoots _serial_weak_roots;
ShenandoahWeakRoots<false /*concurrent*/> _weak_roots; ShenandoahWeakRoots<false /*concurrent*/> _weak_roots;
ShenandoahStringDedupRoots _dedup_roots; ShenandoahConcurrentStringDedupRoots _dedup_roots;
ShenandoahCodeCacheRoots<ShenandoahAllCodeRootsIterator> _code_roots; ShenandoahCodeCacheRoots<ShenandoahAllCodeRootsIterator> _code_roots;
public: public: