Skip to content
Permalink
Browse files

8237963: Shenandoah: Heap iteration should use concurrent version of …

…string dedup roots

Reviewed-by: shade
  • Loading branch information
zhengyu123 committed Jan 28, 2020
1 parent f2013ac commit 69f15386314fee971c6a54ca50dc36ef1356d6e9
@@ -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.
*
* 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() {
if (ShenandoahStringDedup::is_enabled()) {
StringDedup::gc_prologue(true);
StringDedupTable_lock->lock_without_safepoint_check();
StringDedupQueue_lock->lock_without_safepoint_check();
StringDedup::gc_prologue(true);
}
}

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

public:

0 comments on commit 69f1538

Please sign in to comment.