1
Fork 0

Stabilize Ratified RISC-V Target Features

As shortly discussed on Zulip
(394793704),
this commit stabilizes the ratified RISC-V instruction bases and
extensions.

Specifically, this commit stabilizes the:
* Atomic Instructions (A) on v2.0
* Compressed Instructions (C) on v2.0
* Integer Multiplication and Division (M) on v2.0
* Bit Manipulations (B) on v1.0 listed as `zba`, `zbc`, `zbs`
* Scalar Cryptography (Zk) v1.0.1 listed as `zk`, `zkn`, `zknd`, `zkne`, `zknh`, `zkr`, `zks`, `zksed`, `zksh`, `zkt`, `zbkb`, `zbkc` `zkbx`
This commit is contained in:
Gijs Burghoorn 2023-10-04 13:45:30 +02:00
parent 9fbd593a56
commit 6988d2294d

View file

@ -244,38 +244,38 @@ const MIPS_ALLOWED_FEATURES: &[(&str, Option<Symbol>)] = &[
const RISCV_ALLOWED_FEATURES: &[(&str, Option<Symbol>)] = &[ const RISCV_ALLOWED_FEATURES: &[(&str, Option<Symbol>)] = &[
// tidy-alphabetical-start // tidy-alphabetical-start
("a", Some(sym::riscv_target_feature)), ("a", None),
("c", Some(sym::riscv_target_feature)), ("c", None),
("d", Some(sym::riscv_target_feature)), ("d", Some(sym::riscv_target_feature)),
("e", Some(sym::riscv_target_feature)), ("e", Some(sym::riscv_target_feature)),
("f", Some(sym::riscv_target_feature)), ("f", Some(sym::riscv_target_feature)),
("m", Some(sym::riscv_target_feature)), ("m", None),
("relax", Some(sym::riscv_target_feature)), ("relax", Some(sym::riscv_target_feature)),
("unaligned-scalar-mem", Some(sym::riscv_target_feature)), ("unaligned-scalar-mem", Some(sym::riscv_target_feature)),
("v", Some(sym::riscv_target_feature)), ("v", Some(sym::riscv_target_feature)),
("zba", Some(sym::riscv_target_feature)), ("zba", None),
("zbb", Some(sym::riscv_target_feature)), ("zbb", None),
("zbc", Some(sym::riscv_target_feature)), ("zbc", None),
("zbkb", Some(sym::riscv_target_feature)), ("zbkb", None),
("zbkc", Some(sym::riscv_target_feature)), ("zbkc", None),
("zbkx", Some(sym::riscv_target_feature)), ("zbkx", None),
("zbs", Some(sym::riscv_target_feature)), ("zbs", None),
("zdinx", Some(sym::riscv_target_feature)), ("zdinx", Some(sym::riscv_target_feature)),
("zfh", Some(sym::riscv_target_feature)), ("zfh", Some(sym::riscv_target_feature)),
("zfhmin", Some(sym::riscv_target_feature)), ("zfhmin", Some(sym::riscv_target_feature)),
("zfinx", Some(sym::riscv_target_feature)), ("zfinx", Some(sym::riscv_target_feature)),
("zhinx", Some(sym::riscv_target_feature)), ("zhinx", Some(sym::riscv_target_feature)),
("zhinxmin", Some(sym::riscv_target_feature)), ("zhinxmin", Some(sym::riscv_target_feature)),
("zk", Some(sym::riscv_target_feature)), ("zk", None),
("zkn", Some(sym::riscv_target_feature)), ("zkn", None),
("zknd", Some(sym::riscv_target_feature)), ("zknd", None),
("zkne", Some(sym::riscv_target_feature)), ("zkne", None),
("zknh", Some(sym::riscv_target_feature)), ("zknh", None),
("zkr", Some(sym::riscv_target_feature)), ("zkr", None),
("zks", Some(sym::riscv_target_feature)), ("zks", None),
("zksed", Some(sym::riscv_target_feature)), ("zksed", None),
("zksh", Some(sym::riscv_target_feature)), ("zksh", None),
("zkt", Some(sym::riscv_target_feature)), ("zkt", None),
// tidy-alphabetical-end // tidy-alphabetical-end
]; ];