[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 12/15] target/riscv: cpu: Remove compile time XLEN checks
From: |
Alistair Francis |
Subject: |
[PATCH v3 12/15] target/riscv: cpu: Remove compile time XLEN checks |
Date: |
Mon, 14 Dec 2020 12:34:29 -0800 |
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
---
target/riscv/cpu.c | 19 ++++++++++---------
1 file changed, 10 insertions(+), 9 deletions(-)
diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c
index 7d6f032122..47b738c314 100644
--- a/target/riscv/cpu.c
+++ b/target/riscv/cpu.c
@@ -240,10 +240,10 @@ static void riscv_cpu_dump_state(CPUState *cs, FILE *f,
int flags)
#ifndef CONFIG_USER_ONLY
qemu_fprintf(f, " %s " TARGET_FMT_lx "\n", "mhartid ", env->mhartid);
qemu_fprintf(f, " %s " TARGET_FMT_lx "\n", "mstatus ",
(target_ulong)env->mstatus);
-#ifdef TARGET_RISCV32
- qemu_fprintf(f, " %s " TARGET_FMT_lx "\n", "mstatush ",
- (target_ulong)(env->mstatus >> 32));
-#endif
+ if (riscv_cpu_is_32bit(env)) {
+ qemu_fprintf(f, " %s " TARGET_FMT_lx "\n", "mstatush ",
+ (target_ulong)(env->mstatus >> 32));
+ }
if (riscv_has_ext(env, RVH)) {
qemu_fprintf(f, " %s " TARGET_FMT_lx "\n", "hstatus ", env->hstatus);
qemu_fprintf(f, " %s " TARGET_FMT_lx "\n", "vsstatus ",
@@ -356,11 +356,12 @@ static void riscv_cpu_reset(DeviceState *dev)
static void riscv_cpu_disas_set_info(CPUState *s, disassemble_info *info)
{
-#if defined(TARGET_RISCV32)
- info->print_insn = print_insn_riscv32;
-#elif defined(TARGET_RISCV64)
- info->print_insn = print_insn_riscv64;
-#endif
+ RISCVCPU *cpu = RISCV_CPU(s);
+ if (riscv_cpu_is_32bit(&cpu->env)) {
+ info->print_insn = print_insn_riscv32;
+ } else {
+ info->print_insn = print_insn_riscv64;
+ }
}
static void riscv_cpu_realize(DeviceState *dev, Error **errp)
--
2.29.2
- [PATCH v3 03/15] riscv: spike: Remove target macro conditionals, (continued)
- [PATCH v3 03/15] riscv: spike: Remove target macro conditionals, Alistair Francis, 2020/12/14
- [PATCH v3 04/15] riscv: virt: Remove target macro conditionals, Alistair Francis, 2020/12/14
- [PATCH v3 05/15] hw/riscv: boot: Remove compile time XLEN checks, Alistair Francis, 2020/12/14
- [PATCH v3 06/15] hw/riscv: virt: Remove compile time XLEN checks, Alistair Francis, 2020/12/14
- [PATCH v3 07/15] hw/riscv: spike: Remove compile time XLEN checks, Alistair Francis, 2020/12/14
- [PATCH v3 08/15] hw/riscv: sifive_u: Remove compile time XLEN checks, Alistair Francis, 2020/12/14
- [PATCH v3 09/15] target/riscv: fpu_helper: Match function defs in HELPER macros, Alistair Francis, 2020/12/14
- [PATCH v3 10/15] target/riscv: Add a riscv_cpu_is_32bit() helper function, Alistair Francis, 2020/12/14
- [PATCH v3 11/15] target/riscv: Specify the XLEN for CPUs, Alistair Francis, 2020/12/14
- [PATCH v3 12/15] target/riscv: cpu: Remove compile time XLEN checks,
Alistair Francis <=
- [PATCH v3 13/15] target/riscv: cpu_helper: Remove compile time XLEN checks, Alistair Francis, 2020/12/14
- [PATCH v3 14/15] target/riscv: csr: Remove compile time XLEN checks, Alistair Francis, 2020/12/14
- [PATCH v3 15/15] target/riscv: cpu: Set XLEN independently from target, Alistair Francis, 2020/12/14