mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 15:53:54 -06:00
target/riscv: Add MISA extension implied rules
Add MISA extension implied rules to enable the implied extensions of MISA recursively. Signed-off-by: Frank Chang <frank.chang@sifive.com> Reviewed-by: Jerry Zhang Jian <jerry.zhangjian@sifive.com> Tested-by: Max Chou <max.chou@sifive.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> Message-ID: <20240625114629.27793-4-frank.chang@sifive.com> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
parent
047da861f9
commit
171773391a
1 changed files with 49 additions and 1 deletions
|
@ -2250,8 +2250,56 @@ RISCVCPUProfile *riscv_profiles[] = {
|
||||||
NULL,
|
NULL,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static RISCVCPUImpliedExtsRule RVA_IMPLIED = {
|
||||||
|
.is_misa = true,
|
||||||
|
.ext = RVA,
|
||||||
|
.implied_multi_exts = {
|
||||||
|
CPU_CFG_OFFSET(ext_zalrsc), CPU_CFG_OFFSET(ext_zaamo),
|
||||||
|
|
||||||
|
RISCV_IMPLIED_EXTS_RULE_END
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
static RISCVCPUImpliedExtsRule RVD_IMPLIED = {
|
||||||
|
.is_misa = true,
|
||||||
|
.ext = RVD,
|
||||||
|
.implied_misa_exts = RVF,
|
||||||
|
.implied_multi_exts = { RISCV_IMPLIED_EXTS_RULE_END },
|
||||||
|
};
|
||||||
|
|
||||||
|
static RISCVCPUImpliedExtsRule RVF_IMPLIED = {
|
||||||
|
.is_misa = true,
|
||||||
|
.ext = RVF,
|
||||||
|
.implied_multi_exts = {
|
||||||
|
CPU_CFG_OFFSET(ext_zicsr),
|
||||||
|
|
||||||
|
RISCV_IMPLIED_EXTS_RULE_END
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
static RISCVCPUImpliedExtsRule RVM_IMPLIED = {
|
||||||
|
.is_misa = true,
|
||||||
|
.ext = RVM,
|
||||||
|
.implied_multi_exts = {
|
||||||
|
CPU_CFG_OFFSET(ext_zmmul),
|
||||||
|
|
||||||
|
RISCV_IMPLIED_EXTS_RULE_END
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
static RISCVCPUImpliedExtsRule RVV_IMPLIED = {
|
||||||
|
.is_misa = true,
|
||||||
|
.ext = RVV,
|
||||||
|
.implied_multi_exts = {
|
||||||
|
CPU_CFG_OFFSET(ext_zve64d),
|
||||||
|
|
||||||
|
RISCV_IMPLIED_EXTS_RULE_END
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
RISCVCPUImpliedExtsRule *riscv_misa_ext_implied_rules[] = {
|
RISCVCPUImpliedExtsRule *riscv_misa_ext_implied_rules[] = {
|
||||||
NULL
|
&RVA_IMPLIED, &RVD_IMPLIED, &RVF_IMPLIED,
|
||||||
|
&RVM_IMPLIED, &RVV_IMPLIED, NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
RISCVCPUImpliedExtsRule *riscv_multi_ext_implied_rules[] = {
|
RISCVCPUImpliedExtsRule *riscv_multi_ext_implied_rules[] = {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue