Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The table below lists the status of the extensions and features of above listed published extensions.

Extension
Ratified?
SpikeQemuBinutilsGCCglibcnewlibLLVMOpenSBIFreeBSDLinux

GDB

RV32I
y
upstreamupstreamupstreamupstreamupstreamupstreamupstreamupstreamnot supportedupstreamupstream
RV64I
y
upstreamupstreamupstreamupstreamupstreamupstreamupstreamupstreamupstreamupstreamupstream
Big-endian support
y
upstream

upstream

not supported


upstream
M (Multiplication and Division) v2.0
y
upstreamupstreamupstreamupstreamn/an/aupstreamn/an/an/aupstream
A (Atomic)
y
upstreamupstreamupstreamupstreamn/an/aupstreamupstream (atomics)upstream (atomics)upstream (atomics)upstream
F (SP float)
y
upstreamupstream



upstream


upstream
D (DP float)
y
upstreamupstream



upstream


upstream
Q (QP float)
y


upstream


not supported


upstream
RVWMO
y (atomics)y
upstream (emulation is seq. consistent)upstream (emulation is seq. consistent)n/an/an/an/an/aupstream (barriers and locks)upstream (barriers and locks)upstream (barriers and locks), but needs optimizationupstream
ExtensionRatified?SpikeQemuBinutilsGCCglibcnewlibLLVMOpenSBIFreeBSDLinuxGDB
RV32Iyupstreamupstreamupstreamupstreamupstreamupstreamupstreamupstreamnot supportedupstreamRV64IyupstreamupstreamupstreamupstreamupstreamupstreamupstreamupstreamupstreamupstreamBig-endian supportyupstreamupstreamnot supportedM (Multiplication and DivisionC (compressed) v2.0yupstreamupstreamupstreamupstreamn/an/aupstreamn/an/an/a
upstream

Zifencei v2.0A (Atomic)yupstreamupstreamupstreamupstreamn/a


n/anot supported
upstreamupstreamupstream (atomics)upstream (atomics)F (SP float)yupstreamupstreamupstreamD (DP float)yupstreamupstreamupstreamQ (QP float)

Unpublished ratified extensions

ExtensionSpikeQemuBinutilsGCCglibcnewlibLLVMOpenSBIFreeBSDLinux

GDB

Zihintpause

upstream


not supported



Specifications that are at least frozen


upstream (barriers and locks), but needs optimization
ExtensionRatified?SpikeQemuBinutilsGCCglibcnewlibLLVMOpenSBIFreeBSDLinuxGDBRVWMOyupstream (emulation is seq. consistent)upstream (emulation is seq. consistent)n/an/an/an/an/aupstream (barriers and locks)upstream (barriers and locks)
ABIs (ILP32, ILP32E, ILP32F, ILP32D, LP64, LP64f, LP64D, LP64Q)


ilp32, ilp32f, ilp32d, ilp32q, ilp32e, lp64, lp64f, lp64d, lp64qilp32, ilp32f, ilp32d, ilp32e, lp64, lp64f, lp64dilp32, ilp32d, lp64, lp64dilp32, ilp32f, ilp32d, ilp32e, lp64, lp64f, lp64dilp32, ilp32d, lp64, lp64dn/alp64, lp64dn/aC (compressed) v2.0yupstreamupstreamupstreamupstreamn/an/aupstreamupstreamZifencei v2.0yupstreamupstreamupstreamnot supportedupstreamupstreamZihintpause v1.0upstreamnot supported
Zicsr v2.0yupstreamupstreamupstream


not supported
upstreamupstream
Counters v2.0nupstreamupstream
n/an/an/aupstreamupstream
upstream
Machine ISA v1.11 (CSRs, ECALL, EBREAK, MRET/SRET/URET, WFI, Reset, NMIs, PMAs, PMP)yupstreamupstream





n/an/a
Supervisor ISA v1.11 (CSRs, SFENCE.VMA, Sv32/Sv39/Sv48)yupstreamupstream




n/a


B (bitmanip) v0.92 (Zba, Zbb, Zbc, Zbe, Zbf, Zbk, Zbp, Zbr, Zbs)n

Mailpatch (Zba, Zbb, Zbs, Zbp)

PRdev branch

upstream (experimental)



K (scalar crypto)n

PRPR

MC layer PR LLVM Intrinsic PR



P (SIMD) v0.9.4nupstream (but v0.9.2!)Mailpatch (v0.9.4)PRPR

PR



V (vector) v0.10, Vector Extension Intrinsics, Vector Calling Conventionnupstreamupstream (but v0.7.1)



upstream (experimental,FP16 ABI not settled)



Ztso v0.1n





not supported



Zam v0.1n





not supported



H (hypervisor) v0.6.1nupstreamupstreamdev branchn/an/an/a
upstream
KVM patches on LKML
Zmmul v0.1 (subset of M)











J (JIT/Java)











TEE











Snavpotn










Zfinxnstaging branchstaging branchstaging branchstaging-branch

PR



Z*inx (with new ABIs: ILP32X/LP64X)


dev: PLCTdev: PLCT






Zfh






upstream



SV57











Zce


dev: PLCTdev: PLCT

dev branch



CMO / Zicmobasen










...