diff options
author | Helge Deller <deller@gmx.de> | 2025-01-28 19:47:31 +0100 |
---|---|---|
committer | Helge Deller <deller@gmx.de> | 2025-01-30 13:37:20 +0100 |
commit | 8f2a1c5926bf933abce54de23d5ae44371c50e23 (patch) | |
tree | 7e55ada2ca75f74da32f030179e2e2c9770b13ae | |
parent | bf60e2a72adc190d3a4d8eb28b6f9c4c17ddd649 (diff) | |
download | qemu-8f2a1c5926bf933abce54de23d5ae44371c50e23.zip qemu-8f2a1c5926bf933abce54de23d5ae44371c50e23.tar.gz qemu-8f2a1c5926bf933abce54de23d5ae44371c50e23.tar.bz2 |
target/hppa: Add CPU diagnose registers
Add the diagnose registers (%dr) to the CPUArchState. Those are mostly
undocumented and control cache behaviour, memory behaviour, reset button
management and many other related internal CPU things.
Signed-off-by: Helge Deller <deller@gmx.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
-rw-r--r-- | target/hppa/cpu.h | 1 | ||||
-rw-r--r-- | target/hppa/machine.c | 5 |
2 files changed, 4 insertions, 2 deletions
diff --git a/target/hppa/cpu.h b/target/hppa/cpu.h index beea42d..b858986 100644 --- a/target/hppa/cpu.h +++ b/target/hppa/cpu.h @@ -232,6 +232,7 @@ typedef struct CPUArchState { target_ulong cr[32]; /* control registers */ target_ulong cr_back[2]; /* back of cr17/cr18 */ target_ulong shadow[7]; /* shadow registers */ + target_ulong dr[32]; /* diagnose registers */ /* * During unwind of a memory insn, the base register of the address. diff --git a/target/hppa/machine.c b/target/hppa/machine.c index 211bfcf..bb47a2e 100644 --- a/target/hppa/machine.c +++ b/target/hppa/machine.c @@ -198,6 +198,7 @@ static const VMStateField vmstate_env_fields[] = { VMSTATE_UINT64(iasq_b, CPUHPPAState), VMSTATE_UINT32(fr0_shadow, CPUHPPAState), + VMSTATE_UINT64_ARRAY(dr, CPUHPPAState, 32), VMSTATE_END_OF_LIST() }; @@ -208,8 +209,8 @@ static const VMStateDescription * const vmstate_env_subsections[] = { static const VMStateDescription vmstate_env = { .name = "env", - .version_id = 3, - .minimum_version_id = 3, + .version_id = 4, + .minimum_version_id = 4, .fields = vmstate_env_fields, .subsections = vmstate_env_subsections, }; |