Integrated: 8302681: [IR Framework] Only allow cpuFeatures from a verified list

Emanuel Peter epeter at openjdk.org
Mon Feb 27 07:15:17 UTC 2023


On Mon, 20 Feb 2023 15:11:21 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

> Wrongly typed cpuFeatures can lead to an IR rule being ignored.
> Example: https://github.com/openjdk/jdk/pull/12601 [JDK-8302668](https://bugs.openjdk.org/browse/JDK-8302668)
> 
> We should have a list of verified cpuFeatures, and assert if one is used that is not in that list. That way, typos and bad copies can be avoided, and we make sure the tests run when intended.
> 
> I verified the `intel` cpuFeatures by hand on my laptop. And for `asimd` and `sve` I asked @tobiasholenstein and @nick-arm .
> 
> `sve1` seems to have been a typo, and I am changing it to `sve`.
> 
> Note: cpu-features can be displayed like this: `./java -Xlog:os+cpu --version`
> 
> On my machine, I get:
> 
> cmov, fxsr, ht, mmx, 3dnowpref, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, lzcnt, tsc, tscinvbit, avx, avx2, aes, erms, clmul, bmi1, bmi2, adx, avx512f, avx512dq, avx512cd, avx512bw, avx512vl, sha, fma, vzeroupper, avx512_vpopcntdq, avx512_vpclmulqdq, avx512_vaes, avx512_vnni, clflush, clflushopt, clwb, avx512_vbmi2, avx512_vbmi, rdtscp, rdpid, fsrm, gfni, avx512_bitalg, f16c, pku, ospke, cet_ibt, cet_ss, avx512_ifma
> 
> 
> @nick-arm got this on one of his machines:
> 
> fp, asimd, evtstrm, aes, pmull, sha1, sha256, crc32, lse, dcpop, sha3, sha512, sve, paca
> 
> 
> @tobiasholenstein got this:
> 
> fp, asimd, aes, pmull, sha1, sha256, crc32, lse, sha3, sha512
> 
> 
> I had to adapt a test that used a non-existent cpu feature. I replaced it with an impossible combination.

This pull request has now been integrated.

Changeset: 1794f497
Author:    Emanuel Peter <epeter at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/1794f4975147e1623763ed3ba029c9171e91d70c
Stats:     41 lines in 3 files changed: 30 ins; 0 del; 11 mod

8302681: [IR Framework] Only allow cpuFeatures from a verified list

Reviewed-by: thartmann, pli, chagedorn, kvn

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

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


More information about the hotspot-compiler-dev mailing list