Skip to content

Commit aec2388

Browse files
a4lgAmanieu
authored andcommitted
RISC-V: doc: Updated status and clarification
Some extensions are ratified at least on the ISA specification version 20240411. This commit moves such extensions. This commit also changes that: 1. Lower indentation of "Zk*" and "Zbk*" extensions to avoid extension groups from being misleading inside this section. 2. Raise indentation of "Zfhmin" and "Zhinxmin" extensions to show that they are a strict subset of "Zfh" and "Zhinx" (respectively). 3. Clarify that "s" is not an extension but a feature notifying the existence of the supervisor-level ISA. 4. Clarify that "h" is not just an existence of the hypervisor-level ISA but is also an extension name ("H").
1 parent 62ae190 commit aec2388

File tree

1 file changed

+21
-24
lines changed
  • crates/std_detect/src/detect/arch

1 file changed

+21
-24
lines changed

crates/std_detect/src/detect/arch/riscv.rs

+21-24
Original file line numberDiff line numberDiff line change
@@ -44,34 +44,31 @@ features! {
4444
/// * Zifencei: `"zifencei"`
4545
/// * Zihintpause: `"zihintpause"`
4646
/// * Zihpm: `"zihpm"`
47-
/// * Zk: `"zk"`
48-
/// * Zbkb: `"zbkb"`
49-
/// * Zbkc: `"zbkc"`
50-
/// * Zbkx: `"zbkx"`
51-
/// * Zkn: `"zkn"`
52-
/// * Zknd: `"zknd"`
53-
/// * Zkne: `"zkne"`
54-
/// * Zknh: `"zknh"`
55-
/// * Zkr: `"zkr"`
56-
/// * Zks: `"zks"`
57-
/// * Zksed: `"zksed"`
58-
/// * Zksh: `"zksh"`
59-
/// * Zkt: `"zkt"`
60-
///
61-
/// There's also bases and extensions marked as standard instruction set,
62-
/// but they are in frozen or draft state. These instruction sets are also
63-
/// reserved by this macro and can be detected in the future platforms.
64-
///
65-
/// Frozen RISC-V instruction sets:
66-
///
6747
/// * Zfh: `"zfh"`
68-
/// * Zfhmin: `"zfhmin"`
48+
/// * Zfhmin: `"zfhmin"`
6949
/// * Zfinx: `"zfinx"`
7050
/// * Zdinx: `"zdinx"`
7151
/// * Zhinx: `"zhinx"`
72-
/// * Zhinxmin: `"zhinxmin"`
52+
/// * Zhinxmin: `"zhinxmin"`
53+
/// * Zbkb: `"zbkb"`
54+
/// * Zbkc: `"zbkc"`
55+
/// * Zbkx: `"zbkx"`
56+
/// * Zk: `"zk"`
57+
/// * Zkn: `"zkn"`
58+
/// * Zknd: `"zknd"`
59+
/// * Zkne: `"zkne"`
60+
/// * Zknh: `"zknh"`
61+
/// * Zkr: `"zkr"`
62+
/// * Zks: `"zks"`
63+
/// * Zksed: `"zksed"`
64+
/// * Zksh: `"zksh"`
65+
/// * Zkt: `"zkt"`
7366
/// * Ztso: `"ztso"`
7467
///
68+
/// There's also bases and extensions marked as standard instruction set,
69+
/// but they are in frozen or draft state. These instruction sets are also
70+
/// reserved by this macro and can be detected in the future platforms.
71+
///
7572
/// Draft RISC-V instruction sets:
7673
///
7774
/// * RV128I: `"rv128i"`
@@ -81,11 +78,11 @@ features! {
8178
///
8279
/// Defined by Privileged Specification:
8380
///
84-
/// * Supervisor: `"s"`
81+
/// * *Supervisor-Level ISA* (not "S" extension): `"s"`
82+
/// * H (hypervisor): `"h"`
8583
/// * Svnapot: `"svnapot"`
8684
/// * Svpbmt: `"svpbmt"`
8785
/// * Svinval: `"svinval"`
88-
/// * Hypervisor: `"h"`
8986
///
9087
/// [ISA manual]: https://github.com/riscv/riscv-isa-manual/
9188
#[stable(feature = "riscv_ratified", since = "1.78.0")]

0 commit comments

Comments
 (0)