JDK-8319599 : IGV phase cleanup
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 22,23
  • Priority: P4
  • Status: Open
  • Resolution: Unresolved
  • Submitted: 2023-11-07
  • Updated: 2024-10-24
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
Relates :  
Relates :  
Description
Working on and discussing JDK-8295166 prompted a number of possible cleanups in IGV:
- The use of BEFORE_ and AFTER_ prefixes for phase names is inconsistent.
- The CCP1 phases should be renamed CCP (as there is only one run of CCP).
- We can change PHASEIDEALLOOP1, PHASEIDEALLOOP2, and PHASEIDEALLOOP3 to either
  (1) use the phase enumeration feature implemented in JDK-8295166, or
  (2) rename the phases to something more descriptive than 1, 2, and 3, like PHASEIDEALLOOP_DEFAULT, PHASEIDEALLOOP_AFTER_PARTIAL_PEEL, and PHASEIDEALLOOP_UNROLL.
- The phases ITER_GVN1 and ITER_GVN2 are now most likely redundant due to the addition of AFTER_ITER_GVN.
- We should perhaps rename the ITER_GVN phases to use the more common acronym IGVN.
- ITER_GVN_AFTER_EA is most likely redundant due to AFTER_EA and AFTER_ITER_GVN.
- ITER_GVN_AFTER_ELIMINATION should be renamed AFTER_MACRO_NODE_ELIMINATION and moved just before igvn.optimize().
- Change all phase description strings in phasetype.hpp to title case.
- Check that CompilePhase.java and phasetype.hpp are in sync, and that phases are listed in the same order.

The above list is a subset of potential cleanups: additional IGV phase cleanups may also fit within the scope of this issue.