-
Bug
-
Resolution: Fixed
-
P4
-
22
-
b15
-
riscv
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8329943 | 21.0.4 | Gui Cao | P4 | Resolved | Fixed | b01 |
JDK-8329941 | 17.0.12 | Gui Cao | P4 | Resolved | Fixed | b01 |
The WB class CPUInfo.java gives you the features in a List<String> which is not working (as in one features per list item) on RV.
The jtreg requires annotation allows you regexp the string of that list to determine if required feature is on current CPU.
Without separator it is not easy to match e.g. vector.
If we use plain space.
"rv64 i g c v zicbop z..."
For the requires annotation that means the string we are regexping looks like:
[rv64, i, m, a, f, d, c, v, zicbom, zicboz, zicbop, zba, zbb, zbs, zicsr, zifencei, zic64b, zihintpause]
We can then use required tag, such as:
* @requires vm.cpu.features ~= ".* v,.*"
which should only match vector.
But that would mean CPU info/desc looks 'funny' for RV folks:
"CPU: total 16 (initial active 16) rv64 i m a f d c v zicbom zicboz zicbop zba zbb zbs zicsr zifencei zic64b zihintpause"
- backported by
-
JDK-8329941 RISC-V: Features string uses wrong separator for jtreg
- Resolved
-
JDK-8329943 RISC-V: Features string uses wrong separator for jtreg
- Resolved
- links to
-
Commit openjdk/jdk17u-dev/72173283
-
Commit openjdk/jdk21u-dev/fd507393
-
Commit openjdk/jdk/cbbfa0dd
-
Review openjdk/jdk17u-dev/2377
-
Review openjdk/jdk21u-dev/472
-
Review openjdk/jdk/15579
-
Review openjdk/riscv-port-jdk11u/20