From c6af5693478caacafc58cbf454b71fa95d57db60 Mon Sep 17 00:00:00 2001 From: Michael Walle Date: Thu, 17 Feb 2011 23:45:05 +0100 Subject: lm32: machine state loading/saving This patch adds support for saving and loading the processor state. Signed-off-by: Michael Walle Signed-off-by: Edgar E. Iglesias --- target-lm32/machine.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 target-lm32/machine.c diff --git a/target-lm32/machine.c b/target-lm32/machine.c new file mode 100644 index 000000000..70ca52a0f --- /dev/null +++ b/target-lm32/machine.c @@ -0,0 +1,33 @@ +#include "hw/hw.h" +#include "hw/boards.h" + +static const VMStateDescription vmstate_cpu = { + .name = "cpu", + .version_id = CPU_SAVE_VERSION, + .minimum_version_id = 1, + .minimum_version_id_old = 1, + .fields = (VMStateField[]) { + VMSTATE_UINT32_ARRAY(regs, CPUState, 32), + VMSTATE_UINT32(pc, CPUState), + VMSTATE_UINT32(ie, CPUState), + VMSTATE_UINT32(icc, CPUState), + VMSTATE_UINT32(dcc, CPUState), + VMSTATE_UINT32(cc, CPUState), + VMSTATE_UINT32(eba, CPUState), + VMSTATE_UINT32(dc, CPUState), + VMSTATE_UINT32(deba, CPUState), + VMSTATE_UINT32_ARRAY(bp, CPUState, 4), + VMSTATE_UINT32_ARRAY(wp, CPUState, 4), + VMSTATE_END_OF_LIST() + } +}; + +void cpu_save(QEMUFile *f, void *opaque) +{ + vmstate_save_state(f, &vmstate_cpu, opaque); +} + +int cpu_load(QEMUFile *f, void *opaque, int version_id) +{ + return vmstate_load_state(f, &vmstate_cpu, opaque, version_id); +} -- cgit v1.2.3