RFR: 8317349: Randomize order of macro node expansion in C2 [v4]
Daniel Lundén
dlunden at openjdk.org
Tue Feb 6 12:26:10 UTC 2024
> This changeset adds a flag `StressMacroExpansion` which randomizes macro expansion ordering for stress testing purposes.
>
> Changes:
> - Implement the flag `StressMacroExpansion`.
> - Add functionality tests for `StressMacroExpansion`, analogous to testing for previous stress flags such as `StressIGVN`.
> - Add `StressMacroExpansion` to a number of tests that already turn on all other stress flags (and therefore should also use `StressMacroExpansion`).
> - Rename the previous compiler phase `MACRO_EXPANSION` to `AFTER_MACRO_EXPANSION`.
> - Add new Ideal phases related to macro expansion, allowing `StressMacroExpansion` testing. Below is a sample phase list screenshot including some of the new phases (IGV print level 4).
> <p align="center">
> <img src="https://github.com/openjdk/jdk/assets/4222397/b65c67a0-13f7-45a6-aef4-5dfe259dab66" width="300">
> </p>
>
>
> Question for the review: are the new macro expansion Ideal phases OK, or should we change anything?
>
> Testing:
> - [GitHub Actions](https://github.com/dlunde/jdk/actions/runs/7797963709)
> - tier1 to tier5 on windows-x64, linux-x64, linux-aarch64, macosx-x64, and macosx-aarch64.
> - Tested that thousands of graphs are correctly opened and visualized with IGV.
Daniel Lundén has updated the pull request incrementally with one additional commit since the last revision:
Change to single macro expansion step phase
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/17684/files
- new: https://git.openjdk.org/jdk/pull/17684/files/f1b12e20..660cc895
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=17684&range=03
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=17684&range=02-03
Stats: 83 lines in 5 files changed: 0 ins; 4 del; 79 mod
Patch: https://git.openjdk.org/jdk/pull/17684.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/17684/head:pull/17684
PR: https://git.openjdk.org/jdk/pull/17684
More information about the hotspot-compiler-dev
mailing list