RFR: 8302681: [IR Framework] Only allow cpuFeatures from a verified list
Emanuel Peter
epeter at openjdk.org
Mon Feb 20 16:47:10 UTC 2023
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
-------------
Commit messages:
- sve1 was a typo, fix that
- 8302681: [IR Framework] Only allow cpuFeatures from a verified list
Changes: https://git.openjdk.org/jdk/pull/12669/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=12669&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8302681
Stats: 28 lines in 2 files changed: 22 ins; 0 del; 6 mod
Patch: https://git.openjdk.org/jdk/pull/12669.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/12669/head:pull/12669
PR: https://git.openjdk.org/jdk/pull/12669
More information about the hotspot-compiler-dev
mailing list