JDK-8350637 : C2: verify that main_loop finds pre_loop and that multiversion loops find the multiversion_if
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 25
  • Priority: P4
  • Status: Open
  • Resolution: Unresolved
  • Submitted: 2025-02-25
  • Updated: 2025-02-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.
Other
tbdUnresolved
Related Reports
Blocks :  
Blocks :  
Description
As discussed here:
https://github.com/openjdk/jdk/pull/22016#issuecomment-2678602660 / JDK-8323582

It seems that there are some issues with traversing the predicates, such that the pre_loop can be temporarily invisible because there are predicates that are not (yet) properly skipped. [~chagedorn] thinks this should be fixed with JDK-8350579, but of course there may be other blockers we can discover once that one is fixed.

This does not seem to be a huge issue at as far as we know, since eventually those predicates that are in the way die and then we can traverse again, but it is unfortunate for verification, and maybe it also limits optimizations.