8257190: simplify PhaseIdealLoop constructors

Currently, C2 has 3 private constructors of PhaseIdealLoop as follows. a-b are for verification. only c is for real loop optimizations.
a. PhaseIdealLoop( PhaseIterGVN &igvn)
b. PhaseIdealLoop(PhaseIterGVN &igvn, const PhaseIdealLoop *verify_me)
c. PhaseIdealLoop(PhaseIterGVN &igvn, LoopOptsMode mode)

I propose 3 changes to simplify them.
1. add assertion in the constructor c. C2 shouldn't use mode = LoopOptsVerify for it.
2. merge a and b into one constructor.
3. make the merged verification ctor only for debug builds.

Reviewed-by: thartmann, kvn
1 file changed
tree: f2711df0a87033885bd9e82e04f7d02fe0e23610
  1. .github/
  2. .jcheck/
  3. bin/
  4. doc/
  5. make/
  6. src/
  7. test/
  8. .gitattributes
  9. .gitignore
  10. .hgtags
  11. ADDITIONAL_LICENSE_INFO
  12. ASSEMBLY_EXCEPTION
  13. configure
  14. CONTRIBUTING.md
  15. LICENSE
  16. Makefile
  17. README.md
README.md

Welcome to the JDK!

For build instructions please see the online documentation, or either of these files:

See https://openjdk.java.net/ for more information about the OpenJDK Community and the JDK.