RFR: 8297384: Add IR tests for existing idealizations of arithmetic nodes [v3]

Christian Hagedorn chagedorn at openjdk.org
Fri Nov 25 08:17:21 UTC 2022


On Wed, 23 Nov 2022 20:10:47 GMT, Zhiqiang Zang <duke at openjdk.org> wrote:

> > We should make sure to make them pass on x86 as well such that GHA is clean after the integration of this PR. I've had a quick look on the match rules and it seems that we only use `RotateLeft/Right` nodes on x86_64, aarch64 and riscv. We could restrict these tests to only run on these architectures with `@requires os.arch == "x86_64" | os.arch == "aarch64" | os.arch == "riscv64"`.
> 
> Thanks for your help! I have added the restrictions and the GHA should be clean now. I have a question though: where did you see the architectures where RotateLeft/Right nodes are used? so that I can know when the the same case happens again. Thanks.

Since `RotateLeft/Right` are not macro nodes or other intermediate nodes like `Opaque*` which go away during optimizations, we need to find a match rule for them in order to build the mach graph. I therefore just searched for `match(.*Rotate` and only found rules in `aarch64.ad`, `x86_64.ad` and `riscv_b.ad` (in `x86.ad`, we only find rules for the vector rotate nodes `Rotate.*V`).

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

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


More information about the hotspot-compiler-dev mailing list