diff options
author | Daniel Henrique Barboza <dbarboza@ventanamicro.com> | 2025-01-15 15:43:12 -0300 |
---|---|---|
committer | Alistair Francis <alistair.francis@wdc.com> | 2025-03-04 15:42:54 +1000 |
commit | e037673764b2b9db25f6e5deec8e11e7bf54c4b1 (patch) | |
tree | f1e5735c5fe26734cedbf61f89c36d2d37066c49 /tests/functional/qemu_test | |
parent | 38d0ce28dfc7a73c7527442bb3b7029b402cb056 (diff) | |
download | qemu-e037673764b2b9db25f6e5deec8e11e7bf54c4b1.zip qemu-e037673764b2b9db25f6e5deec8e11e7bf54c4b1.tar.gz qemu-e037673764b2b9db25f6e5deec8e11e7bf54c4b1.tar.bz2 |
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>
Diffstat (limited to 'tests/functional/qemu_test')
0 files changed, 0 insertions, 0 deletions