aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWeiwei Li <liweiwei@iscas.ac.cn>2023-04-08 21:59:08 +0800
committerAlistair Francis <alistair.francis@wdc.com>2023-05-05 10:49:50 +1000
commit9ba63f9442067729c3fe41c88b1eb414874d46ea (patch)
tree62c20e856dfa693b0e169899162e79260e2c0547
parent0c98ccef49b015b5625495b451315a06a54525ec (diff)
downloadqemu-9ba63f9442067729c3fe41c88b1eb414874d46ea.zip
qemu-9ba63f9442067729c3fe41c88b1eb414874d46ea.tar.gz
qemu-9ba63f9442067729c3fe41c88b1eb414874d46ea.tar.bz2
target/riscv: Use check for relationship between Zdinx/Zhinx{min} and Zfinx
Zdinx/Zhinx{min} require Zfinx. And require relationship is usually done by check currently. Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn> Signed-off-by: Junqiang Wang <wangjunqiang@iscas.ac.cn> Acked-by: Alistair Francis <alistair.francis@wdc.com> Message-Id: <20230408135908.25269-1-liweiwei@iscas.ac.cn> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
-rw-r--r--target/riscv/cpu.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c
index d1769fd..fab3885 100644
--- a/target/riscv/cpu.c
+++ b/target/riscv/cpu.c
@@ -916,8 +916,9 @@ static void riscv_cpu_validate_set_extensions(RISCVCPU *cpu, Error **errp)
cpu->cfg.ext_zhinxmin = true;
}
- if (cpu->cfg.ext_zdinx || cpu->cfg.ext_zhinxmin) {
- cpu->cfg.ext_zfinx = true;
+ if ((cpu->cfg.ext_zdinx || cpu->cfg.ext_zhinxmin) && !cpu->cfg.ext_zfinx) {
+ error_setg(errp, "Zdinx/Zhinx/Zhinxmin extensions require Zfinx");
+ return;
}
if (cpu->cfg.ext_zfinx) {