JDK-8270070 : Perform IR verification after specific compiler phases
  • Type: Sub-task
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 17,18
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2021-07-08
  • Updated: 2022-09-12
  • Resolved: 2022-09-12
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
tbdResolved
Related Reports
Duplicate :  
Relates :  
Description
Currently, the verification is only done on the output of PrintIdeal and PrintOptoAssembly after code generation. We could think about adding more verification phases after specific compiler phases to make assertions on intermediate states of the IR.

There are several possibilities:
- Dump the IR with PrintIdeal on other places as well, for example, where we are currently dumping the IR graph for the Ideal Graph Visualizer (we probably need to add a new flag for it to keep PrintIdeal as it is). The rules operating on PrintOptoAssembly need to be adjusted, though.
- Add option to pattern match on the IGV xml output in combination with PrintIdealGraph/PrintIdealGraphLevel.
- Switch to a complete parsing of the IR to perform queries on it which, however, is more complex (see JDK-8265198).