JDK-8175554 : Improve G1UpdateRSOrPushRefClosure
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 9,10
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2017-02-23
  • Updated: 2018-06-21
  • Resolved: 2017-06-28
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 10
10 b21Fixed
Related Reports
Relates :  
Relates :  
Description
After JDK-8071278 some additional (micro-)optimizations for G1UpdateRSOrPushRefClosure became apparent:

- use the oopDesc::load_heap_oop without decoding for the null check
- one can do the crosses-region check without accessing the heap region
- it's probably better to use the in_cset_state for checking whether something is in the collection set instead of referencing the HeapRegion*
- the same null check and is-in-cset check is repeated in the called G1ParPushHeapRSClosure
- we should not optimize for evacuation failure in this closure, i.e. try to minimize the number of cards to rescan in evacuation failure occurs.