< prev index next >
src/share/vm/oops/instanceRefKlass.inline.hpp
Print this page
rev 12851 : 8138737: Remove oop_ms_adjust_pointers and use oop_iterate instead
Reviewed-by:
rev 12852 : [mq]: 8138737-remove-oop-ms-adjust-kbarrett-rev1
*** 1,7 ****
/*
! * Copyright (c) 2015, 2016, Oracle and/or its affiliates. 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
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2015, 2017, Oracle and/or its affiliates. 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
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 76,86 ****
return false;
}
template <bool nv, typename T, class OopClosureType, class Contains>
void InstanceRefKlass::oop_oop_iterate_discovery(oop obj, ReferenceType type, OopClosureType* closure, Contains& contains) {
! log_develop_trace(gc, ref)("Process reference default " PTR_FORMAT, p2i(obj));
// Special case for some closures.
if (closure->apply_to_weak_ref_discovered_field()) {
do_discovered<nv, T>(obj, closure, contains);
}
--- 76,86 ----
return false;
}
template <bool nv, typename T, class OopClosureType, class Contains>
void InstanceRefKlass::oop_oop_iterate_discovery(oop obj, ReferenceType type, OopClosureType* closure, Contains& contains) {
! log_develop_trace(gc, ref)("Process reference with discovery " PTR_FORMAT, p2i(obj));
// Special case for some closures.
if (closure->apply_to_weak_ref_discovered_field()) {
do_discovered<nv, T>(obj, closure, contains);
}
*** 106,120 ****
template <bool nv, typename T, class OopClosureType, class Contains>
void InstanceRefKlass::oop_oop_iterate_fields(oop obj, OopClosureType* closure, Contains& contains) {
do_referent<nv, T>(obj, closure, contains);
do_discovered<nv, T>(obj, closure, contains);
do_next<nv, T>(obj, closure, contains);
! debug_only(trace_reference_gc("InstanceRefKlass::oop_oop_iterate_fields()",
obj,
(T*)java_lang_ref_Reference::referent_addr(obj),
(T*)java_lang_ref_Reference::next_addr(obj),
! (T*)java_lang_ref_Reference::discovered_addr(obj));)
}
template <bool nv, typename T, class OopClosureType, class Contains>
void InstanceRefKlass::oop_oop_iterate_ref_processing_specialized(oop obj, OopClosureType* closure, Contains& contains) {
switch (closure->reference_iteration_mode()) {
--- 106,120 ----
template <bool nv, typename T, class OopClosureType, class Contains>
void InstanceRefKlass::oop_oop_iterate_fields(oop obj, OopClosureType* closure, Contains& contains) {
do_referent<nv, T>(obj, closure, contains);
do_discovered<nv, T>(obj, closure, contains);
do_next<nv, T>(obj, closure, contains);
! trace_reference_gc("InstanceRefKlass::oop_oop_iterate_fields()",
obj,
(T*)java_lang_ref_Reference::referent_addr(obj),
(T*)java_lang_ref_Reference::next_addr(obj),
! (T*)java_lang_ref_Reference::discovered_addr(obj));
}
template <bool nv, typename T, class OopClosureType, class Contains>
void InstanceRefKlass::oop_oop_iterate_ref_processing_specialized(oop obj, OopClosureType* closure, Contains& contains) {
switch (closure->reference_iteration_mode()) {
< prev index next >