Skip to content

Commit e124504

Browse files
committed
std_detect: RISC-V platform guide documentation (non-table part)
This is a partial revert of a revert, making the commit e907456 come around again for non-table part.
1 parent 7230afc commit e124504

File tree

1 file changed

+15
-0
lines changed
  • crates/std_detect/src/detect/arch

1 file changed

+15
-0
lines changed

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

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,19 @@ features! {
2222
///
2323
/// [ISA manual]: https://riscv.org/specifications/ratified/
2424
///
25+
/// # Platform-specific/agnostic Behavior and Availability
26+
///
27+
/// Runtime detection depends on the platform-specific feature detection
28+
/// facility and its availability per feature is
29+
/// highly platform/version-specific.
30+
///
31+
/// Still, a best-effort attempt is performed to enable subset/dependent
32+
/// features if a superset feature is enabled regardless of the platform.
33+
/// For instance, if the A extension (`"a"`) is enabled, its subsets (the
34+
/// Zalrsc and Zaamo extensions; `"zalrsc"` and `"zaamo"`) are also enabled.
35+
/// Likewise, if the F extension (`"f"`) is enabled, one of its dependencies
36+
/// (the Zicsr extension `"zicsr"`) is also enabled.
37+
///
2538
/// # Unprivileged Specification
2639
///
2740
/// The supported ratified RISC-V instruction sets are as follows:
@@ -122,7 +135,9 @@ features! {
122135
/// corresponding unaligned memory access is reasonably fast.
123136
///
124137
/// * `"unaligned-scalar-mem"`
138+
/// * Runtime detection requires Linux kernel version 6.4 or later.
125139
/// * `"unaligned-vector-mem"`
140+
/// * Runtime detection requires Linux kernel version 6.13 or later.
126141
#[stable(feature = "riscv_ratified", since = "1.78.0")]
127142

128143
@FEATURE: #[unstable(feature = "stdarch_riscv_feature_detection", issue = "111192")] rv32i: "rv32i";

0 commit comments

Comments
 (0)