JDK-8267807 : C2: Downcast receiver to target holder during inlining
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 17
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2021-05-26
  • Updated: 2021-10-23
  • Resolved: 2021-06-01
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 17
17 b25Fixed
Related Reports
Blocks :  
Blocks :  
Relates :  
Relates :  
Relates :  
Description
Support the following case:

src/hotspot/share/opto/doCall.cpp:
    if (receiver_type == NULL || !receiver_type->higher_equal(mr_type)) {
      // Calling this method would include an implicit cast to its holder.
      // %%% Not yet implemented.  Would throw minor asserts at present.
      // %%% The most common wins are already gained by +UseUniqueSubclasses.
      // To fix, put the higher_equal check at the call of this routine,
      // and add a CheckCastPP to the receiver.

Comments
Changeset: 68f3b3ac Author: Vladimir Ivanov <vlivanov@openjdk.org> Date: 2021-06-01 12:03:34 +0000 URL: https://git.openjdk.java.net/jdk/commit/68f3b3acce0393aa9c91878f7ad848d4a41a2fe1
01-06-2021