Module target_features::docs::riscv

source ·
Expand description

riscv documentation

§Features

FeatureDescriptionAlso Enables
a‘A’ (Atomic Instructions).
c‘C’ (Compressed Instructions).
d‘D’ (Double-Precision Floating-Point).f
eImplements RV{32,64}E (provides 16 rather than 32 GPRs).
f‘F’ (Single-Precision Floating-Point).
fast-unaligned-accessHas reasonably performant unaligned loads and stores (both scalar and vector).
m‘M’ (Integer Multiplication and Division).
relaxEnable Linker relaxation..
v‘V’ (Vector Extension for Application Processors).d, f
zba‘Zba’ (Address Generation Instructions).
zbb‘Zbb’ (Basic Bit-Manipulation).
zbc‘Zbc’ (Carry-Less Multiplication).
zbkb‘Zbkb’ (Bitmanip instructions for Cryptography).
zbkc‘Zbkc’ (Carry-less multiply instructions for Cryptography).
zbkx‘Zbkx’ (Crossbar permutation instructions).
zbs‘Zbs’ (Single-Bit Instructions).
zdinx‘Zdinx’ (Double in Integer).zfinx
zfh‘Zfh’ (Half-Precision Floating-Point).f, zfhmin
zfhmin‘Zfhmin’ (Half-Precision Floating-Point Minimal).f
zfinx‘Zfinx’ (Float in Integer).
zhinx‘Zhinx’ (Half Float in Integer).zfinx, zhinxmin
zhinxmin‘Zhinxmin’ (Half Float in Integer Minimal).zfinx
zk‘Zk’ (Standard scalar cryptography extension).zbkb, zbkc, zbkx, zkn, zknd, zkne, zknh, zkr, zkt
zkn‘Zkn’ (NIST Algorithm Suite).zbkb, zbkc, zbkx, zknd, zkne, zknh
zknd‘Zknd’ (NIST Suite: AES Decryption).
zkne‘Zkne’ (NIST Suite: AES Encryption).
zknh‘Zknh’ (NIST Suite: Hash Function Instructions).
zkr‘Zkr’ (Entropy Source Extension).
zks‘Zks’ (ShangMi Algorithm Suite).zbkb, zbkc, zbkx, zksed, zksh
zksed‘Zksed’ (ShangMi Suite: SM4 Block Cipher Instructions).
zksh‘Zksh’ (ShangMi Suite: SM3 Hash Function Instructions).
zkt‘Zkt’ (Data Independent Execution Latency).
crt-staticEnables C Run-time Libraries to be statically linked.

This is often empirical, rather than specified in any standard, i.e. all available CPUs with a particular feature also have another feature.

§CPUs

CPUEnabled Features
generica, c, d, f, m
generic-rv32a, c, d, f, m
generic-rv64a, c, d, f, m
rocketa, c, d, f, m
rocket-rv32a, c, d, f, m
rocket-rv64a, c, d, f, m
sifive-7-seriesa, c, d, f, m
sifive-e20a, c, d, f, m
sifive-e21a, c, d, f, m
sifive-e24a, c, d, f, m
sifive-e31a, c, d, f, m
sifive-e34a, c, d, f, m
sifive-e76a, c, d, f, m
sifive-p450a, c, d, f, fast-unaligned-access, m, zba, zbb, zbs, zfhmin
sifive-p670a, c, d, f, fast-unaligned-access, m, v, zba, zbb, zbs, zfhmin
sifive-s21a, c, d, f, m
sifive-s51a, c, d, f, m
sifive-s54a, c, d, f, m
sifive-s76a, c, d, f, m
sifive-u54a, c, d, f, m
sifive-u74a, c, d, f, m
sifive-x280a, c, d, f, m, v, zba, zbb, zfh, zfhmin
syntacore-scr1-basea, c, d, f, m
syntacore-scr1-maxa, c, d, f, m
veyron-v1a, c, d, f, m, zba, zbb, zbc, zbs
xiangshan-nanhua, c, d, f, m, zba, zbb, zbc, zbkb, zbkc, zbkx, zbs, zkn, zknd, zkne, zknh, zksed, zksh