JDK-8231085 : C2/GC: Better GC-interface for expanding clone
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 11,14
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2019-09-16
  • Updated: 2019-10-28
  • Resolved: 2019-09-18
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 11 JDK 14
11.0.6Fixed 14 b15Fixed
Related Reports
Blocks :  
Relates :  
The current GC-interface for inserting barriers after expanded clones is rather rigid: it only allows to insert a barrier after the expanded clone. It does, for example, not allow a barrier *before* the clone. Also, a possible optimization would be to generate only a single call for both the barrier and the actual clone, i.e. replace the whole clone-expansion with a GC-specific call.

Fix Request I would like to backport the recent GC interface for expanding clones to jdk11u. This is a prerequisite to backport related Shenandoah changes to 11u without making a mess. The change differs from the original jdk14 change because it basically skips the intermediate GC interface for the same thing that's been introduced in jdk12. This one wholly replaces that. tier1 and tier2 tests succeed without regressions. 11u RFR: https://mail.openjdk.java.net/pipermail/jdk-updates-dev/2019-October/002038.html

Original arraycopy hooks in BarrierSetC2 are done with JDK-8212243.

This is needed in 11u to cleanly backport JDK-8231086.

URL: https://hg.openjdk.java.net/jdk/jdk/rev/b1a394e15ae9 User: rkennke Date: 2019-09-18 19:00:54 +0000