@@ -62,16 +62,14 @@ void G1RootProcessor::evacuate_roots(G1ParScanThreadState* pss, uint worker_id)
62
62
63
63
process_vm_roots (closures, phase_times, worker_id);
64
64
65
- {
66
- // Now the CM ref_processor roots.
65
+ // Now the CM ref_processor roots.
66
+ if (_process_strong_tasks. try_claim_task (G1RP_PS_refProcessor_oops_do)) {
67
67
G1GCParPhaseTimesTracker x (phase_times, G1GCPhaseTimes::CMRefRoots, worker_id);
68
- if (_process_strong_tasks.try_claim_task (G1RP_PS_refProcessor_oops_do)) {
69
- // We need to treat the discovered reference lists of the
70
- // concurrent mark ref processor as roots and keep entries
71
- // (which are added by the marking threads) on them live
72
- // until they can be processed at the end of marking.
73
- _g1h->ref_processor_cm ()->weak_oops_do (closures->strong_oops ());
74
- }
68
+ // We need to treat the discovered reference lists of the
69
+ // concurrent mark ref processor as roots and keep entries
70
+ // (which are added by the marking threads) on them live
71
+ // until they can be processed at the end of marking.
72
+ _g1h->ref_processor_cm ()->weak_oops_do (closures->strong_oops ());
75
73
}
76
74
77
75
// CodeCache is already processed in java roots
@@ -186,11 +184,9 @@ void G1RootProcessor::process_java_roots(G1RootClosures* closures,
186
184
closures->strong_codeblobs ());
187
185
}
188
186
189
- {
187
+ if (_process_strong_tasks. try_claim_task (G1RP_PS_ClassLoaderDataGraph_oops_do)) {
190
188
G1GCParPhaseTimesTracker x (phase_times, G1GCPhaseTimes::CLDGRoots, worker_id);
191
- if (_process_strong_tasks.try_claim_task (G1RP_PS_ClassLoaderDataGraph_oops_do)) {
192
- ClassLoaderDataGraph::roots_cld_do (closures->strong_clds (), closures->weak_clds ());
193
- }
189
+ ClassLoaderDataGraph::roots_cld_do (closures->strong_clds (), closures->weak_clds ());
194
190
}
195
191
}
196
192
0 commit comments