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.