RFR: 8354930: IGV: dump C2 graph before and after live range stretching

Manuel Hässig mhaessig at openjdk.org
Wed May 28 12:05:26 UTC 2025


This PR introduces a new phase `LIVE_RANGE_STRETCHING` that prints after live ranges have been stretched, if that happens at all. The phase `INITIAL_LIVENESS` is moved before live range stretching so we can compare the live ranges before and after stretching in IGV, which is useful for debugging why an oop suddenly belongs to an oop map.

## Testing

 - [ ] [Github Actions](https://github.com/mhaessig/jdk/actions/runs/15299362485)
 - [ ] tier1 and tier1, plus additional Oracle internal testing for all Oracle supported platforms and OSs
 - [x] verified that the new phase prints when it should in IGV and with `-XX:PrintPhaseLevel=4`

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

Commit messages:
 - Introduce new phase "live range stretching"

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

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


More information about the hotspot-compiler-dev mailing list