RFR: 8366861: Phase AFTER_LOOP_OPTS printed even though the method has no loops

Saranya Natarajan snatarajan at openjdk.org
Fri Jan 23 22:17:44 UTC 2026


**Issue**
When a test program with no loop is run with flag `-XX:PrintPhaseLevel=3,` the output prints `PHASE_AFTER_LOOP_OPTS `but does not print `PHASE_BEFORE_LOOP_OPTS`

**Solution** 
This simple fix introduces a variable  `_print_phase_loop_opts` that caches the value of `has_loops()` before loop opts pass to make sure that `PHASE_AFTER_LOOP_OPTS` gets printed every time `PHASE_BEFORE_LOOP_OPTS` is printed.

Before fix output
<img width="394" height="608" alt="image" src="https://github.com/user-attachments/assets/753001da-a020-45cc-9db1-00f9c9c79bd2" />

After fix output
<img width="394" height="608" alt="image" src="https://github.com/user-attachments/assets/cc49854f-afa1-42a9-a87c-9f763f7daeb4" />


**Testing** 
 Github Actions, Tier 1-3

-------------

Commit messages:
 - fix
 - initial fix

Changes: https://git.openjdk.org/jdk/pull/29387/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=29387&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8366861
  Stats: 6 lines in 2 files changed: 2 ins; 0 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/29387.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/29387/head:pull/29387

PR: https://git.openjdk.org/jdk/pull/29387


More information about the hotspot-compiler-dev mailing list