mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
target/riscv: use RVB in RVA22U64
From the time we added RVA22U64 until now the spec didn't declare 'RVB' as a dependency, using zba/zbb/zbs instead. Since then the RVA22 spec [1] added the following in the 'RVA22U64 Mandatory Extensions' section: "B Bit-manipulation instructions Note: The B extension comprises the Zba, Zbb, and Zbs extensions. At the time of RVA22U64's ratification, the B extension had not yet been defined, and so RVA22U64 explicitly mandated Zba, Zbb, and Zbs instead. Mandating B is equivalent." It is also equivalent to QEMU (see riscv_cpu_validate_b() in target/riscv/tcg/tcg-cpu.c). Finally, RVA23U64 [2] directly mentions RVB as a mandatory extension, not citing zba/zbb/zbs. To make it clear that RVA23U64 will extend RVA22U64 (i.e. RVA22 is a parent of RVA23), use RVB in RVA22U64 as well. (bios-tables-test change: RVB added to riscv,isa) [1] https://github.com/riscv/riscv-profiles/blob/main/src/profiles.adoc#61-rva22u64-profile [2] https://github.com/riscv/riscv-profiles/blob/main/src/rva23-profile.adoc#rva23u64-profile Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> Reviewed-by: Andrew Jones <ajones@ventanamicro.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Message-ID: <20250115184316.2344583-3-dbarboza@ventanamicro.com> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
parent
38d0ce28df
commit
e037673764
2 changed files with 1 additions and 1 deletions
|
@ -2345,7 +2345,7 @@ static const PropertyInfo prop_marchid = {
|
|||
static RISCVCPUProfile RVA22U64 = {
|
||||
.parent = NULL,
|
||||
.name = "rva22u64",
|
||||
.misa_ext = RVI | RVM | RVA | RVF | RVD | RVC | RVU,
|
||||
.misa_ext = RVI | RVM | RVA | RVF | RVD | RVC | RVB | RVU,
|
||||
.priv_spec = RISCV_PROFILE_ATTR_UNUSED,
|
||||
.satp_mode = RISCV_PROFILE_ATTR_UNUSED,
|
||||
.ext_offsets = {
|
||||
|
|
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue