Currently the code for handling iteration of InstanceRefKlass oops in InstanceRefKlass::oop_oop_iterate_ref_processing_specialized has a special case for handling the discovered field. If the closure override apply_to_weak_ref_discovered_field() to return true, the closure will always be applied to the discovered field. The need for this special case is a bit unclear, it might have been added because otherwise the discovered field is only handled if the next field is non-NULL.
I propose to remove apply_to_weak_ref_discovered_field() and also remove the check if next is NULL when handling the discovered field.
I propose to remove apply_to_weak_ref_discovered_field() and also remove the check if next is NULL when handling the discovered field.
- relates to
-
JDK-8144701 Change three G1 remembererd set closures to be OopClosures
-
- Resolved
-
-
JDK-8328350 G1: Remove DO_DISCOVERED_AND_DISCOVERY
-
- Resolved
-