JDK-8217760 : C2: Missing symbolic info on a call from intrinsics when invoked through MethodHandle
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 8u202,11,12,13
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2019-01-25
  • Updated: 2020-06-29
  • Resolved: 2019-01-25
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 13
11.0.5Fixed 13 b06Fixed
Related Reports
Duplicate :  
Relates :  
Description
Crash on a call from intrinsics when invoked through MethodHandle:
   1790   11    b        java.lang.invoke.LambdaForm$DMH/0x00000008011c8040::invokeVirtual (20 bytes)
                            @ 7   java.lang.invoke.DirectMethodHandle::internalMemberName (8 bytes)   force inline by annotation
                            @ 16   java.lang.Object::hashCode (0 bytes)   (intrinsic, virtual)
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/sharedRuntime.cpp:1357
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/Users/vlivanov/ws/jdk/open/jdk/src/hotspot/share/runtime/sharedRuntime.cpp:1357), pid=35476, tid=6915
#  assert((!is_virtual && invoke_code == Bytecodes::_invokestatic ) || (!is_virtual && invoke_code == Bytecodes::_invokespecial) || (!is_virtual && invoke_code == Bytecodes::_invokehandle ) || (!is_virtual && invoke_code == Bytecodes::_invokedynamic) || ( is_virtual && invoke_code != Bytecodes::_invokestatic )) failed: inconsistent bytecode

Comments
TestMH fails with 8u as well, but it is unclear to how fix it yet. jdk/jdk fix relies on major improvement done in 9, JDK-8072008. It could not be easily backported.
08-08-2019

Fix Request (11u) This fixes the guaranteed crash when taking the MH over VM intrinsic. The patch applies cleanly to 11u. New testcase fails without product fix, and passes with it. Additionally, patched build passes tier1 and tier2 tests.
19-06-2019

ILW = Crash during call resolution, call from C2 intrinsic invoked through MH, disable intrinsic = HML = P2
25-01-2019