mirror of
https://github.com/openjdk/jdk.git
synced 2026-01-28 12:09:14 +00:00
8360540: nmethod entry barriers of new nmethods should be disarmed
Reviewed-by: eosterlund, tschatzl
This commit is contained in:
parent
f0498c2aed
commit
e1c58f858a
@ -74,6 +74,7 @@
|
||||
#include "gc/g1/g1VMOperations.hpp"
|
||||
#include "gc/g1/g1YoungCollector.hpp"
|
||||
#include "gc/g1/g1YoungGCAllocationFailureInjector.hpp"
|
||||
#include "gc/shared/barrierSetNMethod.hpp"
|
||||
#include "gc/shared/classUnloadingContext.hpp"
|
||||
#include "gc/shared/concurrentGCBreakpoints.hpp"
|
||||
#include "gc/shared/fullGCForwarding.hpp"
|
||||
@ -3079,6 +3080,8 @@ void G1CollectedHeap::register_nmethod(nmethod* nm) {
|
||||
guarantee(nm != nullptr, "sanity");
|
||||
RegisterNMethodOopClosure reg_cl(this, nm);
|
||||
nm->oops_do(®_cl);
|
||||
BarrierSetNMethod* bs_nm = BarrierSet::barrier_set()->barrier_set_nmethod();
|
||||
bs_nm->disarm(nm);
|
||||
}
|
||||
|
||||
void G1CollectedHeap::unregister_nmethod(nmethod* nm) {
|
||||
|
||||
@ -32,6 +32,7 @@
|
||||
#include "gc/parallel/psPromotionManager.hpp"
|
||||
#include "gc/parallel/psScavenge.hpp"
|
||||
#include "gc/parallel/psVMOperations.hpp"
|
||||
#include "gc/shared/barrierSetNMethod.hpp"
|
||||
#include "gc/shared/fullGCForwarding.inline.hpp"
|
||||
#include "gc/shared/gcHeapSummary.hpp"
|
||||
#include "gc/shared/gcLocker.inline.hpp"
|
||||
@ -861,6 +862,8 @@ void ParallelScavengeHeap::complete_loaded_archive_space(MemRegion archive_space
|
||||
|
||||
void ParallelScavengeHeap::register_nmethod(nmethod* nm) {
|
||||
ScavengableNMethods::register_nmethod(nm);
|
||||
BarrierSetNMethod* bs_nm = BarrierSet::barrier_set()->barrier_set_nmethod();
|
||||
bs_nm->disarm(nm);
|
||||
}
|
||||
|
||||
void ParallelScavengeHeap::unregister_nmethod(nmethod* nm) {
|
||||
|
||||
@ -34,6 +34,7 @@
|
||||
#include "gc/serial/serialMemoryPools.hpp"
|
||||
#include "gc/serial/serialVMOperations.hpp"
|
||||
#include "gc/serial/tenuredGeneration.inline.hpp"
|
||||
#include "gc/shared/barrierSetNMethod.hpp"
|
||||
#include "gc/shared/cardTableBarrierSet.hpp"
|
||||
#include "gc/shared/classUnloadingContext.hpp"
|
||||
#include "gc/shared/collectedHeap.inline.hpp"
|
||||
@ -432,6 +433,8 @@ bool SerialHeap::do_young_collection(bool clear_soft_refs) {
|
||||
|
||||
void SerialHeap::register_nmethod(nmethod* nm) {
|
||||
ScavengableNMethods::register_nmethod(nm);
|
||||
BarrierSetNMethod* bs_nm = BarrierSet::barrier_set()->barrier_set_nmethod();
|
||||
bs_nm->disarm(nm);
|
||||
}
|
||||
|
||||
void SerialHeap::unregister_nmethod(nmethod* nm) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user