[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 1/2] util/log: Add vector registers to log
From: |
Alistair Francis |
Subject: |
Re: [PATCH v3 1/2] util/log: Add vector registers to log |
Date: |
Wed, 12 Apr 2023 20:56:29 +1000 |
On Mon, Apr 10, 2023 at 10:46 PM Ivan Klokov <ivan.klokov@syntacore.com> wrote:
>
> Added QEMU option 'vpu' to log vector extension registers such as gpr\fpu.
>
> Signed-off-by: Ivan Klokov <ivan.klokov@syntacore.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Alistair
> ---
> accel/tcg/cpu-exec.c | 3 +++
> include/hw/core/cpu.h | 2 ++
> include/qemu/log.h | 1 +
> util/log.c | 2 ++
> 4 files changed, 8 insertions(+)
>
> diff --git a/accel/tcg/cpu-exec.c b/accel/tcg/cpu-exec.c
> index 56aaf58b9d..0dca69fccb 100644
> --- a/accel/tcg/cpu-exec.c
> +++ b/accel/tcg/cpu-exec.c
> @@ -319,6 +319,9 @@ static void log_cpu_exec(target_ulong pc, CPUState *cpu,
> #if defined(TARGET_I386)
> flags |= CPU_DUMP_CCOP;
> #endif
> + if (qemu_loglevel_mask(CPU_LOG_TB_VPU)) {
> + flags |= CPU_DUMP_VPU;
> + }
> cpu_dump_state(cpu, logfile, flags);
> qemu_log_unlock(logfile);
> }
> diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h
> index 75689bff02..7c9d25ff45 100644
> --- a/include/hw/core/cpu.h
> +++ b/include/hw/core/cpu.h
> @@ -545,11 +545,13 @@ GuestPanicInformation *cpu_get_crash_info(CPUState
> *cpu);
> * @CPU_DUMP_CODE:
> * @CPU_DUMP_FPU: dump FPU register state, not just integer
> * @CPU_DUMP_CCOP: dump info about TCG QEMU's condition code optimization
> state
> + * @CPU_DUMP_VPU: dump VPU registers
> */
> enum CPUDumpFlags {
> CPU_DUMP_CODE = 0x00010000,
> CPU_DUMP_FPU = 0x00020000,
> CPU_DUMP_CCOP = 0x00040000,
> + CPU_DUMP_VPU = 0x00080000,
> };
>
> /**
> diff --git a/include/qemu/log.h b/include/qemu/log.h
> index c5643d8dd5..df59bfabcd 100644
> --- a/include/qemu/log.h
> +++ b/include/qemu/log.h
> @@ -35,6 +35,7 @@ bool qemu_log_separate(void);
> /* LOG_STRACE is used for user-mode strace logging. */
> #define LOG_STRACE (1 << 19)
> #define LOG_PER_THREAD (1 << 20)
> +#define CPU_LOG_TB_VPU (1 << 21)
>
> /* Lock/unlock output. */
>
> diff --git a/util/log.c b/util/log.c
> index 7837ff9917..93dccee7b8 100644
> --- a/util/log.c
> +++ b/util/log.c
> @@ -495,6 +495,8 @@ const QEMULogItem qemu_log_items[] = {
> "log every user-mode syscall, its input, and its result" },
> { LOG_PER_THREAD, "tid",
> "open a separate log file per thread; filename must contain '%d'" },
> + { CPU_LOG_TB_VPU, "vpu",
> + "include VPU registers in the 'cpu' logging" },
> { 0, NULL, NULL },
> };
>
> --
> 2.34.1
>
>