JDK-8371674 : C2 fails with Missed optimization opportunity in PhaseIterGVN for MoveL2D
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 26
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2025-11-12
  • Updated: 2025-12-08
  • Resolved: 2025-11-19
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 26
26 b25Fixed
Related Reports
Causes :  
Relates :  
Description
java -XX:CompileCommand=quiet -XX:CompileCommand=compileonly,*Test*::* -XX:-TieredCompilation -Xbatch -XX:VerifyIterativeGVN=1110 Test_1251.java

< Missed Ideal optimization (can_reshape=true):
< The node was replaced by Ideal.
< Old node:
< dist dump
< ---------------------------------------------
<    1  1953  LoadL  === 1437 1737 819  [[ 1952 ]]  @long[int:>=0] (java/lang/Cloneable,java/io/Serializable):exact+any *, idx=7; #long !orig=[1780],[821] !jvms: Test_1251::vMeth @ bci:115 (line 116)
<    0  1952  MoveL2D  === _ 1953  [[ 1951 ]]  !orig=[1779],[822] !jvms: Test_1251::vMeth @ bci:116 (line 116)
< The result after Ideal:
< dist dump
< ---------------------------------------------
<    1   819  AddP  === _ 109 820 38  [[ 2974 2969 3007 2973 2968 1953 3043 ]]  !jvms: Test_1251::vMeth @ bci:115 (line 116)
<    1  1737  Proj  === 1738  [[ 1725 1967 1972 1953 1743 3043 ]] #2  Memory: @BotPTR *+bot, idx=Bot; !orig=865,[1823] !jvms: Test_1251::vMeth @ bci:137 (line 118)
<    1  1437  IfTrue  === 1436  [[ 1731 1953 2974 2969 3007 2973 2968 3043 ]] #1 !orig=[641] !jvms: Test_1251::vMeth @ bci:86 (line 114)
<    0  3043  LoadD  === 1437 1737 819  [[ ]]  @long[int:>=0] (java/lang/Cloneable,java/io/Serializable):exact+any *, idx=7; mismatched #double
< 
< #
< # A fatal error has been detected by the Java Runtime Environment:
< #
< #  Internal Error (/opt/mach5/mesos/work_dir/slaves/526fbd26-20de-495c-9a19-a04adc16f7d1-S26961/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/cb0c4c43-b9fa-42bf-9b5d-f22369e3addf/runs/874a49f0-f809-4057-8b87-dcf83945b5d1/workspace/open/src/hotspot/share/opto/phaseX.cpp:1105), pid=1062675, tid=1062693
< #  assert(!failure) failed: Missed optimization opportunity in PhaseIterGVN
< #
< # JRE version: Java(TM) SE Runtime Environment (26.0+24) (fastdebug build 26-ea+24-2414)
< # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 26-ea+24-2414, mixed mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-aarch64)
< # Problematic frame:
< # V  [libjvm.so+0x15d1ea0]  PhaseIterGVN::verify_optimize()+0xc1c
Comments
Changeset: 3949b0f2 Branch: master Author: BenoƮt Maillard <bmaillard@openjdk.org> Date: 2025-11-19 15:40:57 +0000 URL: https://git.openjdk.org/jdk/commit/3949b0f23cd9c936c12ac0306534bc38b5b8d298
19-11-2025

A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/28290 Date: 2025-11-13 11:46:14 +0000
13-11-2025

Build search points to JDK-8356176 but that probably just triggered it.
12-11-2025

ILW = Same as JDK-8371523 = P4
12-11-2025