- 
                Notifications
    You must be signed in to change notification settings 
- Fork 559
RISC-V Extensions update including 29 extensions to stabilize #1987
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
c60bc59    to
    25d43f0      
    Compare
  
    25d43f0    to
    a35f1c8      
    Compare
  
    | Possible ConsiderationSome platform behavior extensions are hard to make a short, concise summary. Do we prefer to keep long(er than usual) descriptions? Or, do we just link to the RISC-V Profiles documentation and let it explain? My Current PositionI prefer the latter if allowed but mdbook design is confirmed not broken so the current approach (long descriptions) is okay for me. | 
| Ping. Can someone review this PR? | 
a35f1c8    to
    d27acfa      
    Compare
  
    d27acfa    to
    5527d55      
    Compare
  
    5527d55    to
    9d250ee      
    Compare
  
    | This PR was rebased onto a different master commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. | 
9d250ee    to
    94395db      
    Compare
  
    This commit directly corresponds to rust-lang/rust#145948. See that proposal for criteria of 29 new extensions. Notes (for the Rust reference): * Updated existing `a` and `c` to imply its subset(s). * `a` equals `zalrsc` and `zaamo` combined (imply both from `a`). * The C extension always implies the Zca extension and conditionally implies Zcf and/or Zcd extensions (on RISC-V) but `c` (Rust target feature) only implies `zca` as both `zcf` and `zcd` are not to be stabilized on this proposal. * For each extension, linked to the first document containing it with the ratified state. For instance, all extensions present in the RVA23 profiles link to (3) (despite that they are present in (2)) because they were not ratified at the time when (2) is published. References: 1. RISC-V Instruction Set Manual (version 20250508): <https://github.com/riscv/riscv-isa-manual/tree/20250508> 2. RISC-V Profiles (version 1.0 - RVA23 profiles were not ratified at the time): <https://github.com/riscv/riscv-profiles/tree/v1.0> 3. RISC-V Profiles (RVA23/RVB23-ratified version): <https://github.com/riscv/riscv-profiles/tree/rva23-rvb23-ratified>
94395db    to
    317dbf6      
    Compare
  
    | Rebased and made some clarification in the commit message (the same as the edited initial comment). | 
This commit directly corresponds to rust-lang/rust#145948.
See that proposal for criteria of 29 new extensions.
Notes (for the Rust reference)
aandcto imply its subset(s).aequalszalrscandzaamocombined (imply both froma).c(Rust target feature) only implieszcaas bothzcfandzcdare not to be stabilized on this proposal.For instance, all extensions present in the RVA23 profiles link to (3) (despite that they are present in (2)) because they were not ratified at the time when (2) is published.
References
https://github.com/riscv/riscv-isa-manual/tree/20250508
https://github.com/riscv/riscv-profiles/tree/v1.0
https://github.com/riscv/riscv-profiles/tree/rva23-rvb23-ratified